基于51单片机的简易逻辑分析仪设计Word文档格式.doc
《基于51单片机的简易逻辑分析仪设计Word文档格式.doc》由会员分享,可在线阅读,更多相关《基于51单片机的简易逻辑分析仪设计Word文档格式.doc(25页珍藏版)》请在冰豆网上搜索。
[关键词]数字电路单片机数模转换器逻辑分析仪
1设计任务与要求
本设计的主要任务及参数指标是:
数据位数4位,存储深度80字;
数据速率最高1kHz;
输入阻抗大于50kΩ;
逻辑信号门限电平在1.0V~4.0V范围内按8级任意设定。
2设计方案
本系统采用51单片机为控制核心,系统由单片机系统、逻辑电平控制、按键、LCD显示、系统电源等模块构成。
被测数据输入到逻辑电平控制模块,然后进行单片机进行测试,按键用于控制逻辑信号门限电平的大小,系统电源为各模块供电,各模块的供电电压为5V。
图1系统框图
3设计原理分析
3.1单片机系统电路设计
图2单片机系统电路
单片机系统为逻辑分析仪的核心,负责控制逻辑分析仪的逻辑电平、检测按键并驱动LCD进行显示。
单片机系统电路如图2所示,由晶体振荡器Y1、电容C3和C4构成振荡器电路,为单片机提供时钟信号。
电容C1、电阻R2和R1、按键KEY1构成单片机复位电路,高电平复位,当按键KEY1按下的时间超过2个机器周期以上时,单片机就执行复位操作。
EA接高电平,单片机首先访问内部程序存储器。
J1为1KΩ的排阻,作为P0口的外部上拉电阻。
在硬件制作时为了方便单片机的测试和功能的扩展,把所有的I/O口均通过排针引出。
3.2人机界面电路设计
图3按键控制电路
按键控制电路如图3所示,用于控制逻辑分析仪的工作状态,如采样率改变、逻辑电平的调整等等,单片机通过检测按键对应的I/O口是否为低电平来判断按键是否按键,为了防止干扰,应在单片机的按键检测程序中加入延时函数。
图4LCD显示接口电路
LCD显示接口电路如图4所示,此模块用来显示需要显示的数据,电位器R3用于调节液晶的对比度。
LCD采用采用字符式FM12864M-12L型LCD,为节约I/O口,以串行方式与单片机连接。
图5蜂鸣器驱动电路
蜂鸣器驱动电路如图5所示,选用三极管Q1为PNP型三极管,三极管基极电阻R11为1kΩ,因为单片机的灌电流能力强于拉电流能力,因此采用PNP型三极管,蜂鸣器采用5V有源蜂鸣器。
三极管连接到单片机的P17口,当P17输出为低电平时,蜂鸣器响。
3.3逻辑电平控制电路设计
逻辑分析仪主要作用在于时序判定,通常只显示两个电压(逻辑1和0),因此设定了参考电压后,逻辑分析仪将被测信号通过比较器进行判定,高于参考电压者为高电平,低于参考电压者为低电平,在高电平与低电平之间形成数字波形。
逻辑电平控制电路用于控制输入信号的门限电平,输入信号经过逻辑电平控制电路以后再连接到单片机的I/O口,主要有电压比较器和数模转换器构成,电路如图6所示。
逻辑分析仪被测信号路数为4路,采用4个电压比较器和一片数模转换器实现逻辑电平控制,电压比较器采用LM393,因为采用OC输出,所以输出端均连接上了5.1kΩ的上拉电阻。
4路输入信号的门限电平由数模转换器控制,为了使4路输入信号的门限电平一致,四片电压比较器的反向输入端接在一起,并连接到数模转换器的输出端。
数模转换器U2换用TLC5615来实现,TCL5615为十位串行数模转换器,控制方便,并节约单片机的I/O口,数模转换器的参考电压由U2的6脚输入,稳定的参考电压为2.5V,由TL431产生。
图6逻辑电平控制电路
3.4供电电源电路设计
图7供电电源电路
系统采用5V供电,供电电源电路由LM7805完成,电路如图7所示。
J11为供电电源电路的输入端,D3为了防止反接,C6、C7为输入滤波电容,C8、C9为输出滤波电容,D5为电源指示灯,R8为电源指示灯的限流电阻。
4系统软件设计
图8设计流程图
设计流程图如图8所示,电路焊接完成先进行硬件的调试,然后进行程序的编译和软硬联合调试。
硬件调试先不放置芯片,通过万用表验证PCB与原理图的一致性,如果发现有不一致的地方,查找原因,直到解决问题为止。
然后进行加电测试,分别测试主要关键点的电压是否和原理一致,单独验证每个模块电路的正确性。
硬件验证通过后进行程序的编辑与调试,直到最终设计作品工作为止。
4.1设计过程所用仪器
1、DF1731SC2A直流稳压电源
2、UT805A万用表
3、PC机
4.2软件设计工具和平台
采用KeiluVision4集成开发环境作为软件开发平台,用C语言对单片机编程实现系统各功能,并进行整体软件系统调试。
采用RS232串口为单片机进行程序下载,由于电脑没有RS232串口,因此使用CH341T完成USB转RS232,RS232连接到单片机串口完成程序的下载。
4.3软件设计思想
系统采用分模块编程的思想,然后通过标志位来实现各个模块之间的协调运行。
此逻辑分析仪的模块程序主要有数据采集模块、逻辑电平控制模块、按键检测模块、采样率控制模块、LCD显示驱动程序等。
4.4软件设计流程图
图9程序流程图
5设计的结果
图10逻辑分析仪PCB布线图
原理图的绘制和PCB的设计使用Protel99se来完成,PCB板的制作采用快速热转印技术来完成。
在原理图的绘制及PCB的设计过程中特别注意规范性,特别是PCB布线的一些规则,注意PCB走线、线距、线宽、空间布局等,合理选取接口,如图10所示为逻辑分析仪PCB布线图。
图11多路数据逻辑分析图
图12逻辑电平设定测试图
由于此逻辑分析仪为四通道,测试过程中,分别为每个通道加入被测逻辑电平,分别验证,然后四个通道同时验证,并测试逻辑电平设定等。
测试结果表明,符合设计要求。
6总结
采用51单片机为控制核心,数模转换器加电压比较器构成逻辑电平控制电路,LCD组成显示界面等,可以有效的构成简易逻辑分析仪的硬件系统,使用EDA开发工具可以缩短建议逻辑分析仪设计的时间,使用模块化编程的思想有利于程序的调试和可读。
通过对简易逻辑分析仪的设计,可以加深对系统设计思想的认知,初步具备电子设计的能力。
[参考文献]
[1]庞利会,邓先荣,王军锋等.逻辑分析仪的设计与实现[J].电力自动化设备,2012,32(9):
149-152.
[2]朱震华,储婉琴.简易逻辑分析仪的设计与实现[J].实验室研究与探索,2001,20
(2):
123-124.
[3]江波,叶丽.基于51单片机的简易逻辑分析仪[J].广西大学学报(自然科学版),2008,33(z1):
128-130.
[4]朱震华,储婉琴.简易逻辑分析仪设计[J].电子工程师,2000,26(5):
31-32,36.
[5]贾奕,黄劲松,沈鹏程等.简易逻辑分析仪设计[J].电子测试,2008,(10):
70-75.
[6]朱更军,彭永供,项安等.串行10位D/A转换器TLC5615原理及与DSP的接口[J].电子质量,2003,(10):
59-60.
[7]左现刚,余周,侯志松等.基于SPI总线的TLC5615在AVR单片机中的应用[J].河南科技学院学报(自然科学版),2011,39(4):
94-97.
[8]李建波,高立新.串行数模转换器TLC5615的原理及其Proteus仿真设计[J].福建电脑,2008,(10):
21,3.
[9]孙凌燕,黄允千.Proteus与Keil软件的整合在单片机实验开发中的应用[J].实验室研究与探索,2008,27(4):
59-61,68.
[10]马刚,李向仓.用Proteus与Keil整合构建单片机虚拟仿真平台[J].现代电子技术,2006,29(24):
129-131.
[11]伍冯洁,谢陈跃,谢斌等.Proteus与Keil在单片机开放性实验中的应用[J].电子测量技术,2008,31(6):
100-103,107.
[12]黄克亚.浅谈自制51单片机编程器方法和策略[J].黑龙江科技信息,2009,(25):
11.
[13]邱宁.利用USB总线的虚拟逻辑分析仪[J].自动化仪表,2003,24(9):
21-24.
[14]胡昆霖,李冶,左向利等.基于LabVIEW和FPGA的多通道虚拟逻辑分析仪的设计[J].电子技术应用,2012,38(11):
91-93.
[15]李丽焕.电压比较器电压传输特性的绘制[J].中国科技纵横,2013,
(2):
212.
[16]周宦银,吕子勇,马果花等.电压比较器实验研究[J].实验技术与管理,2012,29(3):
42-44.
[17]陈旦花.单片机最小系统的设计与应用[J].无线互联科技,2012,(10):
103-104.
[18]景小健,尹清华,陈清林等.MG-12864液晶显示器在智能仪表中的应用[J].化工自动化及仪表,2003,30(6):
62-64.
[19]李志广,李晓泉,淮俊霞等.中文图形12864点阵液晶显示模块与51单片机的并行接口电路及C51程序设计[J].现代显示,2008,(7):
41-44.
[20]潘大伟,黄璞.基于12864LCD的波形显示系统的研制[J].仪器仪表用户,2008,15(3):
28-29.
Thedesignofsimplelogicanalyzerbasedon51singlechip
WangShu
Shoolofphysicsandelectronicengineering1230S007
[Abstract]Inthispaper,asimplelogicanalyzerwhichcanmultiplexdataindigitalcircuittestisdesigned.Ittakes51single-chipmicrocomputertocontrolthecore.Thedigitaltoanalogconverterisusedasalogicsignalthresholdlevelcontrolcircuit.Theanalyzeruseskeyboardand12864LCDastheman-machineinterface,andmodularprogrammingwithC51.Itcantestquadruplexsignalwithlowcost,andusesconveniently.
[Keywords]DigitalcircuitSCMMicrocontrollerDACLogicAnalyzer
附一:
源程序
#include<
reg52.h>
#include"
lcd.h"
tlc5615.h"
tlc1549