这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【转载】循迹模块原理及应用--from毅

共1条 1/1 1 跳转至

【转载】循迹模块原理及应用--from毅

工程师
2026-04-19 23:33:52     打赏
一、TCRT5000循迹模块介绍

TCRT5000就是一个红外发射和接收器,不断发射和接收红外线。

产品用途:
1、电度表脉冲数据采样
2、传真机碎纸机纸张检测

3、障碍检测
4、黑白线检测

下面是部分模块的图片

image.png

image.png

第一个模块是4个管脚的,分别是VCC、GND、A0、D0。A0是模拟信号输出,D0是TTL电平输出。使用TCRT5000主要就是用来循迹,只需要连接VCC、GND、D0就可以了。

第二个模块是3个管脚的,分别VCC、GND、S,S就是输出管脚。

(1)工作电压 3.3V-5V

(2)模块上的电位器是用来调节灵敏度的

(3)检测反射距离:1mm~25mm 适用

(4)输出形式 :数字开关量输出(0 和 1)

(5)设有固定螺栓孔,方便安装

(6)小板 PCB 尺寸:3.2cm x 1.4cm

(7)使用宽电压 LM393 比较器

二、TCRT5000循迹模块原理

循迹原理非常简单,模块上配有一个输出指示灯,部分模块还有电源指示灯,我们主要关注输出指示灯。红外发射器一直发射红外线,红外线经发射后被接收,此时输出低电平,输出指示灯点亮。

黑色是不反射红外线的,也就是说循迹模块遇到黑线,模块输出高电平,输出指示灯熄灭。

当然除了遇到黑线熄灭,当距离太远红外线反射后检测不到,此时指示灯也会熄灭。

那么如果要循迹,模块离地面要近,在没有遇到黑线时确保指示灯长亮,一旦指示灯熄灭就说明遇到黑线了。

例如下图的效果

image.png

image.png

三、TCRT5000循迹模块应用

了解清楚原理后代码实现就非常简单了,相当于按键检测。
下面用STM32固件库V3.5
实现。

下面是源文件,注意要设置为下拉输入模式,输入模式不需要配置速度。

#include "bsp_tcrt5000.h"


void TRC5000_Init(void)

{

GPIO_InitTypeDef GPIO_InitTypeStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);

GPIO_InitTypeStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6;

GPIO_InitTypeStructure.GPIO_Mode = GPIO_Mode_IPD;

GPIO_Init(GPIOA, &GPIO_InitTypeStructure);

}

#ifndef __BSP_TCRT5000_H

#define __BSP_TCRT5000_H


#include "stm32f10x.h"


#define Tracking_DO GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_6)



void TRC5000_Init(void);


#endif /*__BSP_TCRT5000_H*/

int main(void)

{

TRC5000_Init();


while(1) 

{

if(Tracking_DO == 1)

{

/*这里写相关应用*/

}

}   

}

来源: 整理文章为传播相关技术,网络版权归原作者所有,如有侵权,请联系删除。




共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]