AT89C52的简易数字电压表资料.pdf

上传人:tbuqq 文档编号:5196539 上传时间:2020-02-19 格式:PDF 页数:18 大小:854.23KB
返回 下载 相关 举报
AT89C52的简易数字电压表资料.pdf_第1页
第1页 / 共18页
AT89C52的简易数字电压表资料.pdf_第2页
第2页 / 共18页
AT89C52的简易数字电压表资料.pdf_第3页
第3页 / 共18页
AT89C52的简易数字电压表资料.pdf_第4页
第4页 / 共18页
AT89C52的简易数字电压表资料.pdf_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《AT89C52的简易数字电压表资料.pdf》由会员分享,可在线阅读,更多相关《AT89C52的简易数字电压表资料.pdf(18页珍藏版)》请在三一文库上搜索。

1、www.yoryu- 出品 目录 绪论 0 第 1 章 系统总体方案选择与说明 2 1.1 项目分析及其设计 2 1.1.1 通道转换方案设计 2 1.1.2 显示部分方案设计 2 第 2 章 系统总体结构与工作原理 3 2.1 系统结构框图 3 2.2 工作原理 3 第 3 章 硬件设计说明及计算方法 4 3.1 单片机的选择及时钟电路.4 3.2 LED 显示电路设计与器件选择 4 3.3 A/D 转换模块及转化电路设计 .6 第 4 章 软件设计与说明 7 4.1 数字电压表系统软件设计方案确定7 4.2 数字电压表应用程序设计10 第 5 章 调试结果及其说明 10 5.1 调试结果及

2、其说明 10 总结 11 参考文献 12 附录 A 系统原理图 . 13 附录 B 系统源程序 . 14 绪论 数字电压表的诞生打破了传统电子测量仪器的模式和格局。它显示清晰直观、 读数准确,采用了先进的数显技术,大大地减少了因人为因素所造成的测量误差事 件。数字电压表是把连续的模拟量(直流输入电压)转换成不连续、离散的数字形 www.yoryu- 出品 1 式,并加以显示的仪表。数字电压表把电子技术、计算技术、自动化技术的成果与 精密电测量技术密切的结合在一起,成为仪器、仪表领域中独立而完整的一个分支, 数字电压表标志着电子仪器领域的一场革命,也开创了现代电子测量技术的先河。 本设计采用了以

3、单片机为开发平台,控制系采用AT89C52 单片机, A/D 转换采用 ADC0809 。系统除能确保实现要求的功能外,还可以方便进行8 路其它 A/D 转换量的 测量、远程测量结果传送等扩展功能。简易数字电压测量电路由A/D转换、数据处 理、显示控制等组成。 关键词 : 单片机AT89C52 A/D 转换ADC0809 数据处理 模拟式电压表具有电路简单、成本低、测量方便等特点,但测量精度较差,特 别是受表头精度的限制, 即使采用 0.5 级的高灵敏度表头, 读测时的分辨力也只能达 到半格。再者,模拟式电压表的输入阻抗不高,测高内阻源时精度明显下降。数字 电压表作为数字技术的成功应用,发展相

4、当快。数字电压表(Digital VoIt Me-ter, DVM ) ,以其功能齐全、精度高、灵敏度高、显示直观等突出优点深受用户欢迎。特 别是以 A/D 转换器为代表的集成电路为支柱,使DVM 向着多功能化、小型化、智 能化方向发展。 DVM 应用单片机控制,组成智能仪表;与计算机接口,组成自动测 试系统。目前,DVM 多组成多功能式的, 因此又称数字多用表 (Digital Multi Meter , DMM ) 。 DVM 是将模拟电压变换为数字显示的测量仪器,这就要求将模拟量变成数字 量。这实质上是个量化过程,即将连续的无穷多个模拟量用有限个数字表示的过程, 完成这种变换的核心部件是

