




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 单片机系统课程设计报告书题目:简易数字电压表的设计院系名称: 信息工程学院 专业名称: 电子信息工程 班 级: 信息1101B 学 号: 1134130151 姓 名: 王 浩 指导教师 禹定臣 摘 要随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器计数电路,这很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。数字电压表(DigitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。由DVM扩展而成的各种通用及专用数字仪器仪表,也把电
2、量及非电量测量技术提高到崭新水平。本文介绍了一种基于单片机的简易数字电压表的设计。该设计主要由三个模块组成:A/D转换模块(ADC0808),数据处理模块(芯片AT89C51和芯片74ls373)及显示模块(LCD1602)。该系统的数字电压表可以测量0-5V的1路模拟直流输入电压值,电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。本文首先简要介绍了设计电压表的主要方式以及单片机系统的优势;然后详细介绍了直流数字电压表的设计流程,以及硬件系统和软件系统的设计,并给出了硬件电路的设计细节,包括各部分电路的走向、芯片的选择以及方案的可行性分析等。通过此次课程设计使我对我们所学的知识有了更
3、深的认识和体会,对自我动手的能力也提高了很多。关键词单片机AT89C51;数字电压表DVM;A/D转换ADC0808目 录摘 要1关键词11、概述11.1 课程设计的目的和意义11.2 课程设计的任务12、设计原理及要求12.1 数字电压表的实现原理22.2 数字电压表的设计要求23、软件仿真电路设计23.1设计思路23.2仿真电路图23.3 AT89C51的功能介绍33.3.1 简要概述33.3.2 主要功能特性33.3.3 AT89C51的引脚介绍43.3.4 复位电路设计63.3.5 时钟电路设计63.4 ADC0809的功能介绍73.4.1 芯片概述73.4.2 引脚简介73.4.3
4、ADC0808的转换原理83.5 74LS373芯片的引脚及功能83.5.1芯片概述83.5.2引脚介绍83.6 LED数码管的控制显示液晶模块93.6.1芯片概述93.6.2引脚介绍94、系统软件程序的设计114.1 初始化程序114.2 A/D转换子程序114.3 显示子程序125、显示结果及误差分析125.1显示结果125.2误差分析136、课程设计体会14参考文献15附录16电路图16源程序171、概述1.1 课程设计的目的和意义本次课程设计,让我学习和巩固了单片机的使用,以及常用的寄存器的使用方法,还有就是学习常用的外围硬件使用、电路原理图设计、PCB设计等等。使我对已学过的基础知识
5、有了更深入的理解,独立思考、独立工作以及应用所学基本理化分析和解决实际问题的能力有了很大的提高。1.2 课程设计的任务数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。2、设计原理及要求本设计是
6、利用单片机AT89C51与ADC0808设计一个数字电压表,测量05V之间的直流电压值,四位LED数码管上显示,但要求使用的元器件数目最少。硬件电路设计由6个部分组成; A/D转换电路,AT89C51单片机系统,四位LED数码管、时钟电路、复位电路以及测量电压输入电路。时钟电路 复位电路A/D转换电路测量电压输入显示系统AT89C51 P1 P2 P2 P0 图1 数字电压表系统硬件设计框图2.1 数字电压表的实现原理ADC0809是8位的A/D转换器。当输入电压为5.00V时,输出的数据值为255(0FFH),因此最大分辨率为0.0196(5/255)。ADC0808具有8路模拟量输入端口,
7、通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8 路输入电压进行测量。2.2 数字电压表的设计要求可以测量05V范围内的直流电压值。在四位LED数码管上显示电路电压值,显示范围为0.00V5.00V。要求测量的最小分辨率0.019V。3、软件仿真电路设计3.1设计思路数字电压表应用系统硬件电路由单片机、A/D转换器、液晶显示电路组成,由于ADC0809在进行A/D转换时需要有CLK信号,本试验中ADC0809的CLK直接由外部电源提供为500kHz的方波。由于ADC0809的参考电压VREFVCC,所以转换之后的数据要经过数据处理,在数
8、码管上显示出电压值。实际显示的电压值(D/256*VREF) ADC0808采用逐次逼近法转换,把模拟电压转换成16进制的D,由于是对直流电压05V进行采集,所以D对应的电压为V0 ,我们的目的就是要把V0显示在四位LED数码管上,因为单片机不好进行小数点计算,所以有:V0=2*D扩大了100倍,扩大100倍后的结果高八位放寄存器B,低八位放寄存器A,分寄存器B为0或不为0的情况进行存取数据,得到的结果个位放入R0,十位放入R1,通过查表使之显示在LED显示器。3.2仿真电路图用Protues软件仿真设计的电路如图2所示。3.3 AT89C51的功能介绍3.3.1 简要概述AT89C
9、51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含有4KB的可反复擦写的只读程序存储器和128字节的随机存储器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,它为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。AT89C51功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编
10、程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式。3.3.2 主要功能特性(1) 4K字节可编程闪烁存储器。(2) 32个双向I/O口;128×8位内部RAM 。(3) 2个16位可编程定时/计数器中断,时钟频率0-24MHz。(4) 可编程串行通道。(5) 5个中断源。(6) 2个读写中断口线。(7) 低功耗的闲置和掉电模式。(8) 片内振荡器和时钟电路。3.3.3 AT89C51的引脚介绍AT89C51提供以下标准功能:4KB的Flash闪速存储器,128B内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,
11、一个全双工串行通信口,片内震荡器及时钟电路,同时,AT89C51可降至0Hz静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作,掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有工作直到下一个硬件复位。AT89C51采用PDIP封装形式,引脚配置如图3所示。图3 AT89C51的引脚图AT89C51芯片的各引脚功能为:P0口:这组引脚共有8条,P0.0为最低位。这8个引脚有两种不同的功能,分别适用于不同的情况,第一种情况是89C51不带外存储器,P0口可以为通用I/O口使用,P0.0-P0.7用于传送CPU
12、的输入/输出数据,这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的可靠性;第二种情况是89C51带片外存储器,P0.0-P0.7在CPU访问片外存储器时先传送片外存储器的低8位地址,然后传送CPU对片外存储器的读/写数据。P0口为开漏输出,在作为通用I/O使用时,需要在外部用电阻上拉。P1口:这8个引脚和P0口的8个引脚类似,P1.7为最高位,P1.0为最低位,当P1口作为通用I/O口使用时,P1.0-P1.7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。P2口:这组引脚的第一功能与上述两组引脚的第一功能相同即它可以作为通用I/O口使用,它
13、的第一功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但并不是像P0口那样传送存储器的读/写数据。P3口:这组引脚的第一功能和其余三个端口的第一功能相同,第二功能为控制功能,每个引脚并不完全相同,如下表2所示:表1 P3口各位的第二功能P3口各位第二功能P3.0RXT(串行口输入)P3.1TXD(串行口输出)P3.2/INT0(外部中断0输入)P3.3/INT1(外部中断1输入)P3.4T0(定时器/计数器0的外部输入)P3.5T1(定时器/计数器1的外部输入)P3.6/WR(片外数据存储器写允许)P3.7/RD(片外数据存储器读允许)Vcc为+5V电
14、源线,Vss接地。ALE:地址锁存允许线,配合P0口的第二功能使用,在访问外部存储器时,89C51的CPU在P0.0-P0.7引脚线去传送随后而来的片外存储器读/写数据。在不访问片外存储器时,89C51自动在ALE线上输出频率为1/6震荡器频率的脉冲序列。该脉冲序列可以作为外部时钟源或定时脉冲使用。/EA:片外存储器访问选择线,可以控制89C51使用片内ROM或使用片外ROM,若/EA=1,则允许使用片内ROM, 若/EA=0,则只使用片外ROM。/PSEN:片外ROM的选通线,在访问片外ROM时,89C51自动在/PSEN线上产生一个负脉冲,作为片外ROM芯片的读选通信号。RST:复位线,可
15、以使89C51处于复位(即初始化)工作状态。通常89C51复位有自动上电复位和人工按键复位两种。XTAL1和XTAL2:片内震荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接89C51片内OSC(震荡器)的定时反馈回路。3.5 ADC0808的引脚及功能介绍3.3.4 复位电路设计单片机在启动运行时都需要复位,使CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。MCS-51单片机有一个复位引脚RST,采用施密特触发输入。当震荡器起振后,只要该引脚上出现2个机器周期以上的高电平即可确保时器件复位1。复位完成后,如果RST端继续保持高电平,MCS-51就一直处于
16、复位状态,只要RST恢复低电平后,单片机才能进入其他工作状态。单片机的复位方式有上电自动复位和手动复位两种,图4是51系列单片机统常用的上电复位和手动复位组合电路,只要Vcc上升时间不超过1ms,它们都能很好的工作。图4 复位电路3.3.5 时钟电路设计单片机中CPU每执行一条指令,都必须在统一的时钟脉冲的控制下严格按时间节拍进行,而这个时钟脉冲是单片机控制中的时序电路发出的。CPU执行一条指令的各个微操作所对应时间顺序称为单片机的时序。MCS-51单片机芯片内部有一个高增益反相放大器,用于构成震荡器,XTAL1为该放大器的输入端,XTAL2为该放大器输出端,但形成时钟电路还需附加其他电路。本
17、设计系统采用内部时钟方式,利用单片机内部的高增益反相放大器,外部电路简,只需要一个晶振和 2个电容即可,如图5所示。图5 时钟电路电路中的器件选择可以通过计算和实验确定,也可以参考一些典型电路的参数,电路中,电容器C1和C2对震荡频率有微调作用,通常的取值范围是30±10pF,在这个系统中选择了33pF;石英晶振选择范围最高可选24MHz,它决定了单片机电路产生的时钟信号震荡频率,在本系统中选择的是12MHz,因而时钟信号的震荡频率为12MHz。3.4 ADC0809的功能介绍3.4.1 芯片概述ADC0809是一种典型的A/D转换器。它是由8位A/D转换器,一个8路模拟量开关,8位
18、模拟量地址锁存译码器和一个三态数据输出锁存器组成; +5V单电源供电,转化 时间在100us左右;内部没有时钟电路,故需外部提供时钟信号。芯片模型如图6所示。图3 ADC0809芯片模型3.4.2 引脚简介(1) IN0IN7:8路模拟量输入端。(2) D0D7:8位数字量输出端口。(3) START:A/D转换启动信号输入端。(4) ALE:地址锁存允许信号,高电平有效。(5) EOC:输出允许控制信号,高电平有效。(6) OE: 输出允许控制信号,高电平有效。(7) CLK:时钟信号输入端。(8)A、B、C:转换通道地址,控制8路模拟通道的切换。A、B、C分别与地址线或数据线相连,三位编码
19、对应8个通道地址端口,A、B、C=000111分别对应IN0IN7通道的地址端口。ADC0809通道选择表地址码对应的输入通道CBA000011110011001101010101IN0IN1IN2IN3IN4IN5IN6IN73.4.3 ADC0808的转换原理ADC 0808 采用逐次比较的方法完成A/D转换,由单一的+5V电源供电。片内带有锁存功能的8路选1的模拟开关,由A、B、C的编码来决定所选的通道。ADC0809完成一次转换需100s左右,它具有输出TTL三态锁存缓冲器,可直接连接到AT89C51的数据总线上。通过适当的外接电路,ADC0808可对05V的模拟信号进行转换。3.5
20、74LS373芯片的引脚及功能3.5.1芯片概述图3-5 74LS373芯片模型4LS373是一种带有三态门的8D锁存器,其在本设计中是锁存P0口的低8位地址,芯片模型如图7所示。3.5.2引脚介绍(1) D0D7:8位数据输入线;(2) Q0Q7:8位数据输出线(3) G:数据输入锁存选通信号。当加到该引脚的信号为高电平时,外部数据选通到内部锁存器,负跳变时,数据锁存到锁存器中。(4):数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中的数据输出到数据输出线上,当该信号为高电平时,输出线为高阻态。 3.6 LED数码管的控制显示3.6.1数码管的模型3.6.2LED数码管
21、的接口简介图3-7LED与AT89C51的硬件连线LED 的段码端口AG分别接至AT89C51的P1.0P1.7口,位选端14分别接至P3.5、P3.4、P3.1、P3.0,4、系统软件程序的设计4.1 初始化程序所谓初始化,是对将要用到的MCS_51系列单片机内部部件或扩展芯片进行初始工作状态设定,初始化子程序的主要工作是设置定时器的工作模式,初值预置,开中断和打开定时器等。4.2 A/D转换子程序A/D转换子程序用来控制对输入的模块电压信号的采集测量,并将对应的数值存入相应的内存单元,其转换流程图如图8所示。启动转换A/D转换结束?输出转换结果数值转换显示结束开始图8 A/D转换流程图4.
22、3 显示子程序显示子程序采用动态扫描实现四位数码管的数值显示,在采用动态扫描显示方式时,要使得LED显示的比较均匀,又有足够的亮度,需要设置适当的扫描频率,当扫描频率在70HZ左右时,能够产生比较好的显示效果,一般可以采用间隔10ms对LED进行动态扫描一次,每一位LED的显示时间为1ms。在本设计中,为了简化硬件设计,主要采用软件定时的方式,即用定时器0溢出中断功能实现11s定时,通过软件延时程序来实现5ms的延时。5、显示结果及误差分析5.1显示结果1.输入电压值为0V时,显示结果如图9所示,测量误差为0V。输入电压为0V时,LED的显示结果2.当输入电压值为0.20V时,显示结果如图所示
23、。测量误差为0.01V。输入电压为0.20V时,LED的显示结果3. 当IN0口输入电压值为2.95V时,显示结果如图11。测量误差为0.01V。输入电压为2.95V时,LED的显示结果5.2误差分析通过以上仿真测量结果可得到简易数字电压表与“标准”数字电压表对比测试表,如下表所示:表简易数字电压表与“标准”数字电压表对比测试表标准电压值/V简易电压表测量值/V绝对误差/V0.000.000.000.100.090.010.200.190.010.300.290.010.500.500.001.101.090.003.003.000.003.503.490.014.004.000.005.00
24、5.000.00由于单片机AT89C51为8位处理器,当输入电压为5.00V时,ADC0808输出数据值为255(FFH),因此单片机最高的数值分辨率为0.0196V(5/255)。这就决定了电压表的最高分辨率只能到0.0196V,从上表可看到,测试电压一般以0.01V的幅度变化。从上表可以看出,简易数字电压表测得的值基本上比标准电压值偏小0-0.01V,这可以通过校正ADC0808的基准电压来解决。因为该电压表设计时直接用5V的供电电源作为电压,所以电压可能有偏差。当要测量大于5V的电压时,可在输入口使用分压电阻,而程序中只要将计算程序的除数进行调整就可以了。6、课程设计体会通过本次设计,我
25、对单片机这门课有了更深入的了解,而且我还学会了Proteus和Keil软件的使用方法,掌握了从系统的需要、方案的设计、功能模块的划分、原理图的设计和电路图的仿真的设计流程,积累了不少经验。基于单片机的数字电压表使用性强、结构简单、成本低、外接元件少。在实际应用工作应能好,测量电压准确,精度高。系统功能、指标达到了课题的预期要求、系统在硬件设计上充分考虑了可扩展性,经过一定的改造,可以增加功能。本文设计主要实现了简易数字电压表测量一路电压的功能,详细说明了从原理图的设计、电路图的仿真再到软件的调试。无论是在硬件连接方面还是在软件编程方面。本次设计采用了AT89C51单片机芯片,与以往的单片机相比增加了许多新的功能,使其功能更为完善,应用领域也更为广泛。设计中还用到了模/数转换芯片ADC0808,以前在学单片机课程时只是对其理论知识有了初步的理解。通过这次设计,对它的工作原理有了更深的理解。在调试过程中遇到很多问题,硬件上的理论知识学得不够扎实,对电路的仿真方面也不够熟练。总的来说这次电路的设计和仿真,基本上达到了设计的功能要求。在以后的实践中,我将继续努力学习电路设计方面的理论知识,让自己在电路设计方面能有所提升。参考文献1何 宏.单片机原理及应用基于Proteus单片机系统设计及应用.清华大学出版社2郭天祥.51单片机C语言教程入门、提高、开发、拓展全攻略.电
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房地产代销的合同
- 安装合同与买卖合同
- 国产医疗器械委托申报合同书
- 专业演出活动策划及执行合同书
- 房屋建筑施工合同书
- 材料合同价格补充协议
- 物流长途运输司机劳动合同书
- 产品销售合同协议书
- 企业文化建设与价值观塑造方案
- 店铺承包转让合同
- NB-T47023-2012长颈对焊法兰
- 高中语文统编版必修上册《致云雀》课件
- 预制混凝土剪力墙吊装施工技术讲解
- 2024年浙江长征职业技术学院单招职业技能测试题库含答案解析
- 杉篙架搭设安全技术交底
- 四年级下册数学-口算题-(加法交换律和结合律)-1000题
- 《电化学储能电站监控系统技术规范》
- 新型电力系统简介
- 一、中国经典话剧艺术赏析(引言)
- 施工现场常见问题解决的协调沟通技巧与有效方案研究
- 四年级英语 Lesson 14 Are You Short or Tall 全省一等奖
评论
0/150
提交评论