短小精悍的红外遥控解码STM32CUBEMX,NEC格式,

针对网上复杂的红外遥控解码代码,本文提供了一段精简版的STM32CUBEMX实现,适用于NEC格式。实验环境为KEIL MDK5,使用STM32F103C8T6开发板及JLINK OBV2仿真器。虽然介绍中提到与ATMEL STUDIO7 ATSAMD RTC外部中断相关,但主要聚焦于STM32的红外解码功能。
摘要由CSDN通过智能技术生成

网上查到的代码都太长了,精简了下,功能完备。

环境:KEIL MDK5

实验板:STM32F103C8T6,仿真:JLINK  OBV2,SEGGER RTT

#include "tim.h"
#include "SEGGER_RTT.H"
uint32_t Code=0;
uint32_t preCode;
uint8_t count=0;
uint16_t lenth;
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
{
    lenth= HAL_TIM_ReadCapturedValue(&htim16,TIM_CHANNEL_1);
    //    SEGGER_RTT_printf(0,"[%d ,%d]",lenth,count);
    __HAL_TIM_SET_COUNTER(&htim16,0);
    if(lenth<1500)
    count++;
    else 
        {
        if(count==1&lenth<10000)
            //###################################################连续按键
        {SEGGER_RTT_printf(0,"repeat:[%08X]\r\n",preCode);
        if(preCode==0xffa25c)    
        HAL_GPIO_TogglePin(led_GPIO_Port,led_Pin);
        }
        count=0;
        }
            if(count==33)
            {
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值