5、A/ D 转换器,最后用电子计数器计数显示,因此DVM 的 基本组成是 A/D 转换器和电子计数器。 DVM 最基本功能是测直流电压,考虑到仪器的多功能化,可将其他物理量,如 电阻、电容、交流电压、电流等,都变成直流电压,因此,还应有一个测量功能选 择变换器,它包含在输入电路中。DVM 对直流电压直接测量时的测量精度最高,其 他物理量在变换成直流电压时,受功能选择变换器精度的限制,测量精度有所下降。 www.yoryu- 出品 2 第 1 章 系统总体方案选择与说明 实现数字电压表的方案很多,目前广泛采用的时基于74 系列逻辑器件,本设计 将介绍基于单片机实现的方案。 1.1 项目分析及其设计

6、 方案设计此设计包含两个模块,通道转换和显示部分方案。 1.1.1 通道转换方案设计 方案一:考虑到 ADC0808 的 8 路模拟量输入本质上也是模拟开关,因此可以利 用其 8 个模拟通道中的3 个作为通道转换器,即根据通道对应的电压测量范围确定 对应的电压方法倍数设计对应的放大电路。 方案二:利用手动开关实现通道转换。该方案可简化控制程序,消减系统开销。 缩短反应时间,不足之处在于操作麻烦。 综上所述:方案二所需元件少、成本低且易于实现,则选此方案。 1.1.2 显示部分方案设计 方案一:单片机的 P0、P2 口分别接 74LS248 和 ULN2003A 芯片来驱动四位数码 管 方案二:

7、直接用单片机的P1、P2 口驱动数码管,此处把ADC0808 的输出端接 P1 口 ,因为 P1 口能够驱动数码管。 综上所述,两个方案都可行,但方案二所需元件少、成本低,则选择此方案。 www.yoryu- 出品 3 第 2 章 系统总体结构与工作原理 2.1 系统结构框图 根据项目要求,确定该系统的设计方案,图3-1 为该系统设计方案的结构框图。 硬件电路由 6 各部分组成,即单片机、时钟电路、复位电路、LED 显示电路、 A/D 装唤器和测量电压输入电路。 时钟电路 复位电路 LED显示电路 A/D转化测量电压输入电路 单 片 机 图 2-1系统结构框图 2.2 工作原理 系统采用 12

8、M 晶振产生脉冲做AT89C51的内部时钟信号,通过软件设置单片机 的内部定时器T0 产生中断信号。利用中断设置单片机的P2.4 口取反产生脉冲做 AT89C51 的时钟信号。通过键盘选择八路通道中的一路,将该路电压送入ADC0808 相应通道,单片机软件设置ADC0808 开始 A/D 转换,转换结束ADC0808 的 EOC 端口产生高电平,同时将ADC0808 的 EO 端口置为高电平,单片机将转换后结果存 到片内 RAM 。系统调出显示子程序,将保存结果转化为0.00-5.00V 分别保存在片内 RAM ; 系统调出显示子程序,将转化后数据查表,输出到LED 显示电路,将相应电 压显示

9、出来,程序进入下一个循环。 www.yoryu- 出品 4 第 3 章 硬件设计说明及计算方法 根据设计要求与思路,确定该系统的设计方案。硬件电路由5 个部分组成,即 单片机时钟电路、复位电路、4 位显示器电路、 A/D 转换电路和键盘及测量电路。 3.1 单片机的选择及时钟电路 根据初步设计方案的分析,设计这样一个简单的应用系统,可以选择带有 EPROM 的单片机,应用程序直接存储在片内,不用在外部扩展程序存储器,电路可 以简化。此电路选择Atmel 公司生产的 AT89C51。AT89 系列与 MCS-51 系列单片机 相比有两大优势:第一,片内程序存储器采用闪速存储器,使程序的写入更加方

10、便; 第二,提供了更小尺寸的芯片,使整个电路体积更小。它以较小的体积、良好的性 价比倍受青睐。 单片机工作的时间基准是由时钟电路提供的。在单片机的XTAL1 和 XTAL2 两 个管脚,接一只晶振及两只电容就构成了单片机的时钟电路。 电路中,电容 C1 和 C2 对震荡电路有微调的作用,通常的取值范围位(30+10) pF。石英晶体选择 6MHz 或 12MHz 都可以,其结果只是机器周期时间不同,影响计 数器的计数初值,此设计取12MHz。本设计使用的是CLOCK 时钟脉冲触发。 3.2 LED 显示电路设计与器件选择 单片机应用系统中,通常都需要进行人机对话。这包括人对应用系统的状态干 预

