紅外遙控器解碼程序_第1頁
紅外遙控器解碼程序_第2頁
紅外遙控器解碼程序_第3頁
紅外遙控器解碼程序_第4頁
紅外遙控器解碼程序_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、/=/ 紅外遙控器解碼程序演示 / 本程序主要將現(xiàn)在比較常用TX1300遙控器進(jìn)行解碼,將解碼后的數(shù)據(jù)通過P2端/口的數(shù)碼管顯示出來,為了更好的看到運(yùn)行過程,特加了三個(gè)指示燈用來指示當(dāng) /前運(yùn)行狀態(tài).P10主要用來閃亮,表示程序正在運(yùn)行,P11則用來表示接收到數(shù)據(jù), /P12表示觸發(fā)內(nèi)部的定時(shí)器操作.P13的閃亮表示正確接收完一個(gè)數(shù)據(jù). / 程序運(yùn)行效果: 打開本機(jī)電源開關(guān),可以看到P10不停的閃動(dòng),按下遙控器的數(shù)/字鍵,數(shù)碼管則顯示相應(yīng)的數(shù)字鍵(1-9.可以看到P11,P12在顯示后呈亮狀態(tài).則/可以接收下一個(gè)數(shù)據(jù),在上面過程中可以看到P13閃亮了一下.表明上次正確接收/到數(shù)據(jù). /-/ 開

2、發(fā)日期: 2009/01/30 研發(fā)單位:上海騰芯實(shí)業(yè)有限公司 /#include / 包含51單片機(jī)相關(guān)的頭文件#define uint unsigned int /重定義無符號(hào)整數(shù)類型#define uchar unsigned char /重定義無符號(hào)字符類型uchar code LedShowData=0x03,0x9F,0x25,0x0D,0x99, /定義數(shù)碼管顯示數(shù)據(jù)0x49,0x41,0x1F,0x01,0x19;/0,1,2,3,4,5,6,7,8,9uchar code RecvData=0x07,0x0A,0x1B,0x1F,0x0C,0x0D,0x0E,0x00,0x0

3、F,0x19;uchar IRCOM7;static unsigned int LedFlash; /定義閃動(dòng)頻率計(jì)數(shù)變量unsigned char RunFlag=0; /定義運(yùn)行標(biāo)志位bit EnableLight=0; /定義指示燈使能位/*完成基本數(shù)據(jù)變量定義*/sbit S1State=P10; /定義S1狀態(tài)標(biāo)志位sbit S2State=P11; /定義S2狀態(tài)標(biāo)志位sbit B1State=P12; /定義B1狀態(tài)標(biāo)志位sbit IRState=P13; /定義IR狀態(tài)標(biāo)志位sbit RunStopState=P14; /定義運(yùn)行停止標(biāo)志位sbit FontIRState=P1

4、5; /定義FontIR狀態(tài)標(biāo)志位sbit LeftIRState=P16; /定義LeftIR狀態(tài)標(biāo)志位sbit RightIRState=P17; /定義RightIRState狀態(tài)標(biāo)志位/*完成狀態(tài)指示燈定義*/sbit S1=P32; /定義S1按鍵端口sbit S2=P34; /定義S2按鍵端口/*完成按鍵端口的定義*/ sbit LeftLed=P20; /定義前方左側(cè)指示燈端口sbit RightLed=P07; /定義前方右側(cè)指示燈端口/*完成前方指示燈端口定義*/sbit LeftIR=P35; /定義前方左側(cè)紅外探頭sbit RightIR=P36; /定義前主右側(cè)紅外探頭

5、sbit FontIR=P37; /定義正前方紅外探頭/*完成紅外探頭端口定義*/sbit M1A=P00; /定義電機(jī)1正向端口sbit M1B=P01; /定義電機(jī)1反向端口sbit M2A=P02; /定義電機(jī)2正向端口sbit M2B=P03; /定義電機(jī)2反向端口/*完成電機(jī)端口定義*/sbit B1=P04; /定義話筒傳感器端口sbit RL1=P05; /定義光敏電阻端口sbit SB1=P06; /定義蜂鳴端口/*完成話筒,光敏電阻,蜂鳴器.端口定義*/sbit IRIN=P33; /定義紅外接收端口/*完成紅外接收端口的定義*/#define ShowPort P2 /定義

6、數(shù)碼管顯示端口extern void ControlCar(uchar CarType; /聲明小車控制子程序void delayms(unsigned char x /0.14mS延時(shí)程序unsigned char i; /定義臨時(shí)變量while(x- /延時(shí)時(shí)間循環(huán)for (i = 0; i<13; i+ /14mS延時(shí)void Delay( /定義延時(shí)子程序 uint DelayTime=30000; /定義延時(shí)時(shí)間變量while(DelayTime-; /開始進(jìn)行延時(shí)循環(huán)return; /子程序返回void IR_IN( interrupt 2 using 0 /定義INT2外部

7、中斷函數(shù)unsigned char j,k,N=0; /定義臨時(shí)接收變量EX1 = 0; /關(guān)閉外部中斷,防止再有信號(hào)到達(dá) delayms(15; /延時(shí)時(shí)間,進(jìn)行紅外消抖if (IRIN=1 /判斷紅外信號(hào)是否消失 EX1 =1; /外部中斷開return; /返回 while (!IRIN /等IR變?yōu)楦唠娖?,跳過9ms的前導(dǎo)低電平信號(hào)。delayms(1; /延時(shí)等待for (j=0;j<4;j+ /采集紅外遙控器數(shù)據(jù) for (k=0;k<8;k+ /分次采集8位數(shù)據(jù)while (IRIN /等 IR 變?yōu)榈碗娖剑^4.5ms的前導(dǎo)高電平信號(hào)。delayms(1; /延時(shí)

8、等待while (!IRIN /等 IR 變?yōu)楦唠娖絛elayms(1; /延時(shí)等待while (IRIN /計(jì)算IR高電平時(shí)長delayms(1; /延時(shí)等待N+; /計(jì)數(shù)器加加if (N>=30 /判斷計(jì)數(shù)器累加值 EX1=1; /打開外部中斷功能return; /返回 IRCOMj=IRCOMj >> 1; /進(jìn)行數(shù)據(jù)位移操作并自動(dòng)補(bǔ)零if (N>=8 /判斷數(shù)據(jù)長度 IRCOMj = IRCOMj | 0x80; /數(shù)據(jù)最高位補(bǔ)1 N=0; /清零位數(shù)計(jì)錄器if (IRCOM2!=IRCOM3 /判斷地址碼是否相同 EX1=1; /打開外部中斷return; /返回for(j=0;j<10;j+ /循環(huán)進(jìn)行鍵碼解析if(IRCOM2=RecvDataj /進(jìn)行鍵位對(duì)應(yīng)P2=LedShowDataj; /數(shù)碼管顯示相應(yīng)數(shù)碼EX1 = 1; /外部中斷開 void main(void /主程序入口bit ExeFlag=0; /定義可執(zhí)行位變量LedFlash=3000; /對(duì)閃燈數(shù)據(jù)進(jìn)行初始化EX1=1; /同意開

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論