本文主要是介绍我的小实验项目:实现人体红外采集控制LED灯亮灭,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
从传感器电路图中找到红外感应,找到接口D2,可以看出,采集的信息从D2进入
从核心板电路图找到D2接口,发现引脚为PB8
并用相似的方法,找到用于代表有人无人的LED灯
在STM32CubeMx里设置
在Keil里设置代码
main.c:
/* Infinite loop *//* USER CODE BEGIN WHILE */while (1){if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_8)){HAL_GPIO_WritePin(GPIOB,GPIO_PIN_2,GPIO_PIN_RESET);HAL_Delay(250); //黄的有人HAL_GPIO_WritePin(GPIOB,GPIO_PIN_2,GPIO_PIN_SET);HAL_Delay(250); HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_SET);}else{HAL_GPIO_WritePin(GPIOB,GPIO_PIN_2,GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_RESET);HAL_Delay(250); //绿的无人HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_SET);HAL_Delay(250); }/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}
运行结果:
识别到无人时,闪绿灯
识别到有人时,闪黄灯
这篇关于我的小实验项目:实现人体红外采集控制LED灯亮灭的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!