找回密码
 立即注册
查看: 140|回复: 3

大佬们,红外的IR_TxPulse函数可以这样用吗?为啥没效果呢?

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:220
  • 最近打卡:2025-05-01 18:20:12

79

主题

631

回帖

1132

积分

金牌会员

积分
1132
发表于 2025-2-23 01:47:10 | 显示全部楼层 |阅读模式

u16 rawDataAirOn1[197] = {6122, 7424,  514, 1674,  514, 1674,  514, 1676,  514, 1674,  514, 1674,  514, 1676,  512, 1676,  514, 1674,  514, 580,  514, 580,  514, 580,  514, 580,  514, 578,  514, 580,  514, 580,  514, 578,  514, 1676,  514, 1674,  514, 1674,  514, 1674,  514, 1676,  512, 1674,  514, 1674,  514, 1676,  514, 578,  514, 580,  514, 582,  512, 582,  512, 580,  514, 580,  514, 580,  514, 580,  514, 1676,  514, 1674,  514, 1674,  514, 1674,  514, 1676,  514, 1672,  514, 1674,  514, 1674,  514, 580,  512, 580,  514, 578,  514, 580,  512, 582,  514, 580,  514, 580,  514, 580,  514, 1674,  514, 580,  514, 1674,  514, 580,  514, 580,  514, 580,  512, 582,  514, 1676,  512, 580,  514, 1674,  514, 580,  514, 1676,  512, 1676,  512, 1674,  512, 1676,  512, 582,  514, 580,  512, 1676,  512, 1676,  536, 558,  534, 1654,  512, 582,  536, 1654,  534, 1652,  534, 1654,  536, 558,  534, 558,  534, 1654,  536, 558,  534, 1654,  534, 558,  534, 560,  534, 560,  536, 1652,  534, 562,  534, 1652,  514, 582,  512, 1676,  512, 582,  512, 582,  512, 1674,  536, 560,  512, 1674,  536, 560,  512, 1674,  512, 584,  512, 1676,  512, 1678,  512, 7408,  512};  


u16 rawDataAirOn2[227] = {3410, 1670,  408, 1258,  410, 1260,  408, 424,  408, 426,  408, 424,  410, 1258,  408, 426,  408, 424,  408, 1258,  432, 1236,  408, 424,  430, 1236,  408, 426,  408, 424,  408, 1258,  408, 1258,  432, 402,  408, 1260,  408, 1258,  408, 426,  408, 424,  408, 1260,  408, 424,  408, 424,  408, 1258,  408, 424,  408, 426,  430, 404,  430, 402,  408, 424,  408, 426,  408, 426,  430, 402,  408, 426,  408, 426,  430, 402,  430, 402,  408, 426,  408, 426,  408, 426,  408, 426,  408, 426,  430, 1236,  430, 404,  408, 424,  408, 1260,  430, 404,  408, 424,  408, 1260,  408, 1260,  430, 404,  430, 404,  430, 402,  430, 404,  430, 402,  430, 402,  430, 402,  430, 1236,  408, 1260,  430, 404,  430, 402,  430, 402,  430, 404,  430, 404,  430, 402,  430, 1236,  430, 402,  430, 1238,  430, 1236,  430, 1236,  430, 404,  430, 404,  430, 404,  430, 402,  430, 404,  430, 404,  430, 404,  430, 404,  430, 404,  430, 404,  430, 402,  430, 404,  430, 402,  430, 404,  430, 404,  430, 404,  430, 402,  430, 402,  430, 404,  430, 404,  430, 404,  406, 426,  430, 404,  430, 402,  428, 404,  428, 404,  430, 404,  430, 404,  430, 404,  430, 404,  428, 404,  428, 404,  430, 404,  430, 404,  430, 404,  406, 426,  430, 1236,  430, 1238,  430, 1238,  430, 1236,  408, 1260,  430, 404,  406};  


