A/D转换
A/D转换器的位数与被测量对象的精度有关。一般情况下,电路设计中A/D转换器的分辨率要高于被测量对象的信号最低分辨率。假如要测量一级电源电压,其电压的输出范围是0—10V,如要求精确到0.1V,即分辨率为0.1/10=0.01=1%。实际中选择8位的A/D转换器便可满足要求,8位A/D转换器的分辨率为1/256=0.4%。并行接口的A/D芯片目前仍占多数,流行的有ADC0804、ADC0809、AD574等等。本系统使用ADC0804来完成模拟信号向数字信号的转换。
ADC0804主要技术指标如下: (1) 高阻抗状态输出
(2)分辨率:8 位(0~255) (3) 存取时间:135 ms (4) 转换时间:100 ms (5) 总误差:-1~+1LSB
(6) 工作温度:ADC0804C为0度~70度;ADC0804L为-40 度~85 度 (7) 模拟输入电压范围:0V~5V (8) 参考电压:2.5V (9) 工作电压:5V (10) 输出为三态结构
ADC0804芯片介绍
图—4:ADC0804规格及引脚分布图
本设计采用的A/D芯片为ADC0804,它是CMOS 8位单通道逐次渐近型的模/数转换器,其规格及引脚图如图—4所示,各个引脚的大致功能如下:
/CS:芯片片选信号,低电平有效,即/CS=0,该芯片才能正常工作,在外接多个ADC0804芯片时,该信号可以作为选择地址使用,通过不同的地址信号使能不同的ADC0804芯片,从而可以实现多个ADC通道的分时复用。
/WR:启动ADC0804进行ADC采样,该信号低电平有效,即/WR信号由高电平变成低电平时,触发一次ADC转换。
/RD:低电平有效,即/RD=0时,可以通过数据端口DB0~DB7读出本次的采样结果。
UIN(+)和UIN(-):模拟电压输入端,模拟电压输入接UIN(+)端,UIN(-)端接地。双边输入时UIN(+)、UIN(-)分别接模拟电压信号的正端和负端。当输入的模拟电压信号存在“零点漂移电压”时,可在UIN(-)接一等值的零点补偿电压,变换时将自动从UIN(+)中减去这一电压。
VREF/2:参考电压接入引脚,该引脚可外接电压也可悬空,若外界电压,则ADC的参考电压为该外界电压的两倍,如不外接,则Vref与Vcc共用电源电压,此时ADC的参考电压即为电源电压Vcc的值。
CLKR和CLKIN:外接RC电路产生模数转换器所需的时钟信号,时钟频率CLK = 1/1.1RC,一般要求频率范围100KHz~1.28MHz。
AGND和DGND:分别接模拟地和数字地。
/INT:中断请求信号输出引脚,该引脚低电平有效,当一次A/D转换完成后, 将引起/INT=0,实际应用时,该引脚应与微处理器的外部中断输入引脚相连(如51单片机的INT0,INT1脚),当产生/INT信号有效时,还需等待/RD=0才能正确读出A/D转换结果,若ADC0804单独使用,则可以将/INT引脚悬空。 DB0~DB7:输出A/D转换后的8位二进制结果。
十六进制 F E D C B A 9 8 7 6 5 图—5:ADC0804转换器的工作时序
表—1:ADC0804模拟转数字对照表 二进制码 与满刻度的比率 相对电压值VREF=2.560V 高四位字节 低四位字节 高四位电压 低四位电压 1111 15/16 15/256 4.800 0.300 1110 14/16 14/256 4.480 0.280 1101 13/16 13/256 4.160 0.260 1100 12/16 12/256 3.840 0.240 1011 11/16 11/256 3.520 0.220 1010 10/16 10/256 3.200 0.200 1001 9/16 9/256 2.880 0.180 1000 8/16 8/256 2.560 0.160 0111 7/16 7/256 2.240 0.140 0110 6/16 6/256 1.920 0.120 0101 5/16 5/256 1.600 0.100 4 0100 4/16 4/256 1.280 0.080 3 0011 3/16 3/256 0.960 0.060 2 0010 2/16 2/256 0.640 0.040 1 0001 1/16 1/256 0.320 0.020 0 0000 0 0 例:VIN=3V.由上表可知2.880+0.120=3V 为10010110=96H
单片机的选型
本课题设计的温度控制系统主控制芯片选型为STC89C52单片机,其特点如下: STC89C52单片机简介
目前,51系列单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的语音接口,构成具有合成语音输出能力的综合应用系统,以增强人机对话的功能。STC89C52单片机是深圳宏晶科技有限公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。每一个单片机包括:一个8位的微型处理器CPU;一个512K的片内数据存储器RAM;4K片内程序存储器;四个8位并行的I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/记数器;五个中断源的中断控制系统;一个全双工UART的串行I/O口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率是12MHZ。以上各个部分通过内部总线相连接。 STC89C52单片机时序
STC89C52单片机的一个执器周期由6个状态(s1—s6)组成,每个状态又持续2个震荡周期,分为P1和P2两个节拍。这样,一个机器周期由12个振荡周期组成。若采用12MHz的晶体振荡器,则每个机器周期为1us,每个状态周期为1/6us;在一数情况下,算术和逻辑操作发生在N期间,而内部寄存器到寄存器的传输发生在P2期间。对于单周期指令,当指令操作码读人指令寄存器时,使从S1P2开始执行指令。如果是双字节指令,则在同一机器周期的s4读人第二字节。若为单字节指令,则在51期间仍进行读,但所读入的字节操作码被忽略,且程序计数据也不加1。在加结束时完成指令操作。多数STC89C52指令周期为1—2个机器周期,只有乘法和除法指令需要两个以上机器周期的指令,它们需4个机器周期。 对于双字节单机器指令,通常是在一个机器周期内从程序存储器中读人两个字节,但Movx指令例外,Movx指令是访问外部数据存储器的单字节双机器周期指令,在执行Movx指令期间,外部数据存储器被访问且被选通时跳过两次取指操作。
STC89C52单片机引脚介绍
图—6:STC89C52RC引脚图
STC89C52单片机的40个引脚中有2个专用于主电源引脚,2个外接晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。
下面按引脚功能分为4个部分叙述个引脚的功能。 (1)电源引脚Vcc和Vss Vcc(40脚):接+5V电源正端; Vss(20脚):接+5V电源正端。 (2)外接晶振引脚XTAL1和XTAL2 XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。
XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。
(3)控制信号或与其它电源复用引脚
控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。 (A).RST/VPD(9脚):RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。

