零基础STM32单片机编程入门(十三) 红外避障传感器模块实战含源码

news2025/5/29 9:23:01

文章目录

    • 一.概要
    • 二.红外避障模块主要参数
      • 1.模块引脚定义
      • 2.模块特点
      • 3.模块原理图
    • 三.STM32单片机红外避障模块检测实验
    • 四.CubeMX工程源代码下载
    • 五.小结

一.概要

红外避障模块具有一对红外线发射与接收管,发射管发射出一定频率的红外线,当检测遇到障碍物时,红外线反射回来被接收管接收,经过比较器电路处理之后,绿色指示灯会亮起,同时信号输出接回输出数字信号(一个低电平信号),可通过电位器旋钮调节检测距离,有效距离范围2~30cm,工作电压为3.3v-5v。该传感器的探测距离可以通过电位器调节、具有干扰小、便于装配、使用方便等特点,可以广泛应用于机器人避障、避障小车、流水线计数及黑白线循迹等众多场合。

在这里插入图片描述

二.红外避障模块主要参数

1.模块引脚定义

在这里插入图片描述

2.模块特点

1、当模块检测到前方障碍物信号时,电路板上绿色指示灯点亮电平,同时OUT端口持续输出低电平信号,该模块检测距离2~30cm,检测角度35°,检测距离可以通过电位器进行调节,顺时针调电位器,检测距离增加;逆时针调电位器,检测距离减少。
2、传感器主动红外线反射探测,因此目标的反射率和形状是探测距离的关键。其中黑色探测距离最小,白色最大;小面积物体距离小,大面积距离大。
3、传感器模块输出端口OUT可直接与单片机IO口连接即可,连接方式:VCC-VCC;GND-GND;OUT-IO,单片机检测到OUT脚为低电平,就说明模块检测到障碍物。
4、比较器采用LM393,工作稳定。
5、可采用3-5V直流电源对模块进行供电。当电源接通时,红色电源指示灯点亮。
6、具有3mm的螺丝孔,便于固定、安装。
7、电路板尺寸:3.2CM*1.4CM。
8、每个模块在发货已经将阈值比较电压通过电位器调节好,非特殊情况,请勿随意调节电位器。

3.模块原理图

在这里插入图片描述

三.STM32单片机红外避障模块检测实验

硬件准备:

STLINK接STM32F103C8T6小系统板,STLINK接电脑USB口。

板子与OLED用杜邦线连接:
板子G----液晶GND
板子3.3–液晶VCC
板子B10—液晶SCL
板子B11—液晶SDA

用杜邦线把模块与开发板相连:
板子3.3----模块VCC
板子A0-----模块OUT
板子G------模块GND

打开STM32CubeMX软件,新建工程
在这里插入图片描述
Part Number处输入STM32F103C8,再双击就创建新的工程
在这里插入图片描述
配置下载口引脚
在这里插入图片描述
配置外部晶振引脚
在这里插入图片描述
配置系统主频
在这里插入图片描述
配置PA0为上拉输入
在这里插入图片描述

配置工程文件名,保存路径,KEIL5工程输出方式
在这里插入图片描述
生成工程
在这里插入图片描述
用Keil5打开工程
在这里插入图片描述

添加OLED驱动文件
在这里插入图片描述

添加红外避障相关代码
在这里插入图片描述

主要代码

void MX_GPIO_Init(void)
{

  GPIO_InitTypeDef GPIO_InitStruct = {0};

  /* GPIO Ports Clock Enable */
  __HAL_RCC_GPIOD_CLK_ENABLE();
  __HAL_RCC_GPIOA_CLK_ENABLE();

  /*Configure GPIO pin : PA0 */
  GPIO_InitStruct.Pin = GPIO_PIN_0;
  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
  GPIO_InitStruct.Pull = GPIO_PULLUP;
  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

}
int main(void)
{
  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();//8M外部晶振,72M系统主频

  /* USER CODE BEGIN SysInit */


  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  /* USER CODE BEGIN 2 */
	OLED_Init();	//初始化OLED  
	OLED_Clear(); //清屏幕
	while(1) 
	{		
		OLED_Clear();
   		OLED_ShowCHinese(18,0,0);//光
		OLED_ShowCHinese(36,0,1);//子
		OLED_ShowCHinese(54,0,2);//物
		OLED_ShowCHinese(72,0,3);//联
		OLED_ShowCHinese(90,0,4);//网
		OLED_ShowCHinese(10,3,5);//障
		OLED_ShowCHinese(28,3,6);//碍
		OLED_ShowCHinese(46,3,7);//物
	  	OLED_ShowString(80,3,"TEST");//显示字符


		if(HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0)==0)//读取PA0引脚电平,如果低电平,说明有障碍物
		{
				OLED_ShowCHinese(46,6,8);//有
		}else
		{
		
				OLED_ShowCHinese(46,6,9);//无
		}
		HAL_Delay(1000);//等待1S
	}	  
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */

}

