基于PIC16F887的温度传感器

1.设计题目

能够将当前温度和温度上下限三者显示在显示器上

能够根据温度超限情况进行相应的指示和动作

2.设计思路

利用PIC单片机的通信功能,将单线数字温度计DS18B20中的温度和设定的上下限温度,用LCD液晶屏显示,并可以通过按键来控制电机的启动,在温度高于上限或低于下限的时候报警设计所能实现功能:

① 能检测当前环境温度,并能将温度和上下限温度数值显示在液晶屏上

② 在温度高于上限或低于下限时由绿灯转红灯且蜂鸣器响起报警

③ 温度高于上限时电机启动降温,也可通过按钮手动启动电机

3.仿真电路图

4.流程图

5.调试过程中遇到的问题及解决

仿真调试过程中,按下按钮1后光标显示上下限温度的十位,无法正常更改上下限温度。

光标显示不正常,先是查看了光标闪烁的程序段,与网络中的标准程序做对比未发现任何错误,排除该可能。认为应该是程序段中关于光标显示的坐标输入错误,导致该现象。

if ( keyset == 1 )

    {setLcdCursor( 3, 1 );}//改变上限

else if ( keyset == 2 )

    {setLcdCursor( 13, 1 );}//改变下限

由于显示的位置为十位,因此需要后移一位数,将setLcdCursor( 3, 1 )更改为setLcdCursor( 4, 1 )后,发现光标可以显示在个位,成功解决问题。

6.实验现象以及分析

(1)最高温度、最低温度、当前温度显示在LCD上

(2)当温度大于等于最高温度时,红灯亮,直流电机旋转(红灯L1亮,直流电机L3亮);当温度在TH和TL之间时,绿灯亮,直流电机停转。(绿灯L2亮、直流电机L3暗)

(3)当温度小于等于最低温度时,红灯亮,蜂鸣器响(红灯L1亮,蜂鸣器响,把蜂鸣器的输入换接到L8,L8亮)

(4)第一次按下按键1,设置最高温度;第二次按下按键1,设置最低温度

(5)按下按键4退出设定状态,并保持设定值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值