说一下瑞萨RA2L1结合红外传感器控制不同的LED灯

电子说

1.3w人已加入

描述

红外传感器的原理就是通过一对红外线发射与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,绿色指示灯会亮起,同时信号输出接口输出数字信号(一个低电平信号),并且可通过电位器旋钮调节检测距离,有效距离范围2~30cm,工作电压为3.3V-5V。它有三只脚,1只就是VCC,1只就是GND,另一个就是OUT-IO,这个只需要接一个GPIO,然后监测它输出的是高电平还是低电平,当低电平就是检测到障碍物。

比较器

看开发板的电路图,我们得知J1的11和12分别是VCC和GND,分别对接上红外传感器vcc和GND,下面就是关键的OUT-IO这个就是红外传感器返回的数据(高低电平),这个我们在开发板找个闲置的GPIO进行接收,这里J1的29(P303)脚作为接收的GPIO,物理线路搞掂。我们就代码了,因为GPIO是最容易对接的,那么我们代码也很简单。首先声明接口,然后读取判断就可以了,具体代码如下:

#define infrared "P303"//定义引脚
static int out; //初始变量
out = rt_pin_read(MOMM_pin) ? PIN_LOW : PIN_HIGH;
if (PIN_LOW == out){
rt_kprintf("n 存在障外物n");
}else{
rt_kprintf("n 一路畅通n");
}

最后扫一下盲,什么是GPIO就是通用输入/输出端口,通俗地说,就是一些CPU的引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平;就是0:1输入和输出。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分