关于热式红外传感器,我相信很多人都玩弄过,而且玩得也非常的好,本来没啥必要再写什么心得与大家分享,而且怕写不好误导了人家。为了完成交代的任务,我也老生长谈写一点凑个数!!
房间这组的安防是通过热式红外传感器的检测来实现的。
至于这个模块怎么接线那就太简单了,这里就不提了。
在这里我只想给大家提一个醒,在430的应用电路中,给这个模块的供电一定要是DC+5v的,如果您用的是DC+3.3v,430没办法检测到高电平,实际测量有红外信号的时候,只有0.9v的电压。(如果您用在5v的单片机系统,您就不会忘了,在3.3的系统中要注意哦)
还有一个就是调试小经验,因为我们在调试的时候,这个模块离我们很近,即使模块的背对着我们,它也能检测到红外线,单片机就会一直再执行,而看不到变低的现象,从而怀疑这个模块的有问题,我的方法是调节模块上的按钮,逆时针到调不动,如果还不行就用黑色的东西包起来,这样可以减少调试的干扰。
贴个代码给大家参考参考
MSP430G2553
1 +------------ ------------+ 28
-----| VCC \___/ GND |-----
-----| P1.0 (CCRST) (XIN) P2.6 |-----
-----| P1.1 (CCTXD) (XOUT) P2.7 |-----
-----| P1.2 (CCRXD) TEST |-----SBWTCK
-----| P1.3 (DATA) (SW1) RST |-----SBWTIO
-----| P1.4 (RESHI) P1.7 |-----
-----| P1.5 (SW2) P1.6 |-----
-----| P3.1 (RI) P3.7 |-----
-----| P3.0 (BEEP) (LED1) P3.6 |-----
-----| P2.0 (in1) (LED2) P3.5 |-----
-----| P2.1 (in2) P2.5 |-----
-----| P2.2 (in3) P2.4 |-----
-----| P3.2 (in4) P2.3 |-----
-----| P3.3 (HWJ) P3.4 |-----
+-----------------------------+
*/
#include <msp430G2553.h>
/*********************************************************
*名称:mian(void)
*功能:主函数
*入口参数:无
*出口参数:无
*说明:
**********************************************************/
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗
P1DIR &= ~BIT4; //热释红外传感器的输入口P1.4设置为输入
P3DIR |= BIT6;
P3OUT = 0;
while (1)
{
switch (P1IN & BIT4)
{
case BIT4:
P3OUT |= BIT6;
break;
default:
P3OUT &= ~BIT6;
}
}
}