四.CubeMX工程源代码下载

链接:https://pan.baidu.com/s/1NWgMtOVtM9jWK6QUGCkPTw
提取码:7n2o
如果链接失效,可以联系博主给最新链接
程序下载下来之后解压就行

五.小结

红外避障模块是常用于智能小车、机器人等设备中的传感器模块,用于检测周围环境中的障碍物。对于小车检测前方是否存在障碍物,是很好的选择。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1917582.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【香橙派5】使用frp建立香橙派内网穿透

1、首先进入github下载需要用的tar包 https://github.com/fatedier/frp/releases请一定一定看清楚,一个是amd,一个是arm不要上传岔了!!! 2、上传之后,服务器端进行修改 首先进行压缩包解压 tar -zxvf f…

ENSP软件中DHCP的相关配置以及终端通过域名访问服务器

新建拓扑 配置路由器网关IP 设备配置命令&#xff1a;<Huawei> Huawei部分为设备名 <>代表当下所在的模式&#xff0c;不同模式下具有不同的配置权限<Huawei> 第一级模式&#xff0c;最低级模式 查看所有参数<Huawei>system-view 键入系统视图…

html5——表单

目录 表单基本结构 表单标签 常用表单元素 文本框 密码框 邮箱 单选按钮 复选框 文件域 隐藏域 列表框 多行文本域 lable标签 表单按钮 常用表单属性 只读与禁用 placeholder required pattern autofocus autocomplete 用于指定表单是否有自动完…

脉脉高聘:面对薪资福利减少,超40%职场人自动缩短工时

近日&#xff0c;脉脉高聘人才智库发布《2024职场生存洞察》&#xff08;下称《洞察》&#xff09;。 数据显示&#xff0c;2024上半年&#xff0c;新经济行业求职压力居高不下&#xff0c;人才供需比达到1.97&#xff0c;相当于2个人竞争1个岗位。求职压力也让职场人心态趋于…

【ACM珠海分会,IEEE Fellow加盟,CPS出版】第四届管理科学和软件工程国际学术会议(ICMSSE 2024,7月19-21)

第四届管理科学和软件工程国际学术会议(ICMSSE 2024)由ACM珠海分会&#xff0c;广州番禺职业技术学院主办&#xff1b;全国区块链行业产教融合共同体&#xff0c;AEIC学术交流中心承办&#xff0c;将于2024年7月19-21日于广州召开。 会议旨在为从事管理与软件工程领域的专家学…

爆款文案管理系统设计

设计一个爆款文案管理系统&#xff0c;目标是帮助营销团队高效地创建、管理并分析吸引人的文案&#xff0c;以提升产品或服务的市场吸引力和销售转化率。以下是一些关键功能和设计考量点&#xff1a; 1. 用户友好界面 简洁直观的界面&#xff1a;确保系统界面清晰&#xff0c…

zigbee笔记:七、zigbee系统电源管理与睡眠唤醒

zigbee的低功耗、近距离无线传输的特点使得其在一众近距离无线传输方案中备受青睐。而zigbee低功耗优势是通过根据不同工况选择运行在不同的运行模式&#xff08;供电模式&#xff09;实现的&#xff0c;因此&#xff0c;掌握zigbee的系统电源管理与睡眠唤醒的相关知识&#xf…

STM32的Code、RO-data、RW-data、ZI-data和RAM以及flash的关系

对于刚接触stm32编程的同学来说&#xff0c;通常不知道如何选择合适型号的芯片来开发自己的项目&#xff0c;下面就分析一下多大的片内ram以及flash能符合我们项目的需求。 不知道大家有没有注意到&#xff0c;我们的项目每次编译完成后&#xff0c;都会出现这个Program Size&…

查看尝试登服务器ssh 访问ip地址

不指定时间查看尝试登录服务器的SSH访问IP地址 # CentOS/RHEL系统 zgrep "sshd" /var/log/secure-* | grep "Failed password" | awk {print $(NF-3)} | sort | uniq -c | sort -nr | head -n 10检查过去7天的日志尝试登录服务器的SSH访问IP地址 # CentOS…

