89C51单片机实现的多路温度采集控制系统

版权申诉
0 下载量 135 浏览量 更新于2024-09-02 收藏 192KB PDF 举报
"该文档详细介绍了如何设计一个多路温度采集控制系统,主要基于89C51单片机,包括温度传感器、ADC转换器、移位寄存器和LED显示电路等组件,以及相关的驱动电路和程序设计。" 本文档重点讨论了两个核心方面:温度控制器电路设计和温度控制器程序设计。 1. 温度控制器电路设计: - 电路由89C51单片机作为核心处理器,与温度传感器(如热敏电阻)配合工作,将环境温度转换为电信号。 - ADC0809模数转换器用于将温度传感器的模拟信号转化为数字量,该数字量通过89C51的P0口接收,并在软件中处理。 - 窄入并出移位寄存器74LS164用于串行数据到并行数据的转换,便于驱动数码管显示当前温度。 - 温度值通过P2.0、P2.1、P2.2接口选择ADC0809的不同通道,通道IN0的地址为F0FFH。 - LED状态指示灯(LED1-LED4)提供温度状态反馈,如高于上限、低于下限等。 2. 温度控制器程序设计: - 软件系统由主程序和六个子程序构成,包括定时/计数器0中断服务、温度采集与模数转换(ADCON)、温度计算(CALCU)、驱动控制(DRVCON)、十进制转换(METRICCON)和数码管显示(DISP)。 - 主程序负责系统的初始化,特别是对定时/计数器的设置。 - 定时/计数器0中断服务程序用于定时采样,避免数码管显示温度的闪烁,采样间隔可根据实际需求调整。 - ADCON子程序执行温度采集和模数转换,获取温度样本。 - CALCU子程序计算温度,根据结果驱动控制子程序DRVCON,实现温度异常时的外部设备控制。 - METRICCON和DISP子程序分别处理十进制转换和数码管显示,确保温度值正确显示。 这个多路温度采集控制系统能够实时监测环境温度,并根据设定的上下限值触发相应的控制响应,具有较高的实用性和灵活性。其程序设计考虑了实时性、稳定性及用户可定制性,是单片机应用中的典型示例。