• 单片机用于温度采集与控制系统的设计
  • 单片机用于温度采集与控制系统的设计

      单片机用于温度采集与控制系统的设计
     
      针对传统测温元件组成的温度测量电路复杂,软件调试繁琐等缺点,设计基于MSC-51单片机及ADC0809的温度采集控制系统。该系统利用单片机中空余的I/O接口,以中断的方式实现温度的实时采集与控制,充分利用CPU的资源空间,简化了测量电路以及程序调试的复杂过程,方便了技术人员在实际中的开发和应用。
      为系统硬件组成框图。外部传感器将与温度相对应的电信号传至A/D转换器,进行模数转换,完成后将数据传送至单片机,单片机进行数据处理后将数据送至译码器,最后在数码管上显示。当有键盘输入控制温度时,单片机内部比较此时得到的A/D转换数据与控制设定温度,若低于设定温度,外部装置加热,LED单色灯亮;反之,则不加热,LED单色灯熄灭。
     
      软件采用MSC-51的单片机汇编语言编写,运用单片机内部定时器的中断实现中断程序的调用以及5s刷新数据的功能,从而大大节约CPU的资源,提高了工作效率。
      主程序流程
      在主程序开始之前设置伪指令,方便程序编写时查找各个器件地址及初始化命令。主程序中设置定时器1的中断程序,其定时产生中断并进入中断子程序。主程序入口地址是0000H,中断入口地址是001BH。为避免程序的存储位置与单片机预设的存储位置发生冲突,在各个入口地址中只放置跳转指令。主程序的存放地址从0500H开始。
      主程序以“START”开始,经设置堆栈栈底以及各接口器件的初始化程序后.启动定时器1开始计时,当计数时间为50ms时,定时器1产生中断,转入中断子程序运行。
      3.2系统中断子程序流程
      图5是中断子程序流程,其程序步骤如下:单片机响应定时器1的中断,进入中断子程序“FRESH”,设置50ms的定时时间循环100次后,得到5s的刷新时间,当到达5s定时,随即进人A/D转换器的读取数据。将A/D转换器得到的数值与预设温度值相比较。测量值低于预设温度则启动电热器,L=ED亮;反之,继续下一步。数码管初始化,并将A/D转换后的十六进制数值转换为十进制数值并显示输出。
      该方案具有节约接口资源,CPU利用率高,执行速度快,简单易行等特点,具有推广价值。但基于系统本身及器件转换中存在误差的缺点,该设计还需进一步提高控制精度,减小误差,从而提高系统的整体性能。

    更多型号芯片解密可致电北京致芯科技24小时服务热线:13466687255 010-57436217

    点击这里给我发消息 点击这里给我发消息

      Copyright © 2004-2012 致芯科技 版权所有