4路红外循迹模块使用教程


4路红外循迹模块使用教程


个人原创博客:点击浏览

模块详细信息:

工作电压:DC 3.3V~5V

工作电流:尽量选择1A以上电源供电

工作温度:-10℃~+50℃

安装孔径:M3螺丝

检测距离:1mm~30cm可调,距离越近2性能越稳定,白色反射距离远

尺寸大小:中控板42mmX38mmX12mm(长X宽X高);小板向前25mmX12mmX12mm(长X宽X高)

输出接口:6线制接口(1、2、3、4为4路信号输出端,VCC接正电源,GND接GND)

输出信号:TTL电平,可直接连接单片机IO口,感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。

模块接线

4路循迹模块  图片来源网络,侵权删除

图中主控板左侧分别为,VCC、GND、OUT1、OUT2、OUT3、OUT4,其中OUT1、2、3、4分别连接单片机的IO口,用于检测输出电平。主控板右侧分别与四个小板连接,用于采集信息。

模块使用

模块正确连接并通电后,小板传感器开始工作。模块感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。以检测黑线为例,如果传感器检测到黑线,红外光无法反射回来则模块红指示灯熄灭,同时小板对应的OUT口输出高电平;如果未检测到黑线,红外光可以反射回来则模块红指示灯亮,小板对应的OUT口输出低电平。其中需要注意一种特殊情况,也就是说当测量物体超出测量范围时,此时红指示灯熄灭,OUT口输出高电平。

每个小板前面对应的电位器可以用来调整使用精度。

相关代码

代码使用的单片机型号:STC16F40K128

#include "headfile.h"
/*
* OUT1 P27
* OUT2 P26
* OUT3 P25
* OUT4 P24
* 检测到黑线或悬空LED灭,输出高电平
*/
 void main()
{
	DisableGlobalIRQ();		//关闭总中断
	
	board_init();			//初始化寄存器
	//总中断最后开启
	EnableGlobalIRQ();		//开启总中断
    while(1)
	{
        // 判断IO口电平状态
		if (P27 == 1)
		{
			printf("OUT1 NO\r\n");
		}
		if (P26 == 1)
		{
			printf("OUT2 NO\r\n");
		}
		if (P25 == 1)
		{
			printf("OUT3 NO\r\n");
		}
		if (P24 == 1)
		{
			printf("OUT4 NO\r\n");
		}
		if ((P27 == 0)&&(P26 == 0)&&(P25 == 0)&&(P24 == 0))
		{
			printf("OFF\r\n");
		}
  }
}

代码是比较简单的,就是判断单片机IO口状态。如果IO口是高电平则表示传感器检测到黑线,否则没有检测到黑线。理解了这个原理就可以在其他型号的单片机上使用这个模块。

版权声明:本文为CSDN博主「闪电丶教主」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ZhuanShangNiDeXin/article/details/113765322


4路红外循迹模块使用教程


个人原创博客:点击浏览

模块详细信息:

工作电压:DC 3.3V~5V

工作电流:尽量选择1A以上电源供电

工作温度:-10℃~+50℃

安装孔径:M3螺丝

检测距离:1mm~30cm可调,距离越近2性能越稳定,白色反射距离远

尺寸大小:中控板42mmX38mmX12mm(长X宽X高);小板向前25mmX12mmX12mm(长X宽X高)

输出接口:6线制接口(1、2、3、4为4路信号输出端,VCC接正电源,GND接GND)

输出信号:TTL电平,可直接连接单片机IO口,感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。

模块接线

4路循迹模块  图片来源网络,侵权删除

图中主控板左侧分别为,VCC、GND、OUT1、OUT2、OUT3、OUT4,其中OUT1、2、3、4分别连接单片机的IO口,用于检测输出电平。主控板右侧分别与四个小板连接,用于采集信息。

模块使用

模块正确连接并通电后,小板传感器开始工作。模块感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。以检测黑线为例,如果传感器检测到黑线,红外光无法反射回来则模块红指示灯熄灭,同时小板对应的OUT口输出高电平;如果未检测到黑线,红外光可以反射回来则模块红指示灯亮,小板对应的OUT口输出低电平。其中需要注意一种特殊情况,也就是说当测量物体超出测量范围时,此时红指示灯熄灭,OUT口输出高电平。

每个小板前面对应的电位器可以用来调整使用精度。

相关代码

代码使用的单片机型号:STC16F40K128

