ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:195.03KB ,
资源ID:6642720      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6642720.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字电压表设计说明书.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数字电压表设计说明书.docx

1、数字电压表设计说明书衢州学院数字电压表设计说明书课题名称:基于单片机的数字电压表的设计专业名称: 10电气自动化 学生班级: 2 学生姓名: 王斌浩 陆正土 施连喜 指导教师: 徐进 顾能华 摘 要电压表是测量仪器中不可缺少的设备,电压表的好坏直接影响到测量精度。为此,设计了一个具有一定精度的数字电压表,控制系统采用STC89C52单片机,A/D转换采用ADC0809,显示采用LCD1602液晶模块。数字电压表可以测量05V的输入电压值,并在LCD1602上可实现两路选择显示,测量最小分辨为0.02V,测量误差约为+/-0.02V。由于尝试少并且器材质量的问题,该作品精度不是很高,但是器件的应

2、用还是蛮好的!关键字:A/D转换;STC89C52单片机;LCD1602液晶模块目 录引言1 数字电压表的设计1.1 设计目的1.2 设计任务及要求1.3 设计方案2 硬件设计2.1 单片机设计2.1.1 时钟电路2.1.2复位电路2.1.3 7芯片功能介绍2.1. STC89C52控制电路2.2 逐次逼近式A/D转换模块设计2.2.1 ADC0809引脚功能2.2.2 ADC0809与单片机接口2.3 LCD1602液晶显示模块设计2.3.2 1602LCD的基本参数及引脚功能2.3.3 基本操作时序表3 软件设计3.1 初始化程序3.2 A/D转换子程序3.3 1602LCD液晶显示模块程

3、序及按键控制程序4 系统调试4.1 硬件调试4.2 软件调试5 结论谢 辞参考文献附录 引言数字电压表简称DVM,基本工作原理是利用A/D转换电路将待测的模拟信号转换成数字信号,通过相应换算后将测试结果以数字形式显示出来的一种电压表。较之于一般的模拟电压表,数字电压表具有精度高,测量准确,读数直观,使用方便等优点。电压表的数字化测量,关键在于如何把随时连续变化的模拟量转化成数字量,完成这种转换的电路叫模数转换器(A/D)。数字电压表的核心部件是A/D转换器,由于不用的A/D转换原理构成了不同类型的DVM。一般说来,A/D转换方式可分为两类:积分式和逐次逼近式。在高精度数字电压表中,常采用积分式

4、和逼近式相结合起来的复合式A/D转换器。本设计以STC89C52单片机为核心,以逐次比较型A/D转换器ADC0809,LCD1602为主题,构造了一款简易数字电压表,能够测量05V的直流电压,最小分辨率为0.02V。1 数字电压表的设计1 设计方案按系统功能实现要求,决定控制系统采用STC89C52单片机,A/D转换采用ADC0809,显示采用LCD1602,系统除了能确保复位控制外,外加校准电压,还能同时进行两路测量。2 硬件设计2.1 单片机设计单片机控制模块是为了控制各单元电路的运行并完成数据换算或处理,主要由单片机,时钟电路,复位电路组成。2.1.1 时钟电路单片机工作时间基准是由时钟

5、电路提供的,在单片机的XTAL1和XTAL2两个管脚接一个晶振及两个电容就构成单片机的时钟电路,电路中电容器C1和C2对振荡频率有微调作用,本次设计选择11.0592MHZ.2.1.2复位电路单片机的RST管脚为主机提供了一个外部复位信号输入口。复位信号时高电平有效,高电平持续时间为2个机器周期以上。单片机的复位方式可由手动复位完成。时钟电路及复位电路如图2-1所示: 图2-1 时钟及复位电路2.1.3 STC89C52芯片功能介绍STC89C52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程 Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Fla

6、sh,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。AT89S52使用DIP封装,引脚配置如图

7、2-2所示: 图2-2 STC89C52引脚图P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻 辑电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0不具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将

8、输出电流(IIL)。 此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2 的触发输入(P1.1/T2EX)。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能: P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动 4 个 TTL 逻辑电平。对P2 端口写“1

9、”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR) 时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用 8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。 在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。 P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p3 输出缓冲器能驱动4 个 TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把

10、端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,P3口也接收一些控制信号。 端口引脚 第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INTO(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通) 此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。 R

11、ST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机

12、执行外部程序时,应设置ALE禁止位无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件

13、是使用12V编程电压Vpp。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端2.1.4 STC89C52控制电路如图2-3所示:图2-3 STC89C52控制电路2.2 逐次逼近式A/D转换模块设计A/D转换器是模拟量输入通道中的一个环节,单片机通过A/D转换器把输入模拟量变成数字量再处理。ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图2-4所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。图2-4 ADC0809内部结构2.2.1 ADC0809引脚功能ADC

14、0809芯片有28条引脚,采用双列直插式封装。 IN0IN7:8路模拟量输入端。 2-12-8:8位数字量输出端。 ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路 ALE:地址锁存允许信号,输入,高电平有效。 START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。 OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 CLK:

15、时钟脉冲输入端。要求时钟频率不高于640KHZ。 REF(+)、REF(-):基准电压。 Vcc:电源,单一+5V。GND:地。2.2.2 ADC0809与单片机接口ADC0809与单片机的接口如图2-5所示图2-5 ADC0809转换电路由于ADC0809具有输出三态锁存器,故其8位数据输出线可直接与单片机数据总线相连。本次设计了两路数据读取,可同时测量两路电压。2.3 LCD1602液晶显示模块设计2.3.1 LCD1602液晶显示原理 液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄,适用于大规模集成电路直接驱动,

