版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于51單片機(jī)的紅外遙控紅外遙控是無線遙控的一種方式,本文講述的紅外遙控,采用STC89C52單片機(jī),1838紅外接收頭和38k紅外遙控器。1838紅外接收頭:紅外遙控器:原理:紅外接收的原理我不贅述,百度文庫上不少,我推薦個(gè)網(wǎng)址,這篇文章寫得比較清楚,也比較全面,/view/c353e8360b4c2e3f57276349.html我主要講下程序的具體意思,在了解原理的基礎(chǔ)上,我們知道,當(dāng)我們在遙控器上每按下一個(gè)鍵,遙控器上的紅外發(fā)射頭都會(huì)發(fā)出一個(gè)32位的編碼(32位編碼分成4組8位二進(jìn)制編碼,前16位為用戶碼和用戶反碼,后16位為數(shù)據(jù)碼和數(shù)據(jù)反碼,用戶碼表示遙控器類型,數(shù)據(jù)碼表示按鍵編碼),不同的鍵對應(yīng)不同的編碼,紅外接收頭接收到這個(gè)編碼后,發(fā)送給單片機(jī),再進(jìn)行相關(guān)操作。源程序1:(這個(gè)程序的功能是將用戶碼和用戶反碼,數(shù)據(jù)碼和數(shù)據(jù)反碼顯示在1602液晶上,因?yàn)檫b控器買回來是不會(huì)說明按鍵對應(yīng)什么碼值,所以先自己測試,確定每個(gè)按鍵的碼值)#include<reg52.h>#include<stdio.h>#include<intrins.h>#defineuintunsignedint#defineucharunsignedchar#define_Nop()_nop_()#defineTURE1#defineFALSE0/*端口定義*/sbitlcd_rs_port=P3^5;/*定義LCD控制端口*/sbitlcd_rw_port=P3^6;sbitlcd_en_port=P3^4;#definelcd_data_portP0///////////////////////////////////voiddelay1(void)//關(guān)閉數(shù)碼管延時(shí)程序{ intk; for(k=0;k<1000;k++);}////////////////////////////////////ucharcodeline0[16]={"user:"};ucharcodeline1[16]={"data:"};ucharcodelcd_mun_to_char[16]={"0123456789ABCDEF"};unsignedcharirtime;//紅外用全局變量bitirpro_ok,irok;unsignedcharIRcord[4];//用來存放用戶碼、用戶反碼、數(shù)據(jù)碼、數(shù)據(jù)反碼unsignedcharirdata[33];//用來存放32位碼值voidShowString(unsignedcharline,char*ptr);//////////////////////////////////////////////voidDelay(unsignedcharmS);voidIr_work(void);voidIrcordpro(void);voidtim0_isr(void)interrupt1using1//定時(shí)器0中斷服務(wù)函數(shù){ irtime++;}voidex0_isr(void)interrupt0using0//外部中斷0服務(wù)函數(shù){ staticunsignedchari; staticbitstartflag; if(startflag){ if(irtime<63&&irtime>=33)//引導(dǎo)碼TC9012的頭碼i=0; irdata[i]=irtime; irtime=0; i++; if(i==33){ irok=1; i=0; } for(i=0;i<16;i++)lcd_char_write(i,0,line0[i]); for(i=0;i<16;i++)lcd_char_write(i,1,line1[i]); EX0init();//EnableGlobalInterruptFlag TIM0init(); while(1){//主循環(huán) if(irok){ Ircordpro(); irok=0; } if(irpro_ok){/*遙控成功接收*/ lcd_char_write(8,0,lcd_mun_to_char[IRcord[0]/0x10]); lcd_char_write(9,0,lcd_mun_to_char[IRcord[0]%0x10]); lcd_char_write(11,0,lcd_mun_to_char[IRcord[1]/0x10]); lcd_char_write(12,0,lcd_mun_to_char[IRcord[1]%0x10]); lcd_char_write(8,1,lcd_mun_to_char[IRcord[2]/0x10]); lcd_char_write(9,1,lcd_mun_to_char[IRcord[2]%0x10]); lcd_char_write(11,1,lcd_mun_to_char[IRcord[3]/0x10]); lcd_char_write(12,1,lcd_mun_to_char[IRcord[3]%0x10]); }//將碼值顯示在液晶上 }}源程序2:(在知道了按鍵編碼的基礎(chǔ)上,我們便可以加入判斷,判斷哪個(gè)鍵被按下,進(jìn)而執(zhí)行相關(guān)操作)我只修改main函數(shù),其他與源程序1相同sbitled1=P1^0;sbitled2=P1^1;sbitled3=P1^2;sbitled4=P1^3;sbitled5=P1^4;//發(fā)光二極管控制端定義voidmain(void){ uchari; lcd_system_reset();/*初始化LCD1602*/ lcd_data_port=0xff; for(i=0;i<16;i++)lcd_char_write(i,0,line0[i]); for(i=0;i<16;i++)lcd_char_write(i,1,line1[i]); EX0init();//EnableGlobalInterruptFlag TIM0init(); while(1){//主循環(huán) if(irok){ Ircordpro(); irok=0; } if(irpro_ok){/*遙控成功接收*/ switch(IRcord[2])//為什么判斷IRcord[2],因?yàn)檫@個(gè)里面存放的是數(shù)據(jù)碼 { case0x0c:led1=0;//按0鍵,燈1亮 break; case0x18:led2=0;//按1鍵,燈2亮 bre
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《CJ 202-2004建筑排水系統(tǒng)吸氣閥》專題研究報(bào)告
- 2026年AI的雙重價(jià)值:助力氣候正向效應(yīng)與推動(dòng)能源轉(zhuǎn)型報(bào)告-
- 山東省濟(jì)南市名校聯(lián)考2025-2026學(xué)年高一上學(xué)期1月階段性檢測英語試卷(含答案無聽力原文及音頻)
- 2025年陽江職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試模擬題及答案解析(必刷)
- 2024年盱眙縣招教考試備考題庫含答案解析(奪冠)
- 2025年晉寧縣招教考試備考題庫帶答案解析(必刷)
- 2025年雄縣招教考試備考題庫帶答案解析
- 2024年西安航空職工大學(xué)馬克思主義基本原理概論期末考試題及答案解析(必刷)
- 2025年青縣招教考試備考題庫附答案解析
- 2024年西南科技大學(xué)城市學(xué)院馬克思主義基本原理概論期末考試題含答案解析(必刷)
- 2025年農(nóng)村電商直播基地農(nóng)業(yè)產(chǎn)品上行解決方案報(bào)告
- 農(nóng)村承包土地合同范本
- 吉利汽車開發(fā)流程
- 五年級數(shù)學(xué)下冊 分層訓(xùn)練 2.1 因數(shù)和倍數(shù) 同步練習(xí) (含答案)(人教版)
- 護(hù)理部主任年終述職
- 電力行業(yè)安全生產(chǎn)操作規(guī)程
- 螺桿壓縮機(jī)PSSR檢查表
- GB/T 4937.34-2024半導(dǎo)體器件機(jī)械和氣候試驗(yàn)方法第34部分:功率循環(huán)
- TCALC 003-2023 手術(shù)室患者人文關(guān)懷管理規(guī)范
- 中藥熱奄包在呼吸系統(tǒng)疾病中的應(yīng)用研究
- HACCP計(jì)劃年度評審報(bào)告
評論
0/150
提交評論