详细 IR NEC 红外驱动调试数据

 详细 IR NEC 红外驱动调试数据:

TX调试注意:

1). 数据处理时,需要进行LSB处理,也就是低位在先,可以右移处理,但我用的另外方式:

 for(j=0;j<8;j++)
        {
            if(txcode[i] & (0x1 << j))
            {
                /* Logic '1' :560us(carrier), 1680us(low) */
                tx->txbuf[index++] = 0x8000 | NEC_L10_560US;
                tx->txbuf[index++] = NEC_L1_1680US;
            }
            else
            {
                /* Logic '0' :560us(carrier), 560us(low) */
                tx->txbuf[index++] = 0x8000 | NEC_L10_560US;
                tx->txbuf[index++] = NEC_L10_560US;
            }
            //next bit
            //txcode[j] = txcode[j] >> 1;
        }

 

一. NEC TX调式数据:

1. 发送频率:38.46KHz

占空比:1:3

之前的占空比配置不对,修正后的占空比如下:

IR  载波频率及占空比

2. 引导码:

程式设定:9ms+4.5ms

实测:9.13ms + 4.69ms

||||||||||||||||___|

 

IR 引导码

3. Logic "1"

程式设定:650us+1680us

实测:carrier 688us + 1827us

 

IR logic "1"

4. Logic "0"

程式设定:650us+ 650us

实测:carrier 688us + 715us

IR logic "0"

 

注:为什么实测跟程式设定有点误差?

是因为timer hander有处理代码,造成的一些偏差。

对应处理其实可以timer设定的时候,可以适当根据代码处理减少一点时间来达到或尽量解决目标程式时间。

根据实测时间时间延时,减少timer时间,测试比较接近目标值。

 

 

 

5. 发送一个完整的波形NEC 数据波形:

输入:address:0x0b , code: 0x05

因为LSB数据在前,所以

程式输出: 9ms|4.5ms| 1101 0000 0010 1111 1010 0000 0101 1111

实测波形:

实测IR NEC TX 波形图

|9ms|4.5ms|1101|0000|0010|1111|1010|0000|0101|1111|

跟程式设定输出一致。

 

6. repeat 重复码:

目标:9ms+2.25ms+560us

测试:8.966ms+2.293ms+675us

 

IR repeat 波形图

repeat 周期:110ms:

IR repeat周期110ms

7. 用逻辑分析仪捕捉到的波形及数据解析:

 

IR TX 完整波形及协议解析

address: 0x0B ,~address: 0xF4

cmd: 0x05,~cmd:0xFA

repeat code:1

对应的debug log:

IR NEC TX debug log

跟捉到的波形及解码一致: input: address: 0x0b, command: 0x05

 

 

二. NEC RX调式数据:

 

1. 从逻辑分析仪抓的波形及解析到的NEC RX协议code

NEC RX DECODE波形和协议解析图

此图为TCL IR NEC 红外遥控器开关机键捕捉到的波形和解析出来的code.

address: 0x08,~address: 0xF7

cmd: 0x9B, ~cmd: 0x64

repeat code: 1

 

2. 串口debug的得到的ir rx decode数据:

NEC RX DECODE debug log

跟逻辑分析仪捕捉decode的数据一致: 0x649BF708

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值