一个网站多个域名备案,安徽工程建设信息网站,杭州优化排名哪家好,在深圳做it的要做网站网站吗文章目录 前言一、板载资源介绍二、具体步骤1. 确定红外接收头引脚编号2. 下载infrared软件包3. 配置infrared软件包4. 打开STM32CubeMX进行相关配置4.1 使用外部高速时钟#xff0c;并修改时钟树4.2 打开定时器16(定时器根据自己需求调整)4.3 打开串口4.4 生成工程 5. 打开HW… 文章目录 前言一、板载资源介绍二、具体步骤1. 确定红外接收头引脚编号2. 下载infrared软件包3. 配置infrared软件包4. 打开STM32CubeMX进行相关配置4.1 使用外部高速时钟并修改时钟树4.2 打开定时器16(定时器根据自己需求调整)4.3 打开串口4.4 生成工程 5. 打开HWTIMER设备驱动6. 配置定时器7. 编译烧录 前言
本文采用开发板为STM32L475VET6(潘多拉开发板),使用RT_Thread Studio基于芯片开发模式完成红外遥控接收实验 一、板载资源介绍 二、具体步骤
1. 确定红外接收头引脚编号
STM32L475VET6(潘多拉开发板)红外接收头对应的引脚为PB117号可参考工程项目中的drv.gpio.c确定
2. 下载infrared软件包
使用NEC协议
3. 配置infrared软件包
这里的定时器作者试过timer16可以timer3不可以
4. 打开STM32CubeMX进行相关配置
4.1 使用外部高速时钟并修改时钟树 4.2 打开定时器16(定时器根据自己需求调整) 4.3 打开串口 4.4 生成工程 5. 打开HWTIMER设备驱动
在RT-Thread Setting的组件栏中
6. 配置定时器
RT-ThreadSTM32L475VET6定时器配置
7. 编译烧录
测试代码
#include rtthread.h
#include rtdevice.h
#include board.h
#include decoder.h/* defined the LED0 pin: PE7 */
#define LEDG GET_PIN(E, 8)int main(void)
{int count 1;/* set LED0 pin mode to output */rt_pin_mode(LEDG, PIN_MODE_OUTPUT);rt_pin_write(LEDG, PIN_HIGH);struct infrared_decoder_data Tdata;ir_select_decoder(nec);while (count){if(infrared_read(nec, Tdata)RT_EOK){rt_pin_write(LEDG, PIN_LOW);HAL_Delay(200);printf(recive: addr:0x%02X key:0x%02X repeat:%d \n,Tdata.data.nec.addr,Tdata.data.nec.key,Tdata.data.nec.repeat);}rt_pin_write(LEDG, PIN_HIGH);}return RT_EOK;
}
按下遥控器终端会有显示