发新帖我要提问
12
返回列表
打印
[其他ST产品]

STM32 NEC红外遥控器解码

[复制链接]
楼主: wang6623
手机看帖
扫描二维码
随时随地手机跟帖
21
wang6623|  楼主 | 2023-2-28 23:34 | 只看该作者 回帖奖励 |倒序浏览
void TIM4_IRQHandler(void) //TIM4中断
{
       
        if(TIM4->SR&0X0001)//溢出中断
        {
        key = Remote_Scan();//获取红外遥控键值
                 if(key)
                 {
                        switch(key)
                        {
                                case 104:num1=0x00; num = smg_num[1]; BEEP=0;break; //按键'1'
                                case 152:num1=0x00;num=smg_num[2];BEEP=0;break;     //按键'2'          
                                case 176:num1=0x00;num=smg_num[3];BEEP=0;break;     //按键'3'            
                                case 48:num1=0x00;num=smg_num[4];BEEP=0;break;      //按键'4'                    
                                case 24:num1=0x00;num=smg_num[5];BEEP=0;break;      //按键'5'                    
                                case 122:num1=0x00;num=smg_num[6];BEEP=0;break;     //按键'6'                  
                                case 16:num1=0x00;num=smg_num[7];BEEP=0;break;      //按键'7'                                                                  
                                case 56:num1=0x00;num=smg_num[8];BEEP=0;break;      //按键'8'         
                                case 90:num1=0x00;num=smg_num[9];BEEP=0;break;      //按键'9'
                                case 66:num1=0x00;num=smg_num[0];BEEP=0;break;      //按键'0'
                                case 82:num1=0x00;num=smg_num[17];BEEP=0;break;     //按键'DELETE'
                                case 162:num1=smg_num[1];num=smg_num[0];BEEP=0; break;//按键'POWER'   
                                case 98:num1=smg_num[1];num=smg_num[1];BEEP=0;  break;//按键'UP'
                                case 226:num1=smg_num[1];num=smg_num[2];BEEP=0; break;//按键'ALIENTEK'
                                case 34:num1=smg_num[1];num=smg_num[3];BEEP=0;  break;//按键'LEFT'
                                case 2:num1=smg_num[1];num=smg_num[4];BEEP=0;   break;//按键'PLAY'
                                case 194:num1=smg_num[1];num=smg_num[5];BEEP=0; break;//按键'RIGHT'
                                case 224:num1=smg_num[1];num=smg_num[6];BEEP=0; break;//按键'VOL-'
                                case 168:num1=smg_num[1];num=smg_num[7];BEEP=0; break;//按键'DOWN'
                                case 144:num1=smg_num[1];num=smg_num[8];BEEP=0; break;//按键'VOL+'
                        }

使用特权

评论回复
22
wang6623|  楼主 | 2023-2-28 23:34 | 只看该作者
                 }else
                 {
                        BEEP=1;
                 }
                 if(smg_wei==6)//数码管位
                 {
                         smg_duan = num1;
                 }
                 else if(smg_wei==7)//数码管位
                 {
                         smg_duan = num;
                 }
                 if(smg_flag) LED_Write_Data(0x00,smg_wei);//消除鬼影(段码不显示)
                 else           LED_Write_Data(smg_duan,smg_wei);//正常显示
                 LED_Refresh();//数码管数据更新
                 smg_flag=!smg_flag;
                 if(smg_flag==0)//正常显示才更新位码
                 {
                         smg_wei++;
                     if(smg_wei==8) smg_wei=6;
                 }
                 t++;
                 if(t==250)//LED0每500MS闪烁
                 {
                        t=0;
                        LED0=!LED0;
                 }
        }
        TIM4->SR&=~(1<<0);//清除中断标志位
               
}

使用特权

评论回复
23
wang6623|  楼主 | 2023-2-28 23:34 | 只看该作者
总结
通过本实验了解了NEC红外遥控解码的基本原理。红外遥控器的键码都是固定的,不同的遥控器的键码可能会不一样。红外遥控器也可以用红外发射管自己搭建发射电路,单片机程序进行编码,红外接收头根据编码规则进行解码。

使用特权

评论回复
24
帛灿灿| | 2024-5-6 08:11 | 只看该作者

MinUnit 是一个 用 C 语言编写的极其简单的单元测试框架

使用特权

评论回复
25
Bblythe| | 2024-5-6 09:14 | 只看该作者

功率开关和整流器的交流电流环路包含非常高的PWM开关电源典型的梯形电流波形

使用特权

评论回复
26
周半梅| | 2024-5-6 11:10 | 只看该作者

电源电压处于1.6V到5.5V之间

使用特权

评论回复
27
Pulitzer| | 2024-5-6 12:13 | 只看该作者

无法提供开关电源所需的脉冲电流

使用特权

评论回复
28
童雨竹| | 2024-5-6 14:09 | 只看该作者

单片机的外部都连接有象电池等电源部分

使用特权

评论回复
29
Wordsworth| | 2024-5-6 15:12 | 只看该作者

电源内部都有四个电流环路

使用特权

评论回复
30
Clyde011| | 2024-5-6 16:15 | 只看该作者

作为电路的共同电位参考点

使用特权

评论回复
31
公羊子丹| | 2024-5-6 17:08 | 只看该作者

主时钟振荡器主要用作CPU的工作时钟

使用特权

评论回复
32
万图| | 2024-5-6 18:11 | 只看该作者

传送直流信号的引线

使用特权

评论回复
33
Uriah| | 2024-5-6 19:14 | 只看该作者

Buck(或降压)变换器功率部分布局

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则