




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录0前言11基于单片机的多路数字电压表的基本理论12方案设计23硬件电路的工作原理231单片机电路模块232A/D转换器电路模块433数码管显示电路模块534按键处理电路模块54软件编程641主程序643显示子程序95系统调试和结果分析106结论及进一步设想10参考文献11附录1元件清单12课设体会13基于单片机的多路数字电压表的设计摘要本次设计了一个多路数字电压表,该电压表测量范围在05V之间。它主要利用A/D转换器,对多路电压值进行采样,得到相应的数字量,然后按照数字量与模拟量的比例关系得到对应的模拟电压值,通过显示设备显示出来。系统过程就是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示。由于采用高性能的单片机芯片为核心,同时利用LED数码管为显示设备,这样就使显示清晰直观、读数准确,大大地减少了因人为因素所造成的测量误差事件,大大的提高了测量的精确度。关键词单片机;数字电压表;ADC08090前言单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力如算术运算,逻辑运算、数据传送、中断处理的微处理器CPU。随着单片机技术的飞速发展,各种单片机蜂拥而至,单片机技术已成为一个国家现代化科技水平的重要标志。单片机可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化。现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。本次课程设计的课题是“基于单片机的多路数字电压表的设计”。主要考核我们对单片机技术,编程能力等方面的情况。观察独立分析、设计单片机的能力,以及实际编程技能。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便。通过单片机,采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表,使测得的结果更为精准。本课题主要解决A/D转换、数据处理及显示控制等三个模块。控制系统采用AT89C52单片机,A/D转换采用ADC0809。1基于单片机的多路数字电压表的基本理论基于单片机的多路数字电压表的主要原理是利用A/D转换器实现其功能,其过程为如下先用A/D转换器对各路电压值进行采样,得到相应的数字量,再按数字量与模拟量成比例关系运算得到相应的模拟电压值,然后把模拟值通过数码管显示出来。设计时假设待测的输入电压为8路,电压值的范围为05V,要求能在4位LED数码上轮流显示或单路显示。测量的最小分辨率为0019V。根据系统的功能要求,控制系统采用AT89C52单片机,A/D转换器。当输入电压为5V时,输出的数据值为255(0FFH),因此最大分辨率为00196V(5/255)。ADC0809具有8路模拟量输入端口,通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8路输入电压进行测量。LED数码管显示采用软件译码动态显示。通过按键选择可8路循环显示,也可以单路循环。单路显示可通过按键选择所要显示的通道数。2方案设计基于单片机的多路数字电压表电路的基本组成如图1所示。图1基于单片机的多路数字电压表电路的原理框图根据设计要求,采用的方案如下。硬件部分实现数据的采集、编译,A/D转换以及显示的功能,包括单片机电路模块、A/D转换器模块、数码管显示电路模块、按键处理电路模块;软件部分实现控制芯片,使各部件能够正常的运行,同时实现仿真的功能,主要设计思想是利用PROTEUS软件进行仿真,通过仿真得到实验的结果。3硬件电路的工作原理31单片机电路模块本次课设单片机采用高性能的89C52系列芯片,如图2所示,输入电路A/D转换器单片机89C52LED数码显示图2AT89C52芯片图其具体管脚说明如下P0口P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示P30RXD(串行输入口);P31TXD(串行输出口);P32/INT0(外部中断0);P33/INT1(外部中断1);P34T0(记时器0外部输入);P35T1(记时器1外部输入);P36/WR(外部数据存储器写选通);P37/RD(外部数据存储器读选通);P3口同时为闪烁编程和编程校验接收一些控制信号。RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。/PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP当/EA保持低电平时,则在此期间外部程序存储器(0000HFFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2来自反向振荡器的输出。32A/D转换器电路模块ADC0809具有8路模拟量输入通道IN0IN7,通过3位地址输入端C、B、A(引脚2325)进行选择,如图3所示。引脚22为地址锁存控制端ALE,当输入为高电平时,C、B、A引脚输入的地址锁存于ADC0809内部是锁存器中,经内部译码电路译码选中相应的模拟通道。引脚6为启动转换控制端START,当输入一个2S宽的高电平脉冲时,就启动ADC0809开始对输入通道的模拟量进行转换。引脚7为A/D转换器,当开始转换时,EOC信号为低电平,经过一段时间,转换结束,转换结束信号EOC输出高电平,转换结果存放于ADC0809内部的输出数据寄存器中。引脚9脚为A/D转换数据输出允许控制端OE,当OE为高电平时,存放于输出数据锁存器中的数据通过ADC0809的数据线D0D7输出。引脚10为ADC0809的时钟信号输入端CLOCK。在连接时,ADC0809的数据线D0D7与AT89C52的P0口相连接,ADC0809的地址引脚、地址锁存端ALE、启动信号START、数据输出允许控制端OE分别与AT89C52的P2口相连接,转换结束信号EOC与AT89C52的P37相连接。时钟信号输入端CLOCK信号,由单片机的地址锁存信号ALE得到。图3A/D转换器电路图33数码管显示电路模块LED数码管采用动态扫描方式连接,通过AT89C52的P1口和P30P33口控制。P1口为LED数码管的字段码输出端,P30P33口为LED数码管的位选码输出端,通过三极管驱动并反相。如图4所示。图4数码管显示电路图34按键处理电路模块S1和S2是两个按键开关,如图5所示,分别与单片机的P35和P36相连接。S1用于单路显示或多路循环显示转换控制,S2用于单路显示时的通道选择。图5按键处理电路图4软件编程多路数字电压表的系统软件程序由主程序、A/D转换子程序和显示子程序组成。41主程序主程序包含初始化部分、调用A/D转换子程序和调用显示程序,如图6所示。初始化部分包含存放通道数据缓冲区初始化和显示缓冲区初始化。另外,对于单路显示和循环显示,系统设置了一个标志位00H控制。初始化时00H位设置为0,默认为循环显示,当它为1时改变为单路显示。00H位通过单路/循环按键控制。初始化调用A/D转换子程序调用显示子程序开始图6主程序流程框图程序源如下INCLUDEINCLUDEINCLUDE/调用_NOP_延时函数DEFINEAD_CONP2/0809控制口DEFINEADDATAP0/0809数据入口DEFINEDISDATAP1/数码管显示DEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTUCHARNUMBER0X00/存放单通道显示时的当前通道数SBITALEP23/0809地址锁存信号SBITSTARTP24/启动信号SBITOEP25/输出允许通道SBITKEY1P35/循环或单路选择按键SBITKEY2P36/通道选择按键SBITEOCP37/转换结束信号SBITDISXDISDATA7/小数点位SBITFLAGPSW0/循环或单路显示标志位UCHARCODEDIS_7110X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7E,0X6F,0X00/数码管的字段码UCHARCODESCAN_CON40XF1,0XF2,0XF4,0XF8/4个LED数码管的位选UCHARDATAAD_DATA80X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00/0809的8个通道转换数据缓冲区UCHARDATADIS50X00,0X00,0X00,0X00,0X00/显示缓冲区/主函数/MAINP00XFF/初始化端口P20X00P10XFFP30XFFWHILE1TEST/测量转换数据SCAN/显示数据/1秒延时/DELAY1MSUINTTUINTI,JFORI0ITIFORJ0J120J42A/D转换子程序A/D转换子程序用于对ADC0809的8路输入模拟电压进行A/D转换,并将转换的数值存入8个相应的存储单元中,如图7所示。A/D转换子程序每隔一定时间调用一次,即隔一段时间对输入电压采样一次。图7A/D转换器子程序框图程序源如下TEST开始启动一次转换A/D转换结束EOC1)取数据(OE0)0808地址通道加1地址数小于8开始否否UCHARMUCHARS0X00/初始通道位0AD_CONS/第一通道地址送0809控制口FORM0M8MALE1_NOP_NOP_ALE0/锁存通道地址START1_NOP_NOP_START0/启动转换_NOP_NOP_NOP_NOP_WHILEEOC0/等待转换结束OE1AD_DATAMADDATAOE0/读取当前通道转换数据SAD_CONS/改变通道地址AD_CON0X00/通道地址恢复初值43显示子程序LED数码管采用软件译码动态扫描方式。在显示子程序中包含多路循环显示和单路显示程序。多路循环显示把8个存储单元的数值依次取出送到4位数码管上显示,每一路显示1秒。单路显示程序只对当前选中的一路数据进行显示。每路数据显示需经过转换变成十进制BCD码,放于4个数码管的显示缓冲区中。单路显示或多路循环显示通过标志位00H控制。在显示控制程序中加入了对单路或多路循环按键和通道选择按键的判断。程序如下KEYTESTIFKEY10/检测循环或单路选择按键是否按下FLAGFLAG/标志位取反,循环,单路显示却换WHILEKEY10IFFLAG1/单路循环时,检测通道选择按键是否按下IFKEY20NUMBERIFNUMBER8NUMBER0WHILEKEY205系统调试和结果分析采用KEILUVISION2编译器进行源程序编译及仿真调试,同时进行硬件电路板的设计制作,完成好程序后进行软硬件联调,最后进行端口电压的对比测试,要求测试对比中标准电压值采用数字万用表测得。测试对比表如表1所列。表中标准电压值采用数字万用表测得。表1基于单片机的多路数字电压表与数字电压表对比测试表标准电压值/V简易电压表测得值/V绝对误差/V000000000015017002085086001100102002125126001175176001189200002232233001265265001基于单片机的多路数字数字电压表与“标准”数字电压表测得的绝对误差应在002V以内,满足设计要求,达到了设计的目的。6结论及进一步设想通过实验仿真,比较标准电压值与设计的数字电压表测得的电压值,发现它们的绝对误差均在002V以内,这与采用8位A/D转换器所能到达到的理论误差精度相一致,在一般的应用场合完全可以满足要求。但是由于存在着单片机为8位处理器,当输入电压为500V时,ADC0809输出数据值为255(FFH),单片机最高的数值分辨率只能为00196V的原因,还存在着不能满足高精度测量的缺陷,可以通过采用更高位的A/D转换器来进一步改善,得到更加精确的数据。此外,从表1中可以看出,简易数字电压表测得的值基本上均比标准电压值偏大001001V。这可以通过校正ADC0809的基准电压来解决。因为该电压表设计时直接用5V的供电电源作为基准电压,所以电压有可能有偏差。另外,还可以用软件编程来校正测量值。参考文献1刘复华单片机及其应用系统北京清华大学出版社,19922李斌,董慧颖可重组机器人研究和发展现状沈阳工业学院学报,2000,19(4)23273张国勋,缩短ICL7135A/D采样程序时间的一种方法J电子技术应用,1993,第一期4高峰,单片微型计算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 福建艺术职业学院《中医护理临床思维训练》2023-2024学年第二学期期末试卷
- 山东第一医科大学《食品试验设计》2023-2024学年第二学期期末试卷
- 辽阳职业技术学院《行政学概论》2023-2024学年第二学期期末试卷
- 广东交通职业技术学院《世界现当代史》2023-2024学年第二学期期末试卷
- 医疗信息化化AI智能设备行业跨境出海项目商业计划书
- 敏感肌保湿面霜行业跨境出海项目商业计划书
- 重庆三峡职业学院《医学人际沟通技巧(1)》2023-2024学年第二学期期末试卷
- 精准医疗小分子靶向药研究行业跨境出海项目商业计划书
- 仪表盘柜创新创业项目商业计划书
- 西交利物浦大学《食品安全与质量管理学》2023-2024学年第二学期期末试卷
- 2025年上海市研发公共服务平台管理中心招聘题库带答案分析
- 初级消控员测试题及答案
- 宣讲政策课件
- 居民组织法试题及答案
- 国家行业领域重大事故隐患判定标准(2025年5月)解读培训
- 绿化草皮种植合同协议书
- 学校基本设施管理制度
- 工程测试技术试题及答案
- 无痛胃镜操作急救知识要点
- 2025年下半年湖南永州蓝山县事业单位招聘工作人员38人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年小学一年级数学下册奥数竞赛测试考试卷(含答案解析)
评论
0/150
提交评论