简易数字电压表文档格式.docx
《简易数字电压表文档格式.docx》由会员分享,可在线阅读,更多相关《简易数字电压表文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
![简易数字电压表文档格式.docx](https://file1.bdocx.com/fileroot1/2022-10/12/c4fd56f3-df1f-4ba3-8ea4-a1722f44db89/c4fd56f3-df1f-4ba3-8ea4-a1722f44db891.gif)
AD转换芯片ADC0808将被测
量电压输入端所采集到的模拟电压信号转换成相应的数字信号。
然后再通过对单片机AT89SC524行软件编程,使单片机按规定的时序采集这些数字信号,通过一定的算法计算算出被测量电压值,最后驱动数码管进行电压显示。
简易数字电压表可以测量范围0至5伏范围内的8路输入电压值,并在4位
LED数码管上轮流显示或选择显示。
其测量最小分辨率为0.02V。
本系统主要包
括四大模块:
数据采集模块、控制模块、显示模块、A/D转换模块。
一、总体设计
因ADC0809SProtues中无法进行仿真,因此选用ADC0808弋替ADC0809然后选用单片机AT89C52和A/D转换芯片ADC0808实现电压的转换和控制,用四位数码管显示出最后的转换电压结果。
将数据采集接口电路输入电压传入ADC080数模转换元件,经转换后通过OUT1至OUT8与单片机P0口连接,把转换完的模拟信号以数字信号的信号的形式传给单片机,信号经过单片机处理从LED数码显示管显示。
P3实现通道选择,P2口接数码管位选,P1接数码管,实现数据的动态显示。
、硬件设计
1、A/D转换电路
A/D转换的作用是进行模数转换,把接收到的模拟信号转换成数字信号输出。
在选择A/D转换时,先要确定A/D转换精度、转换速度以及转换位数等,A/D转换的位数确定与整个测量控制系统所需测量控制的范围和精度有关,在数字电压表设计中采用了8位A/D转换器ADC0808。
OEVREF(->
VREF(+>
1&
12
14
15
8
20
囂席UT4UT3席
ALEAODCADD&
ADDA
22
23
25
fi
10*
EOC
START
>
CLOCK
IN7
IN6
IN5iNi
IN3
IN2
IN1
IND
二
i
28
U2
ADCO8O0
图1ADC0808
ADC0808是采样分辨率为8位的,以逐次逼近原理进行模/数转换的器件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
ADC0808是ADC0809勺简化版本,功能基本相同。
一般在硬件仿真时采用ADC0808S行A/D转换,实际使用时采用ADC0809S行A/D转换。
引脚功能(外部特性)
ADC0808芯片有28条引脚,采用双列直插式封装,如右图所示。
各引脚功能如下:
1〜5和26〜28(IN0〜IN7):
8路模拟量输入端。
8、14、15和17〜21:
8位数字量输出端。
22(ALE):
地址锁存允许信号,输入,高电平有效。
A,B和C为地址输入线,用于选通INO—IN7上的一路模拟量输入。
6(START:
A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)
使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)
7(EOC:
A/D转换结束信号,输出,当A/D转换结束时,此端输出一个
高电平(转换期间一直为低电平)。
9(OE:
数据输出允许信号,输入,高电平有效。
当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
10(CLK:
时钟脉冲输入端。
要求时钟频率不高于640KHZ
11(Vcc):
主电源输入端。
12(VREF(+))和16(VREF(-)):
参考电压输入端
13(GND:
地。
23〜25(ADDAADDBADD)3位地址输入线,用于选通8路模拟输入中的
一路.
ADC0808应用说明
(1).ADC0808内部带有输出锁存器,可以与AT89S5仲片机直接相连。
(2).初始化时,使ST和OE信号全为低电平。
(3).送要转换的哪一通道的地址到A,B,C端口上。
(4).在ST端给出一个至少有100ns宽的正脉冲信号。
(5).是否转换完毕,我们根据EOC言号来判断。
(6).当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。
2、晶振电路
图2晶振电路
电路中的晶振即石英晶体震荡器。
由于石英晶体震荡器具有非常好的频率稳定性和抗外界干扰的能力,所以,石英晶体震荡器是用来产生基准频率的。
通过基准频率来控制电路中的频率的准确性。
同时,它还可以产生振荡电流,向单片
机发出时钟信号。
晶振电路用于产生单片机工作所需的时钟信号,使用晶体震荡器时,c1,c2
取值20~40PF,使用陶瓷震荡器时c1,c2取值30~50PF
XTAL1接外部晶体的一个引脚,XTAL2接外晶体的另一端。
在单片机内部,接至上述振荡器的反相放大器的输出端。
采用外部振荡器时,对HMO单片机,
该引脚接外部振。
在石英晶体的两个管脚加交变电场时,它将会产生一定频率的机械变形,而这种机械振动又会产生交变电场,上述物理现象称为压电效应。
一般情况下,无论是机械振动的振幅,还是交变电场的振幅都非常小。
但是,当交变电场的频率为某一特定值时,振幅骤然增大,产生共振,称之为压电振荡。
这一特定频率就是石英晶体的固有频率,也称谐振频率。
石英晶振起振后要能在XTAL2线上输出一个3V左右的正弦波,以便使MCS-52片内的OSC电路按石英晶振相同频率自激振荡。
通常,OSC的输出时钟频率fOSC为0.5MHz-16MHz典型值为12MHz或者11.0592MHz电容C1和C2可以帮助起振,典型值为30pF,调节它们可以达到微调fOSC的目的。
3、复位电路
复位电路的主要功能是使单片机进行初始化,在初始化的过程中需要在复位引脚上加大于2个机器周期的高电平。
复位后的单片机地址初始化为0000H,然后继续从0000H单元开始执行程序。
在复位电路中提供复位信号,等到系统电源稳定后,再撤销复位信号。
但是为了在复位按键稳定的前提下,电
源稳定后还要经一定的延时才撤销复位信号,以防在按键过程中引起的抖动而影响复位。
其中,R1选择1k,C3选择22pF。
4、AT89C52单片机介绍
图4AT89C52
AT89C52是一种低电压、高性能CMOS8位单片机,片内含有8KB的可反复写的只读程序存储器和256KB的随机存取数据存储器(RAM,器件采用ATMEL公司高密度、非易失性存储器技术制造兼容MCS-51产品指令系统。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和Flash存储单元,使得AT89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
a.主电源引脚
Vss-(20脚):
地线
Vcc-(40脚):
+5V电源
b.外接晶振或外部振荡器引脚
XTAL1-(19脚):
当采用芯片内部时钟信号时,接外部晶振的一个引脚;
当采用外部时钟信号时,此脚应接地。
XTAL2-(18脚):
当采用外部时钟信号时,外部信号由此脚输入。
c.控制、选通或电源复用引脚
RST-(9脚):
复位信号输入;
Vcc掉电后,此脚可接上备用电源,在低功耗条件下保持内部RAM中的数据。
ALE-(30脚):
ALE即允许地址锁存信号输出,当单片机访问外部存储器时该脚的输出信号用于锁存P0的低8位地址,其输出的频率为时钟振荡频率的1/6。
PRO功编程脉冲输入端,当选用8751单片机时,由此脚输入编程脉冲。
PSEN-(29脚):
访问外部程序存储器选通信号,低电平有效,用于实现外部程序存储器的读操作。
EA-(31脚):
EA为访问内部或外部程序存储器选择信号,EA=0单片机只
访问外部程序存储器,故对8031此脚只能接地;
E心1,单片机访问内部程序存储器,固对8051和8751此脚应接高电平,但若程序指针PC值超过4KBQFFFH)范围,单片机将自动访问外部程序存储器。
d.多功能I/O引脚
P0口-(32〜39脚):
P0数据/地址复用总线端口。
P1口-(1〜8脚):
P1静态通用端口。
P2口-(21〜28脚):
P2动态端口。
P3口-(10〜17脚):
P3双功能静态端口。
除作I/O端口外,它还提供特殊的第二功能,其具体含义为:
P3.0-(10脚)RXD串行数据接收端。
P3.1-(11脚)TXD:
串行数据发送端。
P3.2-(12脚)INT0:
外部中断0请求端,低电平有效。
P3.3-(13脚)INT1:
外部中断1请求端,低电平有效。
5、显示电路
*=CCDEFGOP1^3*
图5显示电路
数码管有共阴极和共阳极两种结构规格,。
电阻为外接。
共阴极数码管的发光二极管阴极共地,当某发光二极管的阳极为高电平时,二极管点亮;
共阳极数码管的发光二极管是阳极,并接高电平,对于需点亮的发光二极管将其阴极接低电平即可。
三、软件设计
1、主程序流程图
主程序一般包括:
主程序的起始地址,中断服务程序的起始地址、有关内存单元及相关部件的初始化和一些子程序调用等。
图6主程序流程图
2、A/D转换子程序流程图
f>
开始
■
►
3
t
开始数模转换
取得转换结果
■
显示转化结果
结束
图7A/D转换流程图
系统设置好后,单片机扫描转换结束管脚P2.6的输入电平状态,当输入为高电平则转换完成,将装换的数值转换并显示输出。
若输入为低电平,则继续扫描。
A/D转换程序的功能是采集数据,在整个系统设计中占有很高的地位。
当
四、调试说明
软件调试的主要任务是排查错误,错误主要包括逻辑和功能错误,这些错误有些是显性的,而有些是隐形的,可以通过仿真开发系统发现逐步改正。
Proteus软件可以对基于微控制器的设计连同所有的周围电子器件一起仿真,用户甚至可
以实时采用诸如LED/LCD键盘、RS232终端等动态外设模型来对设计进行交互
仿真。
Proteus支持的微处理芯片包括8051系列、AVR系列、PIC系列、HC11系
列及Z80等等。
Proteus可以完成单片机系统原理图电路绘制、PCB设计,更为
显著点的特点是可以与uVisions3IDE工具软件结合进行编程仿真调试
调试时,首先在keil中编译程序,若程序没有错误,则生成hex文件,用于后续将hex文件加载入AT89C52中进行仿真。
仿真结果:
图8仿真结果图
五、使用说明
基于单片机的数字电压表使用性强、结构简单、成本低、外接元件少。
在实际应用工作应能好,测量电压准确,精度高。
系统功能、指标达到了课题的预期要求、系统在硬件设计上充分考虑了可扩展性,经过一定的改造,可以增加功能。
我的设计主要实现了简易数字电压表测量一路电压的功能,详