基于单片机的数字电压表设计.docx
- 文档编号:25095483
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:28
- 大小:115.54KB
基于单片机的数字电压表设计.docx
《基于单片机的数字电压表设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字电压表设计.docx(28页珍藏版)》请在冰豆网上搜索。
基于单片机的数字电压表设计
基于单片机的数字电压表
摘要
随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最为普遍。
本设计在参阅了大量前人设计的数字电压表的基础上,利用单片机技术结合A/D转换芯片构建了一个直流数字电压表。
本文首先简要介绍了设计电压表的主要方式以及单片机系统的优势;然后详细介绍了直流数字电压表的设计流程,以及硬件系统和软件系统的设计,并给出了硬件电路的设计细节,包括各部分电路的走向、芯片的选择以及方案的可行性分析等。
近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,在多方面显示出了它的优势,值得进一步学习和研究。
但是仅单片机方面的知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。
关键词单片机(MCU)A/D转换ADC0809
DigitalVoltmeterBasedonMicrocontroller
ABSTRACT
Withthedevelopmentofelectronicscienceandtechnology,electronicmeasuringavastnumberofelectronicworkersmusthavethemeanstomeasuretheaccuracyandfunctionofincreasinglyhighrequirements,andvoltagemeasurementisobvious,becausethemeasuredvoltageismostcommon.ThedesignseealotofourpredecessorsinthedesignofdigitalvoltagemeteronthebasisofusingSCMtechnologywithA/DconverterchipConstructionofaDCvoltagedigitalform.ThispaperbrieflyintroducedthedesignvoltagemeterandthemainformoftheadvantagesofSCMsystemandthendescribedindetailthenumberofDCvoltagemeterdesignprocesses,systemsandsoftwareandhardwaresystemdesign,andgivesdetailsofthehardwarecircuitdesign,Includingthedirectionofthecircuit,chipandthechoiceofthefeasibilityanalysis.
Inrecentyears,withtherapiddevelopmentofscienceandtechnology,SCMapplicationsarecontinuallydeepening,inmanywaystodisplayitsadvantages,itisworthfurtherstudyandresearch.However,onlytheknowledgeSCMisnotenough,thestructureshouldbebasedonspecifichardwareandapplication-specificcharacteristicsofthetargetsoftwarecombination,tobeperfect.
KeywordsMicrocontroller(MCU),A/Dconverter,ADC0809
目录
摘要I
ABSTRACTII
1引言1
2系统原理及基本框图3
3硬件电路设计4
3.1输入电路4
3.2单片机芯片选择4
3.3A/D转换器与单片机接口电路8
3.3.1A/D转换器芯片选择8
3.3.2A/D转换电路9
3.3.3ADC0809A/D转换器9
3.4LED数码管12
3.4.1性能特点12
3.4.2性能简易检测13
3.4.3使用注意事项13
3.5通讯模块14
3.6报警电路的设计14
4软件设计及流程图15
4.1程序设计内容15
4.2程序流程框图15
4.3C51程序(见附录3)16
4.4通讯模块程序设计16
结束语18
致谢20
参考文献21
附录一22
附录二25
1引言
在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。
而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。
数字电压表(DigitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流或交流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
由于数字式仪器具有读数准确方便、精度高、误差小、灵敏度高和分辨率高、测量速度快等特点而倍受青睐。
本设计从各个角度分析了由单片机组成的数字电压表的设计过程及各部分电路的组成及其原理,并且分析了程序如何驱动单片机进而使系统运行起来的原理及方法。
本设计主要分为两部分:
硬件电路及软件程序。
而硬件电路又大体可分为单片机系统电路、分压电路、A/D转换电路、LED显示电路及语音报读电路,各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用C语言编程,利用Keil软件对其编译和仿真,其流程框图将会在软件设计部分给出。
以下将对数字电压表的发展及特点进行论述。
数字电压表自从一九五二年问世以来,随着电子技术的飞跃发展,特别是目前,作为测量仪表、模拟指示仪表的数字化以及自动测量的系统,而得到了很大的发展。
一、数字仪表的发展趋势
采用新技术、新工艺,由LSI和VLSI构成的新型数字仪表及高档智能仪器的大量问世,标志着电子仪器领域的一场革命,也开创了现代电子测量技术的先河。
新型数字仪表的发展主要有四个方向:
1.广泛采用新技术,不断开发新产品
2.向模块化发展
新一代数字仪表正朝着标准模块化的方向发展。
预计在不久的将来,许多数字仪表将由标准化、通用化、系列化的模块所构成,给电路设计和安装调试、维修带来极大方便。
表面安装技术(SMT)和表面安装元器件(SMD)将获得普遍应用。
这项技术被誉为世界电子工艺技术的一项重要突破。
所谓表面安装是将微型化的表面安装集成电路(SMIC)和表面安装元件,用粘贴工艺直接安装在印刷板上,再用波峰焊接机焊接,由此取代传统的打孔焊接工艺,使印刷板安装密度大为增加,可靠性得到明显提高。
3.多重显示仪表
为彻底解决数字仪表不便于观察连续变化量的技术难题,“数字/模拟条图”双显示仪表已成为国际流行款式,它兼有数字仪表准确度高、模拟式仪表便于观察被测量的变化过程及变化趋势的两大优点。
模拟条图大致分成三类:
①液晶(LCD)条图,呈断续的条状,这种显示器的分辨力高、微功耗,体积小,低压驱动,适于电池供电的小型化仪表。
②等离子体(PDP)光柱显示器,其优点是自身发光,亮度高,显示清晰,观察距离远,分辨力较高,缺点是驱动电压高,耗电较大。
③LED光柱,它是又多只发光二极管排列而成。
这种显示器的亮度高,成本低,但象素尺寸较大,功耗高,驱动电路复杂。
4.操作简单化
二、数字电压表的特点
1.显示清晰直观,读数准确
传统的模拟式仪表必须借助于指针和刻度盘进行读数,在读数过程中不可避免的会引入人为的测量误差。
数字电压表则采用先进的数显技术,使测量结果一目了然,只要仪表不发生跳读现象,测量结果就是唯一的。
新型数字电压表还增加了标志符显示功能,包括测量项目、符号单位和特殊符号、为解决DVM不能反映被测电压的连续变化过程以及变化趋势这一难题,一种“数字/模拟条图”仪表业已问世。
“模拟图条”有双重含义:
第一,被测量为模拟量;第二,利用条状图形来模拟被测量的大小及变化趋势。
这类仪表将数字显示与高分辨率模拟条图显示集于一身,兼有DVM与模拟电压表之优点。
智能数字电压表均带微处理器和标准接口,可配合计算机和打印机进行数据处理或自动打印,构成完整的测试系统。
准确度是测量结果中系统误差与随机误差的综合。
2.分辨率高,测量范围宽
数字电压表在最低电压量程上末位1个字所代表的电压值,称为仪表的分辨力,它反映仪表灵敏度的高低。
分辨力随显示位数的增加而提高。
分辨率是指所能显示的最小数字(零除外)与最大数字的百分比。
多量程DVM一般可测量0~1000V直流电压,配上高压探头还可测上万伏的高压。
3.扩展能力强
在数字电压表的基础上,还可扩展成各种通用及专用数字仪表、数字多用表(DMM)和智能仪表,以满足不同的需要。
4.测量速度快
数字电压表在每秒钟内对被测电压的测量次数,叫测量速率,单位是“次/S”。
它主要取决于A/D转换器的转换速率,其倒数是测量周期。
5.输入阻抗高,集成度高,微功耗
数字电压表具有很高的输入阻抗,通常为10MΩ~10000MΩ,最高可达1TΩ。
并且新型数字电压表普遍采用CMOS大规模集成电路,整机功耗很低。
6.抗干扰能力强
5位以下的DVM大多采用双积分式A/D转换器,其串模抑制比、共模抑制比各别可达100dB、80~120dB。
高档DVM还采用数字滤波、浮地保护等先进技术,进一步提高了抗干扰能力,共模抑制比可达180dB。
2系统原理及基本框图
如图1所示,模拟电压经过档位切换到不同的分压电路衰减后,经隔离干扰送到A/D转换器进行A/D转换,然后送到单片机中进行数据处理。
处理后的数据送到LED中显示,同时通过串行通讯与上位机通信。
图1系统基本方框图
3硬件电路设计
3.1输入电路
图2量程切换开关图3衰减输入电路
输入电路的作用是把不同量程的被测的电压规范到A/D转换器所要求的电压值。
智能化数字电压表所采用的单片逐次逼近式A/D转换器ADC0809,它要求输入电压0-5V。
本仪表设计是0-500V电压,灵敏度高所以可以不加前置放大器,只需衰减器,如图3所示9M、900K、90K、和10K电阻构成1/10、1/100、1/1000的衰减器。
衰减输入电路可由开关来选择不同的衰减率,从而切换档位。
为了能让CPU自动识别档位,还要有图2的硬件连接。
3.2单片机芯片选择
单片机采用MCS-51系列单片机。
由ATMEL公司生产的AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
AT89S52具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
而且,它还具有一个看门狗(WDT)定时/计数器,如果程序没有正常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用整个系统断电,从而保护你的硬件电路。
AT89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
单片机选用的ATMEL公司的AT89S52,如图4所示。
该芯片具有低功耗、高性能的特点,是采用CMOS工艺的8位单片机,与AT89C51完全兼容。
AT89S52还有以下主要特点:
①采用了ATMEL公司的高密度、非易失性存储器(NV-SRAM)技术;
②其片内具有256字节RAM,8KB的可在线编程(ISP)FLASH存储器;
③有2种低功耗节电工作方式:
空闲模式和掉电模式
④片内含有一个看门狗定时器(WDT),WDT包含一个14位计数器和看门狗定时器复位寄存器(WDTRST),只要对WDTRST按顺序先写入01EH,后写入0E1H,WDT便启动,当CPU由于扰动而使程序陷入死循环或“跑飞”状态时,WDT即可有效地使系统复位,提高了系统的抗干扰性能。
图4AT89S52引脚图
单片机管脚说明:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。
当P0口的管脚第一次写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口也可作为AT89S52的一些特殊功能口,如下表所示:
管脚
备选功能
P3.0RXD
(串行输入口)
P3.1TXD
(串行输出口)
P3.2/INT0
(外部中断0)
P3.3/INT1
(外部中断1)
P3.4T0
(记时器0外部输入)
P3.5T1
(记时器1外部输入)
P3.6/WR
(外部数据存储器写选通)
P3.7/RD
(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
AT89S52的引脚图如下图所示:
图5AT89S52的引脚图
3.3A/D转换器与单片机接口电路
3.3.1A/D转换器芯片选择
A/D转换器是模拟量输入通道中的一个环节,单片机通过A/D转换器把输入模拟量变成数字量再处理。
随着大规模集成电路的发展,目前不同厂家已经生产出了多种型号的A/D转换器,以满足不同应用场合的需要。
如果按照转换原理划分,主要有3种类型,即双积分式A/D转换器、逐次逼近式A/D转换器和并行式A/D转换器。
目前最常用的是双积分和逐次逼近式。
双积分式A/D转换器具有抗干扰能力强、转换精度高、价格便宜等优点,比如ICL71XX系列等,它们通常带有自动较零、七段码输出等功能。
与双积分相比,逐次逼近式A/D转换器的转换速度更快,而且精度更高,比如ADC0808、ADC0809等,它们通常具有8路模拟选通开关及地址译码、锁存电路等,它们可以与单片机系统连接,将数字量送单片机进行分析和显示。
本次设计采用ADC0809逐次逼近式A/D转换器。
3.3.2A/D转换电路
A/D转换器的转换精度对测量电路极其重要,它的参数关系到测量电路性能。
本设计采用逐次逼近式A/D转换器。
3.3.3ADC0809A/D转换器
ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
(1)ADC0809的内部逻辑结构
图6ADC0809的内部逻辑结构
由上图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。
多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。
三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
(2)引脚结构
图7ADC0809
IN0-IN7:
8条模拟量输入通道。
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。
地址输入和控制线:
4条。
ALE为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。
A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。
通道选择表如下表所示。
C
B
A
选择的通道
0
0
0
IN0
0
0
1
IN1
0
1
0
IN2
0
1
1
IN3
1
0
0
IN4
1
0
1
IN5
1
1
0
IN6
1
1
1
IN7
数字量输出及控制线:
11条。
ST为转换启动信号。
当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。
EOC为转换结束信号。
当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。
OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。
OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。
D7-D0为数字量输出线。
CLK为时钟输入信号线。
因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,
VREF(+),VREF(-)为参考电压输入。
2.ADC0809应用说明
(1)ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。
(2)初始化时,使ST和OE信号全为低电平。
(3)送要转换的哪一通道的地址到A,B,C端口上。
(4)在ST端给出一个至少有100ns宽的正脉冲信号。
(5)是否转换完毕,我们根据EOC信号来判断。
(6)当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。
ADC0809采用双列直插式封装,共有28条引脚,各管脚的功能分四组简述如下:
1、模拟信号输入IN0~IN7:
IN0-IN7为八路模拟电压输入线,加在模拟开关上,工作时采用时分割的方式,轮流进行A/D转换。
2、地址输入和控制线:
地址输入和控制线共4条,其中ADDA、ADDB和ADDC为地址输入线,用于选择IN0-IN7上哪一路模拟电压送给比较器进行A/D转换。
ALE为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,ADDA、ADDB和ADDC三条地址线上地址信号得以锁存,经译码器控制八路模拟开关通路工作。
3、数字量输出及控制线(11条):
START为“启动脉冲”输入线,上升沿清零,下降沿启动ADC0809工作。
EOC为转换结束输出线,该线高电平表示AD转换已结束,数字量已锁入“三态输出锁存器”。
D0-D7为数字量输出线,D7为最高位。
ENABLE为“输出允许”线,高电平时能使D0-D7引脚上输出转换后的数字量。
4、电源线及其他(5条):
CLOCK为时钟输入线,用于为ADC0809提供逐次比较所需,一般为640kHz时钟脉冲。
Vcc为+5V电源输入线,GND为地线。
+VREF和-VREF为参考电压输入线,用于给电阻网络供给标准电压。
+VREF常和VDD相连,-VREF常接地。
ADC0809芯片性能特点:
是一个逐次逼近型的A/D转换器,外部供给基准电压;单通道转换时间116us;分辨率为8位,带有三态输出锁存器,转换结束时,可由CPU打开三态门,读出8位的转换结果;有8个模拟量的输入端,可引入8路待转换的模拟量。
3.4LED数码管
3.4.1性能特点
LED数码管的主要特点如下:
(1)能在低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。
(2)发光响应时间极短(<0.1µs),高频特性好,单色性好,亮度高。
(3)体积小,重量轻,抗冲击性能好。
(4)寿命长,使用寿命在10万小时以上,甚至可达100万小时。
成本低。
因此它被广泛用作数字仪器仪表、数控装置、计算机的数显器件。
3.4.2性能简易检测
LED数码管外观要求颜色均匀、无局部变色及无气泡等,在业余条件下可用干电池作进一步检查。
现以共阴数码管为例介绍检查方法。
将3伏干电池负极引出线固定接触在LED数码管的公共负极端上,电池正极引出线依次移动接触笔画的正极端。
这一根引出线接触到某一笔画的正极端时,那一笔画就应显示出来。
用这种简单的方法就可检查出数码管是否有断笔(某笔画不能显示),连笔(某些笔画连在一起),并且可相对比较出不
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 数字 电压表 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)