实操之STM32 F103C8T6 控制红外循迹避障模块(TCRT5000)

实操之STM32 F103C8T6 控制红外循迹避障模块(TCRT5000)


一、TCRT5000工作原理

在这里插入图片描述

TCRT500主要涉及红外线的发射和接收,‌并根据接收到的反射信号强度来判断地面的颜色。红外循迹传感器模块通常由发射模块和接收模块组成。‌发射模块负责发射红外线,‌而接收模块则用于接收这些红外线的反射信号。‌当红外线照射到地面上时,‌地面会对红外线进行反射。‌不同颜色和物质的地面会对红外线的反射能力产生差异,‌这种差异为循迹车辆提供了判断行进方向的依据。‌

模块上有一个输出指示灯和电源指示灯,主要关注输出指示灯(开关提示)。

红外发射器一直发射红外线,红外线经发射后被接收,此时输出低电平D0=0,输出指示灯点亮LED=0。
黑色是不反射红外线,当循迹模块遇到黑线,模块输出高电平D0=1,输出指示灯熄灭LED=1。

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

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

该传感器的探测距离可以通过电位器调节

调节电位器旋钮,从而控制检测距离,有效距离范围2~30cm,工作电压为3.3V-5V。


二、电路图

在这里插入图片描述

三、引脚接线

c8t6TCR5000
PA5D0
3.3V/5.5VVCC
GNDGND

四、代码

1.main.c

#include "stm32f10x_gpio.h" 
#include "led.h" 
#include "track.h"


int main(void)
{
  LED_Init(); //调用初始化LED函数,引用"led.h"后可使用
  track_GPIO_Config();
  while(1)
	{
		LED=1;//灭
		if(track_Scan(track_GPIO_PORT,track_GPIO_PIN) == track_Low)LED=0;//亮
	}
}

2.track.h

代码如下(示例):

#ifndef __TRAK_H
#define __TRAK_H

#include "stm32f10x.h"

#define track_GPIO_CLK	   		RCC_APB2Periph_GPIOA
#define track_GPIO_PIN			GPIO_Pin_5
#define track_GPIO_PORT			GPIOA               //PA5

#define track_High			1
#define track_Low			0

void track_GPIO_Config(void);
uint8_t track_Scan(GPIO_TypeDef* GPIOx,uint16_t GPIO_Pin);

#endif /* __TRAK_H */

3.track.c

#include "track.h"

void track_GPIO_Config(void)
{
	GPIO_InitTypeDef GPIO_InitStructure;
	RCC_APB2PeriphClockCmd(track_GPIO_CLK,ENABLE);
	
	GPIO_InitStructure.GPIO_Pin=track_GPIO_PIN;
	GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING; 	
	GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
	GPIO_Init(track_GPIO_PORT, &GPIO_InitStructure);
}

uint8_t track_Scan(GPIO_TypeDef* GPIOx,uint16_t GPIO_Pin)
{
	if(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin)==track_Low)
		return track_Low;
	else
		return track_High;
}

TCRT5000循迹模块是一种用于循迹的传感器模块。它通常有四个接口,包括VCC(电源正极)、GND(电源负极)、DO(数字输出)和AO(模拟输出)。模块上有两个LED灯,一个是在通电时亮起的,另一个是在检测到黑线时熄灭的。模块还有一个可调节的部分,用于调节红外检测距离。TCRT5000循迹模块的工作原理是,红外发射器一直发射红外线,当红外线被黑线吸收时,模块输出高电平,LED灯熄灭;当红外线被白色地面反射时,模块输出低电平,LED灯点亮。通过检测模块的输出信号,可以现小车的循迹功能。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [STM32智能小车------TCRT5000循迹](https://blog.csdn.net/qq_52608074/article/details/122020354)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [循迹传感器(TCRT5000)的介绍以及使用(STM32)](https://blog.csdn.net/qq_48764574/article/details/119205455)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值