16、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑,数字摄像机,PDA移动通信工具等众多领域。1602液晶也叫1602字符型液晶,它是一种专门用来显示字母,数字,符号等的点阵型液晶模块,它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位可以显示一个字符。每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此没所以不能显示图形。1602LCD是指显示的内容是16*2,即可显示两行,每行16个字符液晶模块(显示字符和数字)。2.3.2 1602LCD的基本参数及引脚功能1602LCD 主要技术参数显示容量:16*2个字符芯片工作电压:4.55.5V工作

17、电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.95*4.35(W*H)mm引脚功能说明:1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口如下表第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:VL为液晶显示器对比度调整端,接正电源对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平是选择数据寄存器,低电平是选择指令寄存器。第5脚:R/W为读写信号线,高电平是进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/

18、W为电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变为低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。2.3.3 基本操作时序表读写操作时序如图2-6和2-7所示: 图2-6 读操作时序图 图2-7写操作时序图1602的数据位由单片机P0口控制,首先初始化,然后根据时序图写程序开启1602.原理图如下图2-8: 图2-8 1602LCD显示电路 1602特性(1)+5V电压,对比度可调(2)内含复位电路(3)提供各种控制命令:如清屏,字符闪烁,光标闪烁,显示移位等多种功能 (4

19、)有80字节显示数据存储器DDRAM(5)内建有160个5*7点阵的字型的字符发生器CGROM(6)8个可由用户自定义的5*7的字符发生器CGRAM3 软件设计3.1 初始化程序所谓初始化,是将要用到的STC89C52单片机内部部件进行初始化工作状态设定,初始化自称西主要工作是设置定时器的工作模式,初值预置 ,开中断和打开定时器。本次设计采用51单片机定时器0的模式2,具有自动加载功能,计数器里面的数据加到全是F时,再加一个后就溢出了,然后硬件自动将TH里面的数据写到TL里。3.2 A/D转换子程序A/D转换程序用来控制对输入模块电压信号的采集测量,并将对应的数值存入相应的内存单元。3.3 1

20、602LCD液晶显示模块程序及按键控制程序采用STC89C52的P2.5,P2.6,P2.7分别RS,R/W,EN。其中EN是下降沿触发的片选信号,R/W是读写信号,RS是寄存器选择信号,首先进行模块初始化,再进行两路数据显示,同时设定显示校准电压。本次设计使用了四个按键,以进入电压校准,期望能测量到更准确数据。同时,为了简化硬件设计,主要采用软件定时的方式实现,通过软件延时程序来实现。4 系统调试完成系统的硬件设计,制作和软件编程之后,要使系统能够按设计意图正常运行,必须进行硬件和软件调试。4.1 硬件调试硬件调试都主要任务是排除硬件故障,其中包括设计错误和连线故障等。1 检查所设计都硬件所

21、有器件和引脚是否都正确,尤其是电源的连接是否正确,检查各总线是否有短路都故障。2 将显示子程序保存好并运行。3 按下复位键时,电压为初始值。4 硬件调试与测试均正常。4.2 软件调试软件调试都任务是利用开发板进行调试的,发现和纠正程序的错误,同时也能发现硬件的故障。软件调试是一个模块一个模块进行的。首先单独调试各子程序是否能够按照预期的功能,接口电路控制是否正常,最后调试整个程序。尤其注意的是各模块间能否正确传递参数。1. 检查1602显示模块程序,观察在1602上能否显示相应的字符。2. 检查A/D转换模块程序,可以在硬件电路的输入端已知都几个电压,分别观察是否显示相应的电压值。5 结论本次

22、设计以STC89C52单片机为控制核心,通过A/D0809将被测信号转换成数字信号,经单片机内部程序处理后,由液晶显示LCD1602显示测量结果。在设计的过程中,发现了不少问题,但是经过努力都解决了,并且还增长了很多知识。这次设计是软硬件结合的设计,需要足够的耐心和细心。A/D0809的时钟端的信号输入本来想用定时器提供频率的,但是定时器全部被占用,最后经查资料发现单片机的ALE端输出的频率是单片机时钟信号的六分之一,计算是2MHZ,器件需要的是500KHZ左右的频率,所以采用74LS74进行四分频,效果很好,调出来时很高兴!硬件解决以后是软件的设计,程序设计是一个很灵活的东西,它反映了我们的

23、逻辑思维能力和创新能力。很多子程序是借鉴书本上了,程序间的衔接也是很重要的。最后,数字电压表的性能良好,测量读数稳定易读,指标也符合任务书要求,但是还是有要改进的地方:1. 测量电压值不能实时保存,使用不够方便;2. STC89C52可实现对8个通道的输入信号轮流转换,本次设计仅仅使用了其中两路,造成较大资源浪费,若能对电路稍加改进,其应用价值会更大。谢 辞本作品是在实验室中完成的,在此感谢我的同学们。同时也感谢提供这次机会的电信学院。本次设计,通过大量寻找资料,请教老师,寻求帮助以及不懈努力,在收获知识的同时,也培养了独立思考的能力,更重要的是让我们学会了学习的方法。虽然在过程中遇到了一些困难,但是从中我也得到了很多帮助,没有半途而废,所以,通过这次比赛,我学到了很多东西。参考文献1 李秀忠 单片机应用技术M 北京 人民邮电出版社 2007年3月2 蔡明文 冯先成单片机原理及应用技术M 北京 华中科技大学出版社 2007年12月3 李全利 单片机原理及应用技术M 北京 高等教育出版社 2008年

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1