11、与数据输入,以及应用系统向人们显示运行状态与运行结果。显示器、键盘电路 就是用来完成人机对话活动的人机通道。 图 3-2-1 LED 显示管脚 www.yoryu- 出品 5 LED 显示器的驱动是一个非常重要的问题,由图3-2-1 可知,显示电路由LED 显示器、段驱动电路和位驱动电路组成。此设计不采用段驱动芯片和位驱动芯片, 直接由单片机的P0,P2口驱动,实验证明可行。 在应用系统中,设计要求不同,使用的LED 显示器的位数也不同,因此生产厂 家就生产了多种位数、尺寸、型号不同的LED 显示器。在我们的设计中,选择4 位 一体的共阴极时钟型LED 显示器,采用动态显示方式。 图 3-2-

12、2 LED 显示器接口电路原理 采用 P0口作为 LED 的段码输出信号,P2 口的低四位作为LED 位码的输出控制 信号。硬件电路的连接如图3-2-2 所示。 该电路的工作原理:当P0 口输出段码信号的BCD 码后,输出具有一定驱动能 力的七段字形码, 由于 4-LED 的段码输入管脚是并联在一起的,所以每一位 LED 的 段码输入管脚都能获得这个段码信号。若要控制在每一时刻只有一位LED 被点亮, 必须靠位码信号控制。 P2 口低四位输出位码信号后接到LED 的位码控制端,因此 P2 口的低四位的位码信号在每一时刻只有一位是“1” ,其他位全为“ 0” ,然后按时 www.yoryu- 出

13、品 6 间顺序改变输出“ 1”的位置,控制在每一时刻只有一位LED 被点亮,达到动态显 示的目的。 说明: 1 位显示转换通道, 2、3 和 4 位显示电压表数值。 3.3 A/D 转换模块及转化电路设计 A/D 转换器的功能是将模拟量转换为与其大小成正比的数字量信号。能实现这种 转换的原理和方法很多,此设计采用ADC0808 转换器。 ADC0808 是一种逐次逼近 型的 8 位 A/D 转换器件,片内有8 路模拟开关,可输入8 个模拟量,单极性,量程 为 0+5V。 3.3.1 ADC0808 简介 1. ADC0808 引脚功能 2 -1MSB 21 ADD B 24 ADD A 25

14、ADD C 23 VREF(+) 12 VREF(-) 16 IN3 1 IN4 2 IN5 3 IN6 4 IN7 5 START 6 2 -5 8 EOC 7 OUTPUT ENABLE 9 CLOCK 10 VCC 11 2 -2 20 GND 13 2 -7 14 2 -6 15 2 -8LSB 17 2 -4 18 2 -3 19 IN2 28 IN1 27 IN0 26 ALE 22 图 3-3-1ADC0808 引脚图 (1) IN0IN7:8 路模拟量输入。 (2) ADDA 、ADDB 、ADDC : 模拟量输入通道地址选择, 其 8 位编码分别对应 IN0IN7. (3)

15、ALE: 地址锁存允许,上升沿将通道选择信号存入地址锁存器。 (4) START: ADC 转换启动信号,正脉冲有效,引脚信号要求保持在200ns以 www.yoryu- 出品 7 上,其上升沿将内部逐次逼近寄存器清零。 (5) EOC: 转换解释信号,可做为中断请求信号或供CPU查询。 (6) CLK:时钟输入端,要求频率范围在10kHz1.2MHz. (7) OE:允许输出信号。 (8) Vcc: 芯片工作电压。 (9) VREF(+)、VREF(-):基准参考电压的正、负值。 (10)OUT1OUT8: 8 路数字量输出端。 3.3.2 A/D转换电路设计 集成摸数转换芯片ADC0808

