您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于单片机的数字电压表设计
摘要本课题实验主要采用AT89C51芯片和ADC0808芯片来完成一个简易的数字电压表,能够对输入的0~5V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差约为0.019V。该电压表的测量电路主要由三个模块组成:A/D转换模块、数据处理模块及显示控制模块。A/D转换主要由芯片ADC0808来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。数据处理则由芯片AT89C51来完成,其负责把ADC0808传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0808芯片的工作。显示模块主要由7段数码管及相应的驱动芯片(74HC245)组成,显示测量到的电压值。关键词:简易数字电压表;ADC0809;AT89C51;LED。目录摘要...........................................................Ⅰ1绪论.........................................................11.1数字电压表特点............................................11.2数字电压表原理框图........................................22硬件电路设计.................................................22.1A/D转换电路设计...........................................22.2显示电路设计..............................................42.3振荡电路设计..............................................42.4复位电路设计..............................................52.5硬件原理图................................................53系统软件设计.................................................63.1主程序设计................................................63.2数据接收程序设计..........................................73.3数据转换程序设计..........................................83.4数据显示程序设计..........................................84系统模块仿真.................................................84.1proturs仿真介绍...........................................84.2系统模块电路设计..........................................94.3系统模块电路仿真..........................................94.4仿真结果分析.............................................11总结..........................................................13参考文献......................................................14附录A源程序清单.............................................151绪论数字电压表(DigitalVoltmeter)简称DVM,作为智能仪表的一种,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。1.1数字电压表的特点(1)显示清晰直观,读数准确。传统的模拟式仪表必须借助于指针和刻度盘进行读数,在读数过程中不可避免的会引入人为的测量误差。数字电压表则采用先进的数显技术,使测量结果一目了然,只要仪表不发生跳读现象,测量结果就是唯一的。新型数字电压表还增加了标志符显示功能,包括测量项目、符号单位和特殊符号、为解决DVM不能反映被测电压的连续变化过程以及变化趋势这一难题,一种“数字/模拟条图”仪表业已问世。“模拟图条”有双重含义:第一,被测量为模拟量;第二,利用条状图形来模拟被测量的大小及变化趋势。这类仪表将数字显示与高分辨率模拟条图显示集于一身,兼有DVM与模拟电压表之优点。智能数字电压表均带微处理器和标准接口,可配合计算机和打印机进行数据处理或自动打印,构成完整的测试系统。准确度是测量结果中系统误差与随机误差的综合。(2)分辨率高,测量范围宽。数字电压表在最低电压量程上末位1个字所代表的电压值,称为仪表的分辨力,它反映仪表灵敏度的高低。分辨力随显示位数的增加而提高。分辨率是指所能显示的最小数字(零除外)与最大数字的百分比。多量程DVM一般可测量0~1000V直流电压,配上高压探头还可测上万伏的高压。(3)扩展能力强。在数字电压表的基础上,还可扩展成各种通用及专用数字仪表、数字多用表(DMM)和智能仪表,以满足不同的需要。(4)测量速度快。数字电压表在每秒钟内对被测电压的测量次数,叫测量速率,单位是“次/S”。它主要取决于A/D转换器的转换速率,其倒数是测量周期。(5)输入阻抗高,集成度高,微功耗数字电压表具有很高的输入阻抗,通常为10MΩ~10000MΩ,最高可达1TΩ。并且新型数字电压表普遍采用CMOS大规模集成电路,整机功耗很低。(6)抗干扰能力强此外,其串模抑制比、共模抑制比各别可达100dB、80~120dB。高档DVM还采用数字滤波、浮地保护等先进技术,进一步提高了抗干扰能力,共模抑制比可达180dB1.2数字电压表原理框图一般数字电压表的组成框图如图(1)所示。输入电路一般由分压电路、具有高输入阻抗的源极跟随器和放大电路组成,其作用是对量程进行扩展和阻抗变换等;A/D转换器将被测电压转换成与之成比例的数字量;计数器完成对数字量的累计;显示电路作用是对计数结果进行寄存、译码并驱动显示器显示测量结果。随着集成电路技术的发展,现在已有多种专用的A/D转换芯片,如本设计中采用的CC7106,这些集成芯片往往具有A/D转换、计数、逻辑控制等多项功能,因此只需少量的外围电路即可构成数字电压表。图(1)数字电压表组成框图2硬件电路设计硬件电路设计主要包括:89C51单片机系统,A/D转换电路,显示电路。测量最大电压为5V,显示最大值为5.0V。2.1A/D转换电路本设计采用的是ADC0808,ADC0808精度为8位,它是CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑,因而有理由把它作为简单的“数据采集系统”。利用它可直接输入8个单端的模拟信号分时进行A/D转换,在多点巡回检测和过程控制、运动控制中应用十分广泛。输入电路A/D转换计数器显示逻辑控制电路时钟发生器其外部引脚图如图2所示。图2ADC0808/0809外部引脚图各个引脚的功能为:(1)IN0~IN7——8路模拟输入,通过3根地址译码线ADDA、ADDB、ADDC来选通一路。(2)D7~D0——A/D转换后的数据输出端,为三态可控输出,故可直接和微处理器数据线连接。8位排列顺序是D7为最高位,D0为最低位。(3)ADDA、ADDB、ADDC——模拟通道选择地址信号,ADDA为低位,ADDC为高位。(4)VR(+)、VR(-)——正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压。在单极性输入时,VR(+)=5V,VR(-)=0V;双极性输入时,VR(+)、VR(-)分别接正、负极性的参考电压。(5)ALE——地址锁存允许信号,高电平有效。当此信号有效时,A、B、C三位地址信号被锁存,译码选通对应模拟通道。在使用时,该信号常和START信号连在一起,以便同时锁存通道地址和启动A/D转换。(6)START——A/D转换启动信号,正脉冲有效。加于该端的脉冲的上升沿使逐次逼近寄存器清零,下降沿开始A/D转换。如正在进行转换时又接到新的启动脉冲,则原来的转换进程被中止,重新从头开始转换。(7)EOC——转换结束信号,高电平有效。该信号在A/D转换过程中为低电平,其余时间为高电平。该信号可作为被CPU查询的状态信号,也可作为对CPU的中断请求信号。在需要对某个模拟量不断采样、转换的情况下,EOC也可作为启动信号反馈接到START端,但在刚加电时需由外电路第一次启动。(8)OE——输出允许信号,高电平有效。当微处理器送出该信号时,ADC0808/0809的输出三态门被打开,使转换结果通过数据总线被读走。在中断工作方式下,该信号往往是CPU发出的中断请求响应信号。2.2显示电路设计本设计使用的是LED数码管,LED数码管显示器是由发光二极管显示字段的显示器件,也称为数码管。其外形结构如图所示。它由8个发光二极管构成,通过不同的组合可用来显示0-9、A-F及小数点“.”等字符。LED数码管提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口。显示电路图如图3。图3LED显示电路2.3振荡电路设计单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器(大小为1MHZ)和两只电容(电容和一般取30pF)。这样就构成一个稳定的自激振荡器。振荡电路脉冲经过二分频后作为系统的时钟信号,再在二分频的基础上三分频产生ALE信号,此时得到的信号时机器周期信号。振荡电路如图4所示:图4振荡电路图2.4复位电路设计复位操作有两种基本形式:一种是上电复位,另一种是按键复位。按键复位具有上电复位功能外,若要复位,只要按图中的RESET键,电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。按键复位电路图如图5所示。图5复位电路图2.5硬件原理图硬件原理图如图6所示图6硬件原理图3系统软件设计程序设计(Programming)是指设计、编制、调试程序的方法和过程。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。为了完成上述任务,在进行软件设计时,通常采用模块程序设计法。本系统软件采用模块化结构,由主程序﹑数据接收子程序、数据转换子程序、数据显示子程序构成(程序见附录A)。3.1主程序设计开始建立堆栈指针调用显示子程序图3.1主程序流程图3.2数据接收程序设计图3.2数据接收子程序流程图3.3数据转换程序设计初始化启动转换YEOC=0?N开始传送位OE并将数据存入50单元返回主程序初始化将接收的数据除以51商存入51单元将余数除以5将商存入52单元余数乘2存入53单元返回主程序图3.3数据转换子程序流程图3.4数据显示程序设计图3.4延时子程序流程图图3.5数据显示子程序流程图4系统仿真与调试本设计应用protues软件进行仿真。4.1proturs仿
本文标题:基于单片机的数字电压表设计
链接地址:https://www.777doc.com/doc-2574013 .html