空调机的温度控制系统设计
图2.4时钟电路
(3) 8031单片机最小系统
一个最小8031单片机系统有CPU (8031), 8位3态D锁存器74LS373,ROM或RAM,时钟电路和复位电路等基本电路组成。
2.3 A/D转换电路设计
由信号处理电路输出的信号为模拟信号,而单片机只能处理数字量,所以必须首先将模拟量经过一定电路转换为数字信号,单片机才能处理,这种电路被称为A/D转换电路,是模拟系统与计算机之间的接口部件。
2.3.1 A/D转换的常用方法
A/D转换的常用方法有:双积分式A/D转换、逐次逼近型A/D转换、计数型A/D转换等。双积分式A/D转换的工作原理是将对输入电压的测量,转换成对基准源积分时间的测量,再测量时间(脉冲宽度信号)或频率(脉冲频率),然后由定时器/计数器获得数字值。这种方法的主要优点是分辩率高、精度高、抗干扰性好;主要缺点是转换速度慢。逐次逼近型A/D由一个比较器和D/A转换器通过逐次比较逻辑构成,顺序地增
-14-
空调机的温度控制系统设计
加内部D/A的输入值,并将其输出电压与A/D测量输入电压比较,当二者相等时,内部D/A的输入值就是A/D转换的结果。这种方法的主要优点是速度快、功耗低;主要缺点是抗干扰性差。
2.3.2 A/D转换器的主要技术指标
A/D转换器的主要技术指标有:分辨率、精度、量程、转换时间等。分辨率(Resolution)分辨率反映转换器所能分辨的被测量的最小值。通常用输出二进制代码的位数来表示。8位A/D转换器的分辨率为8位。精度(Precision)精度指的是转换的结果相对于实际的偏差,精度有两种表示方法:绝对精度和相对精度。绝对精度用最低位(LSB)的倍数来表示,如:±1LSB;相对精度用绝对精度除以满量程值的百分数来表示,如:±0.05%。同样分辨率的转换器其精度可能不同。量程(满刻度范围一 Full Scale Range)量程是指输入模拟电压的变化范围。如:某转换器具有lOV的单极性范围或﹣5~+5V的双极性范围,它们的量程都为10V。实际的A/D, D/A转换器的最大输入/输出值总是比满刻度值小。
转换时间(Conversion Time)A/D转换器的转换时间是指:从启动转换开始,直至取得稳定的数字量或模拟量所需的时间称为转换时间。转换时间与转换器原理及其位数有关。同种工作原理的转换器,通常位数越多,转换时间越长。
2.3.3 ADC0809的主要特性和内部结构
本系统采用ADC0809大规模集成电路芯片,它是逐次逼近式A/D转换器,输出的数字信号有三态缓冲器,可以和单片机直接接口。ADC0809的主要技术指标为:
分辨率:8位; 单电源供电:+5V;
最大不可调误差小于±1LSB;
转换时间为l00μs(时钟频率为640KHz); 模拟输入范围:单极性0~5V; 不必进行零点和满刻度调整; 功耗为15Mw;
ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个8位
-15-
空调机的温度控制系统设计
A/D转换器和一个三态输出锁存器组成。其内部结构框图如图2.5所示。
图2.5 ADC0809转换器的内部机构框图
2.3.4 ADC0809管脚功能及定义
ADC0809模数转换器的管脚定义如图2.6所示
-16-
空调机的温度控制系统设计
图2.6 ADC0809管脚结构图
·IN0~IN7:8通道模拟量输入。
·ADDA、ADDS、ADDC: A、B、C为地址输入线,用于选通工IN0~IN7上的一路模拟量输入。通道选择表如表2-3所示。
·ALE:地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A、B、C三条地址线的地址信号进行锁存,经译码后被选中通道的模拟量进转换器进行转换。
·D0-D7: 8位输出数据线(三态),A/D转换结果由这8根线传送给单片机。
·OE:允许输出信号。当OE=1时,输出转换得到的数据;当OE=0时,输出数据线呈高阻状态。
·START:转换启动信号。START为正脉冲,其上跳沿所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,START应保持低
-17-
空调机的温度控制系统设计
电平。
·EOC:转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。
·CLK:时钟输入信号。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,频率范围为10KHz~1.2MHz,典型值为640KHz。
表2.3通道的选择表
C 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 A 0 1 0 1 0 1 0 1 选择的通道 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 2.3.5 ADC0809与8031的接口电路
ADC0809有8个通道的模拟量输入,在程序控制下,可令任意通道进行A/D转换并可得到相应的8位二进制数字量。
2.4软件系统的初始化程序
系统初始化程序是为了在进入主程序循环之前,做好必要的准备工作,包括如下内容:
1.停止X25043内部的看门狗。 2.设定X25043内部WDT为定时器模式,定时为0.25秒,并允许内部WDT中断。
3.设定UO端口状态,全部设定为输入状态,降低功耗。 4.初始化E2PROM,设定位于E2PROM内的看门狗定时为1.4s。 5.从护E2PROM读入校准数据,将校准数据写到内存。 6.启动位于E2PROM内的看门狗。
7.将E2PROM的片选端CS置为1,使E2PROM进入待机模式,以降低功耗。
-18-