红外波形拷贝式解码思路

本文介绍了红外波形拷贝式解码的思路,包括计算载波频率、复制红外数据包、识别重发模式以及特殊格式处理。通过MCU中断和定时器判断载波单元与闲置单元,实现数据包拷贝。同时,文中提出了载波频率计算方法和重发模式的识别策略,适用于不同类型的红外遥控器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过普通的红外发射管,兼作红外接收管使用。通过示波器看到了原始的带红外载波的信号,那么Decoder需要做的是:

1、计算载波频率;

2、复制一个完整的红外数据包;

3、识别红外数据包中的重发模式(重发数据包/发送固定的Repeate波形/……);

4、特殊格式的识别与处理,如RC5的触发bit翻转;


解决思路:

1、MCU开启下降沿触发中断,通过观察格式类型,带载波的单元长度+一个闲置电平(TX端为Low,RX端为High)远小于Timer的计数范围,同时,载波频率通常在38-500Khz之间,因此,载波两次进入终端的最长时间理论值为26uS,因此通过一个阀值判断可以很简单的识别载波单元与闲置单元。

2、有了上面的基础,我们就能够顺利的拷贝载波单元与闲置单元的执行时间,即实现了拷贝红外数据包;示例如下:

CurrTimVal = GetCNTTIM();
IdleTime = CurrTimVal - preTimerVal;
if(IdleTime > CARRERMAXPERIOD)
{
    CopyTimeBuf[p] = preTimerVal - preStartVal;
    CopyTimeBuf[p+1]= IdleTime;
    preStartVal = CurrTimVal;
    p +=2;
    preTimerVal = tmpTimer
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值