【遥控】遥控接收头不灵敏的问题
接收头不灵敏基本三种情况造成:
1、外部灯光影响红外控制。
2、接收头上缺少滤波电容。
3、NEC红外遥控发数据时,一个脉冲对应560us的连续载波,一个逻辑1传输需要2.25ms ( 560us脉冲+1680us低电平),一个逻辑0的传输需要1.125ms ( 560us脉冲+560us低电平)
这是标准NEC协议的逻辑1和0,遥控头接收数据可能对这个逻辑1和逻辑0代表的脉冲及低电平的时间不标准,导致有时可以接收到有时接收不到,故要修改脉冲和低电平的时间。例如rda方案:
修改寄存器的值改变逻辑1和0的时间。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | #define OP_IR_Protocol_reg 0x88930324 /* 0xbe080004 */ #define OP_IR_Interrupt_en_reg 0x000f0000 /* 0xbe080008 */ #define OP_IR_Interrupt_staus 0x00000000 /* 0xbe08000c */ #define OP_IR_MinSpaceBetweenPacket 0x01b001b0 /* 0xbe080010 */ #define OP_IR_Max_Min_Symbol 0x0118004b /* 0xbe080014 */ #define OP_IR_Max_Min_Short_Mark 0x00450025 /* 0xbe080018 */ #define OP_IR_Max_Min_Short_Space 0x00450025 /* 0xbe08001c */ #define OP_IR_Max_Min_Long_Mark 0x00d20071 /* 0xbe080020 */ #define OP_IR_Max_Min_Head_Mark 0x04630184 /* 0xbe080024 */ #define OP_IR_Max_Min_Head_Space 0x0231012e /* 0xbe080028 */ #define OP_IR_REG_2C 0x00000000 /* 0xbe08002c */ #define OP_IR_Max_Min_Repeat_Space 0x01180097 /* 0xbe080030 */ #define OP_IR_Extra_Decode_Option 0x00000002 /* 0xbe080034 */ #define OP_IR_REG_38 0x00000000 /* 0xbe080038 */ #define OP_IR_WatchDog_Timeout 0x00000000 /* 0xbe08003c (unused now) */ #define OP_IR_Repeat_Threshold 0x00020102 /* 0xbe080040 */ #define OP_IR_Packet_Timeout_Threshold 0x16022d60 /* 0xbe080044 */ #define OP_IR_Key_Press_Counter 0x00000000 /* 0xbe080048 */ #define OP_IR_Protocol_Type_Option 0x00b02009 /* 0xbe08004c */ #define OP_IR_Internal_Counter 0x00000000 /* 0xbe080050 */ #define OP_IR_Bit47_to_Bit16 0x00000000 /* 0xbe080054 */ #define OP_IR_Receiver_Signal 0x00000000 /* 0xbe080058 */ #define OP_IR_Power_Code_Option 0x00000003 /* 0xbe08005c */ #define OP_IR_Power_Code_A_Low_Channel 0x906fa25d /* 0xbe080060 */ #define OP_IR_Power_Code_A_High_Channel 0x00000000 /* 0xbe080064 */ #define OP_IR_Power_Code_B_Low_Channel 0x00000000 /* 0xbe080068 */ #define OP_IR_Power_Code_B_High_Channel 0x00000000 /* 0xbe08006c */ #define OP_IR_Power_Code_C_Low_Channel 0x00000000 /* 0xbe080070 */ #define OP_IR_Power_Code_C_High_Channel 0x00000000 /* 0xbe080074 */ #define OP_IR_Power_Code_D_Low_Channel 0x00000000 /* 0xbe080078 */ #define OP_IR_Power_Code_D_High_Channel 0x00000000 /* 0xbe08007c */ #define OP_IR_Max_Min_Long1_MarkSpace 0x00000000 /* 0xbe080080 */ #define OP_IR_Max_Min_Long2_MarkSpace 0x00000000 /* 0xbe080084 */ |
分类:
STM32学习
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2018-11-02 PCM EQ DRC 音频处理