找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2682|回復(fù): 0
收起左側(cè)

STM32紅外遙控脈寬解碼程序 PB15中斷TIM定時(shí)器

[復(fù)制鏈接]
ID:716413 發(fā)表于 2020-5-17 20:35 | 顯示全部樓層 |閱讀模式
近來(lái)寫了幾個(gè)紅外遙解碼,概括一下,關(guān)鍵在于脈寬測(cè)定。
下邊這個(gè)程序在STM32F103C8上運(yùn)行。
定時(shí)器中斷計(jì)數(shù),接收頭外部中斷 ,判斷脈寬計(jì)數(shù),實(shí)現(xiàn)解碼。pa0-pa7顯示鍵碼

關(guān)鍵點(diǎn)是:
定時(shí)器中斷計(jì)數(shù)器+1,每秒10000次(100us),
則起始碼為計(jì)數(shù)=0X5A次左右,1碼為計(jì)數(shù)0X16=左右,0碼為計(jì)數(shù)=0x0C左右。
這個(gè)左右一般在上下1個(gè)數(shù),程序中放寬到上下4個(gè)數(shù)。

                   if(Tim>=0x40 && Tim<0x70)
                                {Ok=1;//收到起始信號(hào)
                                                         Num=0;        
                                                        sdata0=Tim;        //試驗(yàn)=5a-5b
                                                        }
                                                        
                         else if(Tim>=0x12 && Tim<0x1B)
                               {
                                      hw_jsm>>=1;
                                     hw_jsm |= 0x80000000;//收到數(shù)據(jù) 1
                                     // beep=!beep;
                               Num++;
                                                        sdata1=Tim;        //試驗(yàn)=16-17
                               }
                                                        
                         else if(Tim>=0x07 && Tim<0x10)        
                                     {  
                                      hw_jsm>>=1;
                                     hw_jsm |=0;//收到數(shù)據(jù) 0
                                     // beep=!beep;
                               Num++;
                                                        sdata2=Tim;        //試驗(yàn)=0b-0c
                                                }
                                                
                  if(Num==32)
                            {
                             hw_jsbz=1;
                             Num=0;
                                         DataD=hw_jsm;//結(jié)果出來(lái)了
                                   Ok=0;
                            }
          PB15中斷TIM定時(shí)器紅外解碼.7z (602.18 KB, 下載次數(shù): 60)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表