51單片機設(shè)計的紅外線遙控器電路圖及工作原理_第1頁
51單片機設(shè)計的紅外線遙控器電路圖及工作原理_第2頁
51單片機設(shè)計的紅外線遙控器電路圖及工作原理_第3頁
51單片機設(shè)計的紅外線遙控器電路圖及工作原理_第4頁
51單片機設(shè)計的紅外線遙控器電路圖及工作原理_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

51單片機設(shè)計的紅外線遙控器電路圖及工作原理 你家里是否有一個電視機遙控器或者空調(diào)機遙控器呢?你是否也想讓它遙控其他的電器甚至讓它遙控您的電腦呢?那好,跟我一起做這個“紅外遙控 *器”。 該小制作所需要的元件很少:單片機 只, 口電平與 平轉(zhuǎn)換心片 只,紅外接收管一只,晶振 解電容 1010阻 1300歐姆左右 1個,瓷片電容 30光二極管 8個。價錢不足 20元。 電路圖及原理: 主控制單元是單片機 斷口 1相連,接收紅外信號的脈沖, 8 個發(fā)光二極管作為顯示 *輸出(也可以用來擴展接其他控制電路), 跟電腦串行口 9、 10腳分別與單片機的 1、 2腳相連,( 1腳為串行接收, 2腳為串行發(fā)送), 、 8腳分別接電腦串行口的 2(接收)腳、 3(發(fā)送腳)。晶振采用 樣才能使得通訊的波特率達(dá)到 9600b/s,電腦一般默認(rèn)值是9600b/s、 8位數(shù)據(jù)位、 1位停止位、無校驗位。 電路 就這么簡單了,現(xiàn)在分析具體的編程過程吧。 如圖所示, 過反復(fù)測試的結(jié)果)。 ,然后數(shù)據(jù)表示形式是 示“ 0”, 電平 電平周期為 示“ 1” ,編寫程序時,以大于 大于 1”,大于 0”。因此,我們主要用單片機測量高電平的長短來確定是“ 1”還是“ 0”即可。定時器 0 的工作方式設(shè)置為方式 1: 09h,這樣設(shè)置定時器 0即是把 , 16位計數(shù)器,最大計數(shù)值為 2的 16次方個機器周期,此方式由外中斷 如: jb 3 條指令 就可以測量一個高電平,接下來讀取計數(shù)值 可以分辨是起始位還是“ 1”或“ 0”。在確定碼表之前,您可以使用 的 8 個發(fā)光二極管來顯示編碼, 16 位編碼分兩次顯示: p0, /1p0, 據(jù) 繼的兩次顯示的編碼,記錄每個按鍵的編碼,形成編碼表,即遙控器編碼的 *完畢。碼表確定之后,以后接收到遙控器的編碼之后,就與碼表比較,找到匹配的碼項,并把該碼項對應(yīng)的順序號輸出到 時也把 順序號向串行口輸出到電腦,電腦接收該數(shù)據(jù)后由串口軟件決定如何處理。 程序不長,下面是完整的程序和注釋:(先看流程圖) 、 0h ;/該地址和 31 0h 0 ;/ 清零 #09h ;/設(shè)置定時 0方式 1, 0 ;/計數(shù)器,用來計數(shù)是否滿 8位 0 ;/計數(shù)器,用來計數(shù)是否滿 2字節(jié)(解 16位編碼) jb ;/是否為低電平 ;/如果為低,繼續(xù)往下面執(zhí)行 0 ;/清零 0 ;/清零 ;/開啟定時器 0 ;/等待高電平到來 jb ;/高電平到來,此時開始計數(shù) ,停止計數(shù) a,, c ;/ a,#12 ;/ jc ;/大于 新再檢測 ;/起始位找到了,然后下一位 0 ;/ 0 ;/ ,$ ;/等待高電平 jb ;/高電平到 來,此時開始計數(shù) ,停止計數(shù) a,, c ;/ a,#8 ;/比較 jc ;/若 放棄,從新檢測 a,,即為“ 1” c ;/C = 1 a ;/把 1移位進(jìn) A a ;/保存 ;/計數(shù)器加 1 8,;/計數(shù)加 1 2,;/不滿兩字節(jié),再新采集 ;/滿 1字節(jié),再接下來第二字節(jié) ,a ;/把第一字節(jié)編碼數(shù)據(jù)保存到 310 ;/計數(shù)器 ;/繼續(xù)采集數(shù)據(jù) ;/小于 a,;/讀取計數(shù)值 a ;/高 4位與低 4位對換 r1,a ;/保存到 R1 0;/取 位,低 4位忽略不計 a,;/ c ;/ a ;/ a ;/ a ;/ a ;/ a,a ;/ a,#30 ;/以上幾行是把 位和 位合并為 1字節(jié)作為計數(shù)值 jc /判斷是否 64表示采樣值 放棄 a,;/否則 ,符合位“ 0” c ;/C = 0 a ;/把零右移進(jìn) A a ;/保存 ;/計數(shù)器加 1 8,;/計數(shù)器加 1 2,;/ ;/如果為第二字節(jié) ,a ;/則保存第一字節(jié)到 31h 0 ;/清零 R7 ;/ ;/匹配按鍵編碼 ;/按鍵編碼字節(jié)個數(shù)計數(shù)器 ;/按鍵順序計數(shù)器 ;/ ;/ ;/ ;/ ;/ 29,;/ ;/開始匹配 a,;/ ,a+,;/,再比較下一字節(jié)(每個按鍵編碼為 2字節(jié)) a,;/ ; ,a+,,不匹配則繼續(xù)跟下一字節(jié)比較 p1, ;/如果匹配,把按鍵 順序號輸出到 p1 ;/ 20h ; /設(shè)置 , 0;/設(shè)置定時器初值 0;/ 01010000b;/以上設(shè)置,即設(shè)置串口波特率系數(shù)為: 9600,8,1,0 ;/啟動定時器 1 ;/ ;/把 鍵順序號)輸出到串口 ;/等待是否發(fā)送完畢 ;/發(fā)送完畢,清零 TI ;/ ;/循環(huán) ;/每兩字節(jié)代表一個按鍵的編碼 1111000b,00000000b, 11111100b,00000000b, 11111001b,11000000b 1111100b,11000000b, 11111010b,00000000b, 11111010b,00100000b 1111010b,01000000b, 11111010b,01100000b, 11111010b,10000000b 1111010b,10100000b, 11111010b,11000000b, 11111010b,11100000b 1111011b,00000000b, 11111011b,00100000b, 11111011b,01000000b 1111011b,01100000b, 11111111b,01100000b, 11111111b,10100000b 0001100b,10001110b, 10001101b,11101110b, 10001100b,10101110b 0001101b,11001110b, 11111000b,11100000b, 11111100b,10000000b 1111100b,01000000b, 11111001b,10100000b, 11111100b,10100000b 1111100b,01100000b 種遙控器編碼不同,如果你采用的是其他遙控器,修改幾個參數(shù)即可(當(dāng)然按鍵的編碼表肯定不同了),即計數(shù)器的值不同,不過有的遙控器有機器碼(機器碼每個按鍵都是一樣的),此時可以跳過機器碼的采集。最后有一點想提一下的是,剛開始不知道遙控器的編碼是比較麻煩的,筆者在“雙龍電子“網(wǎng)站下載了個聲卡示波器,用他可以一目了然觀看遙控器的波形,測量其脈沖寬度,有了它確實方便很多

溫馨提示

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

最新文檔

評論

0/150

提交評論