u16 rawDataAirOn3[227] = {3492, 1746,  458, 1310,  462, 372,  460, 374,  460, 372,  460, 1312,  460, 396,  436, 398,  434, 400,  436, 1310,  460, 398,  436, 374,  460, 398,  434, 1312,  460, 398,  434, 398,  434, 398,  434, 1314,  458, 398,  436, 398,  436, 398,  436, 1312,  460, 372,  460, 374,  460, 400,  434, 1310,  460, 400,  434, 398,  434, 374,  460, 1310,  460, 398,  434, 374,  460, 372,  460, 1312,  460, 372,  460, 374,  460, 372,  460, 1310,  462, 370,  460, 374,  460, 374,  460, 374,  460, 374,  460, 1310,  460, 374,  460, 374,  460, 1312,  460, 374,  460, 372,  460, 1310,  460, 1312,  460, 372,  460, 372,  460, 374,  460, 372,  460, 374,  460, 374,  460, 374,  458, 1312,  460, 1310,  460, 372,  460, 374,  460, 372,  460, 374,  460, 372,  460, 374,  460, 1312,  482, 350,  482, 1290,  482, 352,  482, 350,  484, 350,  490, 370,  462, 372,  458, 376,  456, 376,  458, 376,  456, 374,  456, 376,  458, 376,  456, 376,  456, 376,  456, 376,  456, 376,  456, 376,  456, 376,  456, 378,  456, 378,  456, 378,  456, 378,  454, 402,  430, 402,  408, 426,  430, 404,  408, 426,  408, 426,  408, 426,  408, 426,  408, 424,  408, 426,  430, 378,  454, 378,  456, 378,  456, 376,  456, 376,  456, 374,  458, 376,  458, 1314,  458, 1314,  458, 374,  456, 376,  458, 376,  458, 1314,  456};  

u16 rawDataAirOff1[197] = {6142, 7428,  510, 1678,  508, 1680,  508, 1678,  510, 1678,  508, 1678,  508, 1680,  508, 1678,  508, 1680,  508, 584,  510, 584,  508, 584,  510, 584,  486, 608,  508, 584,  486, 608,  508, 586,  484, 1704,  484, 1702,  484, 1702,  484, 1704,  484, 1704,  484, 1706,  484, 1704,  484, 1704,  484, 608,  486, 606,  486, 608,  484, 608,  484, 610,  484, 608,  484, 608,  486, 608,  484, 1702,  484, 1702,  484, 1702,  486, 1702,  486, 1702,  484, 1702,  484, 1702,  486, 1702,  486, 608,  486, 608,  486, 608,  486, 606,  486, 608,  486, 608,  486, 608,  486, 606,  486, 1702,  486, 1704,  486, 1700,  486, 608,  484, 608,  486, 608,  484, 608,  486, 1702,  486, 608,  486, 608,  486, 608,  484, 1702,  486, 1702,  486, 1702,  486, 1702,  486, 608,  486, 608,  484, 1704,  486, 1700,  486, 608,  486, 1700,  486, 608,  486, 1702,  486, 1702,  486, 1702,  484, 608,  484, 608,  484, 1704,  484, 608,  484, 1702,  484, 608,  486, 608,  486, 608,  486, 1702,  484, 608,  486, 1702,  486, 608,  486, 1702,  484, 608,  484, 610,  486, 1702,  484, 608,  484, 1704,  484, 608,  484, 1704,  484, 608,  486, 1702,  484, 1702,  484, 7434,  484};

u16 rawDataAirOff2[227] = {3404, 1698,  404, 1262,  406, 1262,  402, 430,  402, 430,  404, 430,  402, 1264,  404, 428,  402, 430,  404, 1264,  380, 1286,  402, 430,  380, 1286,  404, 430,  402, 430,  404, 1262,  404, 1264,  380, 452,  380, 1286,  380, 1286,  380, 452,  404, 428,  382, 1286,  380, 454,  380, 452,  380, 1286,  380, 452,  380, 452,  380, 452,  380, 452,  380, 452,  380, 454,  380, 452,  380, 454,  380, 452,  380, 452,  380, 452,  380, 452,  380, 452,  380, 454,  380, 454,  380, 454,  380, 452,  380, 452,  380, 452,  380, 452,  380, 1286,  380, 454,  380, 452,  380, 1286,  380, 1286,  380, 452,  380, 452,  380, 452,  380, 452,  380, 452,  380, 452,  380, 454,  380, 1286,  380, 1286,  380, 450,  380, 454,  380, 452,  380, 452,  380, 452,  380, 452,  380, 1288,  380, 452,  380, 1286,  380, 1288,  380, 1288,  380, 454,  380, 452,  380, 452,  380, 454,  380, 454,  380, 452,  380, 454,  380, 454,  380, 454,  380, 452,  380, 454,  380, 452,  380, 452,  380, 454,  380, 454,  380, 452,  380, 454,  380, 454,  380, 452,  380, 452,  380, 454,  380, 454,  380, 454,  380, 454,  380, 454,  380, 454,  380, 452,  380, 454,  380, 454,  380, 454,  380, 454,  380, 454,  380, 452,  380, 452,  380, 454,  382, 452,  380, 454,  378, 1288,  380, 1288,  380, 1286,  378, 1288,  380, 452,  380};

