STM32 cubeMX 人体红外模块实验

本文代码使用HAL库。

文章目录

前言

  • 实验开发板:STM32F051K8。
  • 所需软件:keil5 , cubeMX 。
  • 实验目的:了解 人体红外模块 的配置和使用。

一、人体红外模块介绍

人体红外模块是一种常用于感应人体活动的传感器装置。它基于红外线技术,可以检测周围环境中的红外辐射,从而感知人体的存在。这类传感器主要应用于安防系统、自动照明系统、智能家居等领域。

通常,人体红外模块的检测范围在几米到十几米之间,具体取决于型号和设计,典型的工作电压范围在3V到5V之间。 大多数模块具有可调节的灵敏度,以适应不同的应用场景。人体红外模块的输出通常是数字信号,即高电平或低电平,用于表示是否检测到人体。

工作原理:

人体红外模块的工作基于人体辐射的红外能量。人体通常以摄氏37度左右的温度放射红外辐射。传感器通过探测周围环境中的红外辐射变化来判断是否有人体活动。

二、人体红外原理图解读

人体红外模块有三个引脚,分别是接 VCC电源, GCD地,D2输入引脚。

通过模块的 D2端口去控制检测是否有人存在。D2 端口连接 P2排插的D2口。

当有人存在时 D2检测到高电平,当没有人时 D2检测是低电平。

三、STM32 cubeMX配置红外模块

只需要将一个GPIO端口配置为输入即可。

四、代码编写

红外模块检测是否有人,并使用串口助手进行打印。

c 复制代码
// 检测端口的引脚电平
if(HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_8))			
{
	printf("have people");		// 有人
}
else
{
	printf("no people");			// 没有人
}

示例:


总结

下篇文章为大家介绍温湿度模块实验。

相关推荐
松涛和鸣1 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂2 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
上海合宙LuatOS2 小时前
LuatOS核心库API——【audio 】
java·网络·单片机·嵌入式硬件·物联网·音视频·硬件工程
Hhh __灏2 小时前
stm32的SRAM内存不足如何分析和优化?堆栈空间如何优化?
单片机
LS_learner3 小时前
Snapd和Apt—Linux 上两种完全不同的软件包管理系统
嵌入式硬件
点灯小铭3 小时前
基于51单片机的双档交流电压表设计与实现
单片机·嵌入式硬件·毕业设计·51单片机·课程设计·期末大作业
厦门辰迈智慧科技有限公司3 小时前
全功能数据采集仪mcu主要用途
单片机·嵌入式硬件·水库大坝安全监测·数据采集仪mcu
jl48638214 小时前
变比测试仪显示屏的“标杆“配置!如何兼顾30000小时寿命与六角矢量图精准显示?
人工智能·经验分享·嵌入式硬件·物联网·人机交互
清风6666664 小时前
基于单片机的智能电热水壶设计与温度控制系统
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业