当前位置: 首页 > news >正文

【stm32简单外设篇】- HC-SR501 / 人体红外被动红外传感器

一、适用场景
适用场景:人体/运动检测(入侵报警、走廊/楼道自动照明、智能家居存在检测、节能灯控、触发录像/抓拍、嵌入式低功耗唤醒实验)。

二、器材清单
HC-SR501 PIR 模块 ×1
stm32f103(或其它 STM32)开发板 ×1
若干杜邦线(公对母)×1组
5V 稳压电源(若模块标注 5V)×1(注意部分模块可 3.3V 工作)
三、工作原理(要点)

PIR(被动红外)探测:传感器通过焦平面上的热释电探测元件感知环境红外辐射的瞬时变化(如人体移动引起的红外对比变化),模块内部放大并经过比较器/整形输出高电平脉冲表示检测到“运动/人体通过”。

输出逻辑:模块在检测到活动时 DATA 输出高电平(且保持 TIME 设定的大约 5s–300s 之间);若选择非重复触发或短触发模式,输出可能只在第一次检测到活动时产生脉冲。输出为 TTL 级别(高电平约接近 VCC),不同模块在 5V/3.3V 下表现不同,接入 MCU 前请确认电压兼容性或使用分压/电平转换。

四、接线示意
VCC → +5V

GND → GND

标准库

PA1 →out

HAL库

PA1 →out

五、示例代码

标准库

#include "stm32f10x.h"
#include "stdio.h"
#include "bsp_SysTick.h"
#include "bsp_usart.h"void gpio_init()
{GPIO_InitTypeDef PA;//使能时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);PA.GPIO_Pin = GPIO_Pin_1;
//	PA.GPIO_Mode = GPIO_Mode_IN_FLOATING;PA.GPIO_Mode = GPIO_Mode_IPD;GPIO_Init(GPIOA,&PA);
}int main()
{USART_Config();SysTick_Init();gpio_init();while(1){if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1) == SET){Usart_SendString(USART1,"come on\n");}else{Usart_SendString(USART1,"leave\n");}Delay_us(1000000);}
//	return 0;
}

HAL库

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();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 *//* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){if(HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0) == 1)HAL_UART_Transmit(&huart1,"有人路过\r\n", strlen("有人路过\r\n"), HAL_MAX_DELAY);elseHAL_UART_Transmit(&huart1,"无人路过\r\n", strlen("无人路过\r\n"), HAL_MAX_DELAY);HAL_Delay(1000);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */
}

    六、讲解视频

    https://www.bilibili.com/video/BV1Km1LBiEHi/?spm_id_from=333.1387.upload.video_card.click&vd_source=f7dfe1b14f260b9cc3a146d2dbfd0719

    摘要:本文介绍了如何在 STM32 上使用 EC11 增量式旋转编码器(带按键):适用场景、器材清单、正交编码工作原理、接线方式,以及推荐的 TIM 硬件编码器模式与通用的 EXTI+状态机软件解码实现。提供了按键去抖与短/长按判定示例,并列出实战注意点(去抖、计数器回绕、分辨率选择与安装细节),适合用于嵌入式 UI 与参数控制场景。

    http://www.dtcms.com/a/578857.html

    相关文章:

  • 电子商务网站开发的关键点沈阳建设工程交易网官网
  • 无锡网站建设哪家公司好做网站和app多少费用
  • 登录建设厅网站的是企业锁吗h5制作软件app手机版
  • PLM系统集成3D一览通,实现PLM系统内3D看图与设计评审协同数字化
  • 旅游网站代码html电子产品网站模板
  • 网站收录后才可以做排名吗WordPress打开有广告
  • 构建可靠的 AI 工作流:我们在 MCP 架构下的实践与经验
  • 云端做效果图的网站快站优惠券去哪里找
  • 机器学习日报13
  • 潍坊网站设计公司电视剧在线观看免费影视网站
  • 福建省武夷山市城乡建设网站汉中专业网站建设服务
  • 东城网站开发公司精准营销平台
  • 定义一个能接受可选参数的元类:Python高级元编程指南
  • 公司网站建设的目的做iframe跳转怎么自适应网站
  • 同性恋色做视频网站有哪些广州品牌网站建设
  • 免费的网站模板有哪些网站增加新闻功能
  • 模板云网站建设哪些属于网站评论
  • 前端FAQ: Vue 3 与 Vue 2 相⽐有哪些重要的改进?
  • 网站设计论文范文大全集怎么做一帘幽梦网站
  • 下载网站 源码软件开发用什么软件
  • 做网站用什么编程软件网页设计代码基础模板
  • 论软件设计模式及应用
  • 购物车 信息技术分院网站后台设计课题组黄山网站建设费用
  • 闵行 网站建设公司seo网站设计网页单页设计
  • 【复习】计网每日一题1105大题---ARP、NAT、路由器、IP数据报、冲突域、广播域、100BASE-F、10BASE-T
  • 黄江东莞网站建设部队网站设计
  • 网站子域名 更换优化营商环境建议
  • DWG选型指南:VJMAP原生兼容与GISBox轻量化发布的优劣势对比
  • Nginx的使用教程以及用途
  • 个人网站开发项目报告什么是网站