文档介绍:1引言 1
2硬件选择和电路设计 2
2
A/D 转换器 ADC0808 2
AT89C51 3
5
6
6
6
7
7
8
3软件设计与说明 8
Keil C51 介绍 9
10
11
12
4系统的调试及仿真 12
系统的调试 12
13
13
13
5总结 18
参考文献 19
附录 20
1引言
单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运 算,逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM), 只读程序存储器(ROM),输入输出电路(I/O 口),可能还包括定时计数器,串行通信 口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转 换器及A/D转换器等电路集成到一块单块芯片上,构成一个最小然而完善的计算机 系统。这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的 任务。它是一门实践性很强的技术,不仅需要掌握硬件电路没计,同时要求学习者 掌握一门编程语言,汇编或者C语言等,因此给广大初学者的学习带来了很大的难 度。
数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连 续的模拟量(直流或交流输入电压)转换成不连续、离散的数字形式并加以显示的 仪表。由于数字式仪器具有读数准确方便、精度高、误差小、灵敏度高和分辨率高、 测量速度快等特点而倍受青睐。
本设计从硬件的选择到电路和程序的设计,中间结合一系列的分析和说明,从 原理到仿真,描述了数字电压表设计的整个流程和其功能。
2硬件选择和电路设计
A/D 转换器 ADC0808
IN0〜IN7:为模拟量的输入口,我们选取IN3 口为入口,外接可变电阻,通过 改变阻值来控制模拟量的输入。
A、B、C: 3位地址输入,2个地址输入端的不同组合选择八路模拟量输入。
ALE:地址锁存启动信号,在ALE的上升沿,将A、B、C上的通道地址锁存到 内部的地址锁存器。
D0〜D7:八位数据输出线,A/D转换结果由这8根线传送给单片机。
OE:允许输出信号。当OE=1时,即为高电平,允许输出锁存器输出数据。
START:启动信号输入端,START为正脉冲,其上升沿清除ADC0808的内部 的各寄存器,其下降沿启动A/D开始转换。
EOC:转换完成信号,当EOC±升为高电平时,表明内部A/D转换已完成。
CLK:时钟输入信号,选用频率500KHZo
IN0
CLOCK <
IN1
START
IN2
IN3
EOC
IN4
IN5
OUT1
IN6
OUT2
IN7
OUT3
OUT4
ADDA
OUTS
ADD B
OUT6
ADD C
OUT7
ALE
OUT8
VREF(+)
VREF(-)
OE
12
■6 7812345 -5432 •2 2 2 -2222
10
6
1
21
~8~17
ADC0808 <TEXT>'
图2-1 ADC0808管脚图
多路模拟开关可选通8路模拟通道,允许8路模拟量分时输入,并共用一个 A/D转换器进行转换。地址锁存与译码电路完成对A、B、C三个地址位进行锁存 与译码。管脚图如图2-1所示。
VCC:供电电压。
GND:接地。
P0 口: P0 口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL门电流。当 P1 口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器, 它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当 FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1 口: P1 口是一个内部提供上拉电阻的8位双向I/O 口,P1 口缓冲器能接收 输出4TTL 11电流。P1 口管脚写入1后,被内部上拉为高,可用作输入,P1 口被 外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和 校验时,P1 口作为第八位地址接收。
P2 口: P2 口为一个内部上拉电阻的8位双向I/O 口,P2 口缓冲器可接收,输 出4个TTL门电流,当P2 口被写T时,其管脚被内部上拉电阻拉高,且作为输入。 并因