浅谈谷歌浏览器axure扩展程序

Axure RP Extension for Chrome 是一款专门为Axure设计的谷歌浏览器扩展程序&#xff0c;它的主要作用是帮助用户在谷歌浏览器中无缝预览和测试由Axure RP创建的交互式原型。当您在Axure RP中构建原型并将其导出为HTML格式时&#xff0c;此扩展程序允许您直接在浏览器中打开这些…

自主升级,平稳过渡!麒麟信安保障长沙市智慧交通发展中心CentOS迁移无忧

长沙市智慧交通发展中心围绕综合交通运输协调体系的构建&#xff0c;实施交通运行的监测、预测和预警&#xff0c;面向公众提供交通信息服务&#xff0c;开展多种运输方式的调度协调&#xff0c;提供交通行政管理和应急处置的信息保障。 该中心目前数据日交换量超2亿条&#x…

threeJS 为模型增加精灵图

前言 之前使用css3DRender创建图片弹框&#xff0c;在旋转模型到背面时&#xff0c;弹框也背对模型&#xff0c;这与UI要求的效果有出入。考虑将css3DRender换成css2Drender,但是可能是模型的问题&#xff0c;将弹框加入到模型的子集&#xff0c;旋转模型时弹框发生比较明显的…

博物馆环境监测系统——文物的绿色守护者

博物馆环境监测系统是现代博物馆不可或缺的一项技术装备。该系统可以实时监测温度、湿度等因素&#xff0c;旨在保持文物所处环境的稳定性&#xff0c;确保馆内的文物得到最佳的保护和展示条件。尤其是在梅雨季节&#xff0c;博物馆环境监测系统在博物馆的工作中发挥着至关重要…

ENSP-防火墙小实验

实验总要求 我的拓扑图&#xff1a; 具体配置 1.交换机 vlan: # sysname Lswl # vlan batch 2 to 3 # 接口&#xff1a; [LSWl]int e 0/0/2 [LSWl-Ethernet0/0/2ldisplay this # interface Ethernet0/0/2port link-type accessport default vlan 2 # return [LsWl-Ethernet0…

nohup java -jar 启动java项目

hi&#xff0c;我是程序员王也&#xff0c;一个资深Java开发工程师&#xff0c;平时十分热衷于技术副业变现和各种搞钱项目的程序员~&#xff0c;如果你也是&#xff0c;可以一起交流交流。 今天我们聊聊linux中运行java jar包的问题~ 理解nohup命令 nohup命令的基本概念 noh…

对于一些未来规划的想法

文章目录 一、关于如何加技能点二、关于大厂、中厂、小厂三、大语言模型、元宇宙、VR、虚拟货币四、关于嵌入式的技术路线五、其他 一、关于如何加技能点 首先进入课题组&#xff0c;务必先把眼前的东西学好&#xff0c;做好当下的事情。 也是关于个人的发展规划的话&#xff…

强强联手促发展,奋楫共进启新篇 | 中创算力与中国移动签订战略合作协议

在数字化浪潮席卷全球的今天&#xff0c;河南中创算力信息科技有限公司与中国移动通信集团河南有限公司郑州分公司携手并进&#xff0c;共同开启了数字化转型的新篇章。 2024年7月10日上午&#xff0c;双方在中国移动郑州分公司隆重举行了战略合作协议的签约仪式。双方将在5G技…

炎热夏季环境下的文物保护:挑战与策略

随着夏季的到来&#xff0c;高温和强烈的日照给文物保护带来了新的挑战。在这个季节&#xff0c;文物不仅面临着物理和化学损害的风险&#xff0c;还可能因为管理不善而遭受人为破坏。因此&#xff0c;探讨如何在夏季炎热天气中做好文物保护工作具有重要意义。 夏季炎热天气对文…

海外电商SAAS平台对接流程

海外电商SAAS平台对接流程通常包括以下几个步骤&#xff0c;需要说明的是对接这些平台存在一定的风险&#xff0c;为了降低这些风险&#xff0c;建议您选择信誉良好的平台&#xff0c;并做好安全防护措施。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xf…

FastAPI 学习之路(三十九)对开发接口进行测试

概况 对于开发好的接口需要进行测试之后才能发布。当我们在开发的时候&#xff0c;没有提前测试&#xff0c;我们也要对我们自己的接口进行测试&#xff0c;那么FastApi自身也带有针对开发的接口进行测试的功能。我们看下FastApi官方给我们提供了什么样的支持。 接口还是基于…