新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 采用单片机设计温湿度控制仪

采用单片机设计温湿度控制仪

作者:时间:2012-02-21来源:网络收藏

A/D转换器8位串行模数转换器TLC0834。TLC0834是低价格8位逐次逼近型A/D转换器,其多路器可用软件配置为单端或差分输入,也可配置为伪差分输入,基准电压的大小可调,在全8位分辨率下允许任意小的模拟电压编程间隔。

湿敏传感器电容式湿敏元件HS1101。HS1101有响应快、线性度高、高可靠性和常时间稳定性、常时间饱和下快速脱湿等优点。IC1-a与 R1、R2、C1组成一个多谐振荡器,其振荡频率f=1.44/(R1+2R2)C1,图示参数振荡频率约为50Hz(T=20ms),其振荡脉冲作为可变脉冲发生器提供触发脉冲。图1中右侧的单稳态触发器由IC1-b、R3以及HS1101组成,输出脉宽取决于充电时间常数RC,即t=1.1R3(C2 +CX),此输出脉冲经平滑滤波器R4、C3滤波后,经IC3(OP07)直流放大后输入到TLC0834的模拟电压输入端。其中,RP1用来调零, RP2用来调满刻度。

温度传感器MF58型热敏电阻,本系统的测量范围为:-30~120℃,对应的电阻值范围为: 60.0256~0.2760kΩ。因MF58的阻值变化足以为TLC0834提供0~2.5V的模拟电压,所以LM358接成电压跟随器的形式。 TLC0834可由软件配置为差分或单端输入,对于温度采样用差分输入方式,RP3用来调零,RP4用来调满刻度。

本系统中设立3个按键,分别是功能键、加1及减1键,用来设定的上下限。功能键是多功能键,依照按下的次数执行相应的功能。当功能键第一次被按下,数码管显示调整低温加热下限符号并显示低温加热下限的值,按加1减1使值符合要求后,再按下功能键则数码管显示调整低温加热上限符号并显示低温加热上限的值,按加1减1使值符合要求,这样依次类推,设定完最后一个参数后,再按一次功能键则完成参数整定进入测控状态。

软件编程

仪的软件由主程序和T0中断处理程序组成,其中主程序框图如图2所示,T0中断处理程序如图3所示。

系统中,设定定时器T0为工作方式1,定时周期为125ms,8次定时器中断为1秒。为了提高抗干扰性能,采用滑动平均滤波算法,即只采样一次,将这一次采样值和过去的若干次采样值一起求平均,得到的有效采样值即可投入使用。本系统中采用两个环形队列,每次中断采样一次的值,分别放入环形队列中,每存入一个新数据便自动冲去一个旧数据。环形队列的地址为30H~3FH共16个单元,数据各占8个单元。为了有效防止显示闪烁现象,每秒钟进行一次数据处理(8个数据求和再除以8),处理后的数据换算成温湿度的值送显示缓存并申请显示,同时进行监控处理,符合加热器加热停止条件或排分扇启动停止条件的,要进行相应的处理。

由于系统中有看门狗电路,所以在编程时要特别注意,传统的等待按键释放的方法容易造成看门狗电路输出复位信号。解决方法是,在主程序中,当检测到有键按下后置键按下标志位,在主程序的循环中则反复判断键按下标志位是否被清零,如果被清零则说明键已释放,然后才能进行下一轮的键盘按下判断。在T0中断处理程序中,每次中断均要检测键是否按下。若无键按下,有两种情况,一是系统中无键按下(此时键按下标志为0),处于监控状态;二是键按下释放后的情况(此时键按下标志为1),这时要清键按下标志,以便主程序中进行下一轮的键按下检测。这样既可以保证当键按下后不论按下多长时间只响应一次,又可以保证不使看门狗电路输出复位信号。

结语

为核心开发的温湿度仪小巧美观,安装、使用方便,性能稳定可靠,不仅可用于电力部门,对温湿度要求较高的库房、粮仓等场所也十分适用。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