16、 实现的 A/D 转换电路被测信号由ADC0808 模拟输 入端输入,完成A/D 转换后送入单片机,经相应处理后送出显示。 第 4 章 软件设计与说明 进行应用软件设计时可以采用模块化结构设计,其优点是:每个模块的程序 结构简单,任务明确,易于编写、调试和修改;程序可读性好,对程序的修改可 局部进行,其他部分可以保持不变,易于功能扩充和版本升级; 易于使用频繁的子程序可以建立子程序,便于多个模块调用; 便于分工合作,多个程序员同时进行程序的编写和调试工作,加快软件研制进度。 4.1 数字电压表系统软件设计方案确定 (1)根据设计要求,根据系统所要完成的功能,设计出图4-1 所示的功能模块。 w

17、ww.yoryu- 出品 8 主程序模块 数数 码码 转 换 显 示 通 道 转 换 显 示 延延 时时 消 抖 转 换 A D 图 4-1 数字电压表软件设计的模块 (2)程序的设计 主程序的设计主程序的内容一般包括:主程序的起始地址、中断服务额程 序的起始地址、有关内存单元及相关部件的初始化和一些子程序调用等。根据设计 要求,设计出如图4-2 所示的主程序流程图。 www.yoryu- 出品 9 开始 初始化 调用A/D转化子程序 调用显示子程序 转化是否 完成? 开始 结束 开始模数转化 取得模数转化结 果并化为工程量 显示转化结果 Y N 图 4-2 主程序流程图图 4-3 A/D 转

18、换子程序流程图 A/D 转换子程序的设计A/D 转换程序的功能是采集数据,再整个系统设计 中占有很高的地位。 当系统置好后, 单片机扫描转换结束管脚P2.6的输入电平状态, 当输入为高电平则转换完成,将转换的数值转换并显示输出。若输入为低电平,则 继续扫描。程序流程图如图4-3 所示。 数码转换及显示子程序的设计由于人们日常习惯使用十进制数,而计算机 的键盘输入、输出以及显示常采用二进制编码的十进制数(即 BCD 码)或 ASCII 码。 因此,在程序设计中经常要进行数码转换。 www.yoryu- 出品 10 4.2 数字电压表应用程序设计 (1)程序起始地址MCS-51 系列单片机复位后,

19、(PC)=0000H,而 0003H 002BH 分别为各中断源的入口地址。 所以,编程序时应在 0000H 处写一条跳转指令。 当 CPU 接到中断请求信号并予以响应后, CPU把当前的 PC 内容压入栈中进行保护, 然后转入相应的中断服务程序入口处执行。 (2) LED 动态显示延时LED 显示器每一位的显示时间是5ms, 延时 5ms 子程序是典型的软件定时程序。 说明: LED 采用 7 段字形代码,第2 位采用把dp 置 1 的方式显示小数点。 第 5 章 调试结果及其说明 5.1 调试结果及其说明 首先采用 Keil Vision 编译器进行源程序编译及仿真调试,调试好程序后将目

20、标文件导入 Proteus进行软件调试。 在 Proteus ISIS编辑窗口中单击开始仿真按钮,4 位 LED 数码管显示相应的电压 值。 当通道打到通道0 时, 滑动变阻器 RV1 的阻值调至最小位置时, LED 显示 00.00, 正确显示数值;把RV1 调至中间位置时, LED 显示 03.56,同样正确读出数据;当 把 RV1 的阻值调至最大位置时,LED 显示 05.00,正确读出数据。同理调试其他通 道时,能正确显示通道数和电压值,证明该8 路电压表合格。调试结果如图 www.yoryu- 出品 11 5-1 图 5 -1 调试结果图 总结 此次学期的单片机课设,我觉得是十分有意

21、义的,而且是十分必要的。在已 度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业 课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知 识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。 此次单片机课程设计,我做的是电压测量这个基本的设计,虽然设计简单,但 是所有的知识点都应用在设计中。确定课设内容后,我查找大量相关材料,然后知 识汇总,把有关课题的内容经过对比与分析,最后来完成课设。 电压测量在很多参考书上都有介绍,但运用到软件中时,出现各种不同的错如, 我参考别人的程序,在老师的指导下,根据书本上所讲的有关知识点加以改进,编 w