#include "headfile.h"
/*
* OUT1 P27
* OUT2 P26
* OUT3 P25
* OUT4 P24
* 检测到黑线或悬空LED灭,输出高电平
*/
 void main()
{
	DisableGlobalIRQ();		//关闭总中断
	
	board_init();			//初始化寄存器
	//总中断最后开启
	EnableGlobalIRQ();		//开启总中断
    while(1)
	{
        // 判断IO口电平状态
		if (P27 == 1)
		{
			printf("OUT1 NO\r\n");
		}
		if (P26 == 1)
		{
			printf("OUT2 NO\r\n");
		}
		if (P25 == 1)
		{
			printf("OUT3 NO\r\n");
		}
		if (P24 == 1)
		{
			printf("OUT4 NO\r\n");
		}
		if ((P27 == 0)&&(P26 == 0)&&(P25 == 0)&&(P24 == 0))
		{
			printf("OFF\r\n");
		}
  }
}

代码是比较简单的,就是判断单片机IO口状态。如果IO口是高电平则表示传感器检测到黑线,否则没有检测到黑线。理解了这个原理就可以在其他型号的单片机上使用这个模块。

版权声明:本文为CSDN博主「闪电丶教主」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ZhuanShangNiDeXin/article/details/113765322


4路红外循迹模块使用教程


个人原创博客:点击浏览

模块详细信息:

工作电压:DC 3.3V~5V

工作电流:尽量选择1A以上电源供电

工作温度:-10℃~+50℃

安装孔径:M3螺丝

检测距离:1mm~30cm可调,距离越近2性能越稳定,白色反射距离远

尺寸大小:中控板42mmX38mmX12mm(长X宽X高);小板向前25mmX12mmX12mm(长X宽X高)

输出接口:6线制接口(1、2、3、4为4路信号输出端,VCC接正电源,GND接GND)

输出信号:TTL电平,可直接连接单片机IO口,感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。

模块接线

4路循迹模块  图片来源网络,侵权删除

图中主控板左侧分别为,VCC、GND、OUT1、OUT2、OUT3、OUT4,其中OUT1、2、3、4分别连接单片机的IO口,用于检测输出电平。主控板右侧分别与四个小板连接,用于采集信息。

模块使用

模块正确连接并通电后,小板传感器开始工作。模块感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。以检测黑线为例,如果传感器检测到黑线,红外光无法反射回来则模块红指示灯熄灭,同时小板对应的OUT口输出高电平;如果未检测到黑线,红外光可以反射回来则模块红指示灯亮,小板对应的OUT口输出低电平。其中需要注意一种特殊情况,也就是说当测量物体超出测量范围时,此时红指示灯熄灭,OUT口输出高电平。

每个小板前面对应的电位器可以用来调整使用精度。

相关代码

代码使用的单片机型号:STC16F40K128

#include "headfile.h"
/*
* OUT1 P27
* OUT2 P26
* OUT3 P25
* OUT4 P24
* 检测到黑线或悬空LED灭,输出高电平
*/
 void main()
{
	DisableGlobalIRQ();		//关闭总中断
	
	board_init();			//初始化寄存器
	//总中断最后开启
	EnableGlobalIRQ();		//开启总中断
    while(1)
	{
        // 判断IO口电平状态
		if (P27 == 1)
		{
			printf("OUT1 NO\r\n");
		}
		if (P26 == 1)
		{
			printf("OUT2 NO\r\n");
		}
		if (P25 == 1)
		{
			printf("OUT3 NO\r\n");
		}
		if (P24 == 1)
		{
			printf("OUT4 NO\r\n");
		}
		if ((P27 == 0)&&(P26 == 0)&&(P25 == 0)&&(P24 == 0))
		{
			printf("OFF\r\n");
		}
  }
}

代码是比较简单的,就是判断单片机IO口状态。如果IO口是高电平则表示传感器检测到黑线,否则没有检测到黑线。理解了这个原理就可以在其他型号的单片机上使用这个模块。

版权声明:本文为CSDN博主「闪电丶教主」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ZhuanShangNiDeXin/article/details/113765322

生成海报
点赞 0

闪电丶教主

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

4路红外循迹模块使用教程

4路红外循迹模块使用教程 个人原创博客:点击浏览模块详细信息: 工作电压:DC 3.3V~5V 工作电流:尽量选择1A以上电源供电 工作温度:-10℃~50℃ 安装孔

STM32使用各种传感器的demo

各种传感器的demo 最近有假期有空整理了一些传感器的使用方式 激光测距 激光测距是我在完成电磁炮项目用的模块,大家也可以去借鉴我以前的文章,使用起来也是方便,当时涂方便,利用的是串口