多路数字电压表的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8.3 多路数字电压表的设计
数字电压表是电子测量中经常用到的电子器件,传统的指针式电压表功能单一、精度低、不能满足数字时代的要求。而采用单片机的数字电压表精度高、抗干扰能力强、可扩展性强、使用方便,在日常生活中广泛应用。
8.3.1 多路数字电压表的功能要求
多路数字电压表的功能要求如下: (1) 输入电压为8路。
(2) 电压值的范畴为0~5V 。
(3) 测量的最小分辨率为0.019V ,测量误差为0.02V 。。
(4) 能通过显示器显示通道和通道电压,有效位数为小数点后两位
8.3.2 多路数字电压表的总体设计
多路数字电压表的总体结构如图8.9所示,处理过程如下:先用A/D 转换器对各路电压值进行采样,得到相应的数字量,再按数字量与模拟量成正比关系运算得到对应的模拟电压值,然后把模拟值通过显示器显示出来,另外可以通过按键选择通道。
图8.9 多路数字电压表的总体结构图
根据系统的功能要求,控制系统采用AT89C52单片机,A/D 转换器采用ADC0808(0809)。ADC0808(0809)是8位的A/D 转换器。当输入电压为5.00V 时,输出的数据值为255(0FFH),因此最大分辨率为0.0196V(5/255)。ADC0808(0809)具有8路模拟量输入端口,通过3位地址输入端能从8路中选择一路进行转换。如每隔一段时间依次轮流改变3位地址输入端的地址,就能依次对8路输入电压进行测量。显示器采用LCD 显示器,显示效果好。按键可只设定一个,用于选择显示的当前通道。
8.3.3 多路数字电压表硬件电路
多路数字电压表具体硬件电路如图8.10所示。
51单片机
时钟电路
复位电路
LCD 按键
ADC0808
P 17P 16P 15P17
P16P15P07P 07P06P05P04P03P02P01P00P 00P 01P 02P 03P 04P 05P 06P 07
P 00P 01P 02P 03P 04P 05P 06P27
ST P23P26P21P22P20P24P25ADDC ADDB ADDA ADDA ADDB ADDC ST XTAL2
18
XTAL1
19
ALE 30EA
31
PSEN 29RST
9
P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.0/T21P1.1/T2EX 2P1.23P1.34P1.45P1.56P1.67P1.78
P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD
17
P3.6/WR 16
P3.5/T115P2.7/A1528
P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1
AT89C52
D 7
14
D 613D 512D 411D 310D 29D 18D 0
7E 6
R W 5R S 4V S S 1V D D 2V E E
3
LCD1
LM016L
R1
10k
234567891
RP1
RESPACK-8
OUT121ADD B 24ADD A
25ADD C 23VREF(+)12VREF(-)16IN31IN42IN53IN64IN75START 6OUT58EOC 7OE
9
CLOCK 10
OUT220OUT714OUT615OUT817OUT418OUT319IN228IN127IN0
26
ALE 22U2
ADC0808
X1
CRYSTAL
C1
1nF
C2
1nF
C3
1nF
R4
200
56%
RV1
1k
50%
RV2
1k
图8.10 多路数字电压表的电路原理图
其中,ADC0808(0809) 的数据线D0~D7与AT89C52的P2口相连,地址输入端
ADDA 、ADDB 、ADDC 与AT89C52的P3口的低3位P3.0、P3.1、P3.2相连,地址锁存控制端ALE 和启动信号START 连接在一起与P3.7相连,数据输出允许控制端OE 与P3.6相连,转换结束信号EOC 与P1.3相连。ADC0809的时钟信号输入端CLOCK 与P1.4相连,而P1.4由定时/计数器0控制,每10s 取反一次,则CLOCK 的时钟周期为20s ,频率为50KHz ,满足ADC0808(0809)的时钟要求。参考电压VREF+接+5V 电源,参考电压VREF-接地,则当输入电压为5.00V 时,输出的数据值为255(0FFH),当输入电压为0V 时,输出的数据值为0(00H),最大分辨率为0.0196V(5/255)。
显示器LCD1602的数据线与89C 52的P0口相连,RS 与P1.7相连,R/W 与P1.6相连,E 端与P1.5相连。按键只设定了一个K1,与AT89C52的P1.0,用于进行通道选择,当按下一次,通道加1,显示下一个通道。
8.3.4 多路数字电压表软件程序
多路数字电压表系统软件程序由主程序、A/D 转换子程序和显示驱动程序组成,这里只介绍主程序、A/D 转换子程序。
1.主程序
主程序流程如图8.11所示。首先是对定时计数器和LCD 初始化,在LCD 上显示提示信息,然后进入循环,在循环中依次为:调用A/D 转换子程序对8个通道转换一次,判