1 引言
针对传统测温元件(热电偶、热电阻)组成的温度测量电路复杂,软件调试繁琐等缺点,设计基于MSC-51单片机及ADC0809的温度采集控制系统。该系统利用单片机中空余的I/O接口,以中断的方式实现温度的实时采集与控制,充分利用CPU的资源空间,简化了测量电路以及程序调试的复杂过程,方便了技术人员在实际中的开发和应用。
2 硬件电路设计
2.1 系统组成
图1为系统硬件组成框图。外部传感器将与温度相对应的电信号传至A/D转换器,进行模数转换,完成后将数据传送至单片机,单片机进行数据处理后将数据送至译码器,最后在数码管上显示。当有键盘输入控制温度时,单片机内部比较此时得到的A/D转换数据与控制设定温度,若低于设定温度,外部装置加热,LED单色灯亮;反之,则不加热,LED单色灯熄灭。
2.2 系统模块设计
(1)主控制模块 选用单片机MSC-51的最小系统作为主控制器件,且采用MSC-51单片机的最小主控制模块,由于程序控制简单,器件内部空间足够存储程序,无需外扩存储器,选用P0、P1口作为输出接口,P2口作为输入接口。
(2)温度采集模块温度采集模块由外部传感器、电热器以及ADC0809器件组成。传感器的测量范同是0℃~50℃。在理想情况下,A/D转换器输出的数值D与输入的电压信号V之间有以下关系式成立
式中,Vmax为连接在器件Vref+引脚的“高基准电压值”;Vmin为连接在器件Vref-引脚的“低基准电压值”。Dmax为当输入电压为Vmax时,接口输出的转换数值。Dmin为当输入电压为Vmin时,接口输出的转换数值。
(3)温度显示模块 温度显示模块由8279器件与数码管组成,8279内部的OUTA0~OUTA3、OUTB0~OUTB3与译码器74LS138连接,控制七段数码管的显示。
(4)温度控制模块温度控制模块由键盘、MSC-51器件、电热器、A/D转换器等组成。键盘数值的输入也由8279器件通过行列扫描控制,再通过MSC-51的内部数值比较,电热器控制温度,进而达到保温的目的。
2.3 系统硬件连接
系统选用MSC-51单片机作为主控制器件,进行数据的处理与传输。设计中将74LS273的引脚P0.4与外部电热器的开关相连接,控制加热。同时将LED单色灯与74LS273的引脚P0.4口连接.以显示外部电热器的状态。A/D转换器ADC0809的引脚CS与编号为“8300H”的译码器输出端连接,EOC信号接MSC-51的引脚P1.7,IN1与温度传感器相连接。数码显示控制器件8279的引脚CS与编号为“8700H”的译码器输出端连接。图2为键盘及数码管显示电路,图3为A/D转换电路。