u16 rawDataAirOff3[227] = {3510, 1750,  454, 1314,  456, 376,  456, 378,  456, 376,  456, 1316,  456, 376,  456, 376,  456, 376,  434, 1338,  434, 400,  434, 400,  434, 400,  434, 1338,  434, 398,  434, 400,  434, 400,  434, 1336,  434, 400,  432, 400,  432, 400,  432, 1338,  434, 400,  432, 400,  434, 400,  434, 1340,  430, 400,  432, 400,  434, 400,  432, 1338,  432, 398,  434, 400,  432, 400,  434, 1336,  432, 400,  432, 400,  434, 398,  434, 1338,  432, 400,  432, 400,  434, 400,  434, 400,  434, 398,  432, 400,  432, 400,  432, 400,  432, 1338,  432, 400,  432, 400,  434, 1338,  432, 1338,  432, 400,  432, 400,  432, 402,  432, 400,  432, 398,  434, 400,  434, 402,  434, 1338,  434, 1338,  432, 398,  432, 402,  432, 400,  432, 400,  432, 400,  432, 400,  434, 1338,  432, 400,  432, 1340,  432, 402,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 402,  432, 402,  432, 402,  432, 402,  432, 400,  432, 400,  432, 400,  432, 400,  432, 400,  432, 402,  432, 400,  432, 400,  432, 400,  432, 400,  432, 402,  432, 402,  432, 402,  432, 402,  432, 400,  432, 402,  432, 400,  432, 402,  432, 1338,  432, 402,  432, 400,  432, 400,  432, 1340,  430};  



void IrWave(u16 *raw, int rawNum)
{
    int i;
    for(i=0; i<rawNum; i++)
    {
        if (i % 2 == 0) {
            IR_TxPulse(raw/1000*38);   
        } else {
            IR_TxSpace(raw/1000*38);   
        }
    }
}




void IrWave(u16 *raw, int rawNum)
{
    int i;
    for(i=0; i<rawNum; i++)
    {
        if (i % 2 == 1) {
            IR_TxPulse(raw/1000*38);   
        } else {
            IR_TxSpace(raw/1000*38);   
        }
    }
}

回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:220
  • 最近打卡:2025-05-01 18:20:12

79

主题

631

回帖

1132

积分

金牌会员

积分
1132
发表于 2025-2-23 13:30:47 | 显示全部楼层
IR_TxPulse(raw[i]/1000.0*38);   //  一不小心就搞出个bug。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:123
  • 最近打卡:2025-04-19 16:12:35
已绑定手机

60

主题

777

回帖

4001

积分

论坛元老

自定义头衔

积分
4001
发表于 2025-2-23 22:24:17 | 显示全部楼层
最好提前计算出来raw[i]/1000.0*38的数值,并存储最终结果。因为这个发送过程要求时间精准。如果你在这里实时计算参数,可能耗时过长,导致红外时序混乱
联系我请点击左下角的【回复】按钮,否则我收不到消息提
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:220
  • 最近打卡:2025-05-01 18:20:12

79

主题

631

回帖

1132

积分

金牌会员

积分
1132
发表于 2025-2-23 22:51:10 | 显示全部楼层
VC*** 发表于 2025-2-23 22:24
最好提前计算出来raw/1000.0*38的数值,并存储最终结果。因为这个发送过程要求时间精准。如果你在这里实时 ...

嗯嗯,我刚刚试过了,可以的。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 15:46 , Processed in 0.123887 second(s), 64 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表