22、ww.yoryu- 出品 12 了一个新的程序,来实现功能。在编程过程中我运用的是汇编语言,比较C 语言来 说,感觉比较简洁清晰,函数关系较为清晰,并可以减少程序的冗长。 通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握, 但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。这也激 发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。总体来说, 这次实习使我受益匪浅。在摸索该如何设计电路使之实现所需功能的过程中,特别 有趣,培养了我的设计思维,增加了实际操作能力。在让我体会到了设计电路的艰 辛的同时,更让我体会到成功的喜悦和快乐。通过这两个星期的学

23、习让我把书本上 的知识转换成实际可操作的东西,虽然也做过实验,但课程设计这种系统和具有一 定规模收获是更多的。 两周的设计完满结束了,经过自己的努力和同学的帮忙终于有了成果,特别离 不开指导老师李老师悉心教导,李老师的精心指导和解说使我受益匪浅,相信他的 工作作风和知识筑成都是我们学习榜样,给我很大的启迪。感谢这些老师不畏辛劳, 热心精心的指导。在这里向他们说声谢谢,你辛苦了。 参考文献 1 彭为等 . 单片机典型系统设计实例精讲M. 北京:电子工业出版社, 2006 2 张毅刚等。单片机原理与应用设计M. 北京:电子工业出版社,2008 3 王迎旭 . 单片机原理与应用 . 北京:机械工业出

24、版社, 2004.7 4 周向红 . 51 系列单片机应用与实践教程. 北京: 北京航空航天大学出版社, 2008.5 5 刘国荣 . 单片机微型计算机技术 . 北京:机械工业出版社,1996 6 周坚. 单片机轻松入门(第2 版). 北京:北京航空航天大学出版社,2009.1 www.yoryu- 出品 13 附录 A 系统原理图 www.yoryu- 出品 14 附录 B 系统源程序 ORG 0000H SJMP START START: MOV DPTR,#TAB ;段码表首地址 MOV R4,#00H MOV R5,#30 WAIT: MOV P3,#0FFH MOV A,P3 ANL

25、 A,#08H MOV 30H,A CJNE A,#08H,DANLU XUNHUAN:MOV A,R4 LJMP LOOP DANLU: MOV P3,#0FFH MOV A,P3 LOOP: SWAP A MOV P3,A SWAP A ANL A,#07H www.yoryu- 出品 15 MOV R0,A CLR P2.5 SETB P2.5 CLR P2.5 ;启动 AD 转换 JNB P2.6,$ ;等待转换结束 SETB P2.7 MOV A,#0FFH MOV P1,A MOV A,P1 ;读取 AD 转换结果 CLR P2.7 MOV B,#51 ;AD 转换结果转换成 BC

26、D 码 DIV AB MOV R1,A MOV A,B MOV B,#5 DIV AB MOV R2,A MOV R3,B LCALL DISP MOV A,30H CJNE A,#08H,RETURN DJNZ R5,RETURN MOV R5,#30 INC R4 CJNE R4,#08H,RETURN MOV R4,#00H RETURN: SJMP WAIT DISP: MOV A,R3 ;显示子程序 MOVC A,A+DPTR CLR P2.3 MOV P0,A LCALL DELAY SETB P2.3 MOV A,R2 MOVC A,A+DPTR CLR P2.2 MOV P0,

27、A www.yoryu- 出品 16 LCALL DELAY SETB P2.2 MOV A,R1 MOVC A,A+DPTR ADD A,#80H CLR P2.1 MOV P0,A LCALL DELAY SETB P2.1 MOV A,R0 MOVC A,A+DPTR CLR P2.0 MOV P0,A LCALL DELAY SETB P2.0 RET DELAY: MOV R6,#20 ;延时 10 毫秒 D1: MOV R7,#250 DJNZ R7,$ DJNZ R6,D1 RET TAB: DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6FH END www.yoryu- 出品 17

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1