單片機(jī)紅外遙控_第1頁
單片機(jī)紅外遙控_第2頁
單片機(jī)紅外遙控_第3頁
單片機(jī)紅外遙控_第4頁
單片機(jī)紅外遙控_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1概述單片機(jī)控制系統(tǒng)廣泛應(yīng)用在電氣設(shè)備和電子產(chǎn)品中,而實(shí)現(xiàn)控制的外部操作多由鍵盤或計(jì)算機(jī)完成,有一定的局限性,比如,對(duì)一些電子產(chǎn)品所顯示數(shù)據(jù)的修改來說,當(dāng)安裝位置較高時(shí),按鍵控制很不方便,若采用PC,則除了電路更復(fù)雜外,造價(jià)也相應(yīng)提高。為此,我們研制了采用普通電視用的紅外遙控器做控制器的單片機(jī)控制系統(tǒng)。2硬件設(shè)計(jì)采用MCS251系列單片機(jī),選用眾合牌電視遙控器,重新設(shè)置按鍵功能。將紅外線接收頭的輸出端與單片機(jī)的外部中斷(INT0或INT1)連接,操作遙控器時(shí),接收頭有信號(hào)輸出,單片機(jī)產(chǎn)生中斷。2.1紅外遙控器簡介2.1.1基本組成紅外遙控器的核心是遙控發(fā)射集成電路,眾合牌電視遙控器采用的集成芯片是M50462AP,其內(nèi)部由圖1中虛線框內(nèi)各部分電路組成。 eJprfflnscDm3 eJprfflnscDm3或疑直圖1遙控發(fā)射集成電路1.2工作原理當(dāng)遙控器有鍵被按下時(shí),振蕩電路立即接通并起振,掃描信號(hào)發(fā)生器隨即發(fā)出8路不同時(shí)序的掃描時(shí)序脈沖,依次對(duì)鍵盤矩陣進(jìn)行掃描,鍵盤編碼器則由接收到的回送信號(hào)判斷出被按鍵位置,并輸出相應(yīng)的編碼至譯碼器,經(jīng)譯碼器進(jìn)行碼元變換后的信號(hào)被重新編碼調(diào)制后輸出。1.3指令代碼集成芯片M50462AP的輸出信號(hào)是脈沖位置調(diào)制碼,其載頻是中心頻率為40kHz,占空比為3的方波信號(hào)。一位脈沖位置調(diào)制碼如圖2所示。當(dāng)脈沖寬度為1ms時(shí),代表一個(gè)二進(jìn)制數(shù)/00;脈沖寬度為2ms時(shí),代表一個(gè)二進(jìn)制數(shù)/10。圖2脈沖位置調(diào)制碼每一條傳送指令由16位這樣的/00、/10代碼組成,這16位代碼的前8位為用戶碼,用戶碼的構(gòu)成形成為1110xx10,遙控器生產(chǎn)廠家可以將/x0設(shè)為/10或/00,眾合牌遙控器的用戶碼為,即為E2H;16位代碼的后8位為數(shù)據(jù)碼,即按鍵功能操作碼,編碼則如表1所列。表1按鍵功能操作碼編碼表

原鍵功能操作碼16進(jìn)制新健功能按曜10000000000H數(shù)字I按鍵20001000010H數(shù)字2按維30000100008H數(shù)字3按鍵40001100018H數(shù)字4按鍵50000010004H數(shù)字5按犍600010100I4H數(shù)字6按犍700001100OCH數(shù)字7按鍵8000111001CH數(shù)字8按鍵91000000080H數(shù)字9按鍵0/301001000090H數(shù)字0靜音010011004CH開電源關(guān)機(jī)時(shí)間11101000E8H關(guān)電源電源開關(guān)0100000040H校時(shí)間頻道+0101000050H上移頻道,0100100048H下移E3甲十0100010044H左移音量-0101010054H右移標(biāo)準(zhǔn)狀態(tài)11010000DOH鬧鈴1屏顯11011000D8H鬧鈴2狀態(tài)切換01011100電簟數(shù)誦表1中新鍵功能可以根據(jù)需要自行設(shè)定,這里給出的是我們?yōu)殡娮隅娫O(shè)計(jì)的。遙控器發(fā)送一組指令的時(shí)間是44ms,故操作遙控器一次可發(fā)出多組指令代碼,以備接收頭接收。我們設(shè)計(jì)的控制系統(tǒng)需要從中取出3組數(shù)據(jù)。2接收頭的使用紅外接收頭通稱遙控預(yù)放器,它將接收到的脈沖位置調(diào)制碼轉(zhuǎn)換成如圖3所示的接收碼。接收頭使用簡單,只需將它的三個(gè)引腳分別接地、+5V電源和CPU的INT0或INT1即可。PO,25ms 1ms或2ms ?elpcfan^com電苫慎住左圖3接收碼3軟件設(shè)計(jì)本系統(tǒng)旨在識(shí)別指令代碼并依據(jù)指令信息實(shí)現(xiàn)新鍵功能,我們的思路是在中斷服務(wù)程序中識(shí)別指令代碼并保存數(shù)據(jù),用主程序?qū)?shù)據(jù)進(jìn)行比較和處理,從而實(shí)現(xiàn)各種功能。1中斷服務(wù)程序1.1代碼的判斷代碼的判斷是用計(jì)數(shù)和比較的方法來實(shí)現(xiàn)的,進(jìn)入中斷的同時(shí)立即打開定時(shí)器T1,開始計(jì)數(shù),代碼/00和/10的計(jì)數(shù)時(shí)間由其脈沖寬度決定,分別為1ms和2ms,則理論計(jì)數(shù)值A(chǔ)0、A1分別可由以下公式得出:A0=1ms/一個(gè)機(jī)器周期A1=2ms/一個(gè)機(jī)器周期當(dāng)單片機(jī)采用不同頻率的晶振時(shí),理論計(jì)數(shù)值也將隨之不同??紤]到遙控器與單片機(jī)基準(zhǔn)頻率的誤差,實(shí)際計(jì)數(shù)值很難保證與理論計(jì)數(shù)值完全一致,為此需給/00和/10的實(shí)際計(jì)數(shù)值開設(shè)一個(gè)窗口,以免丟失數(shù)據(jù);同時(shí),為增強(qiáng)抗干擾性,窗口寬度應(yīng)適中,經(jīng)過實(shí)驗(yàn),我們確定的窗口寬度為0.224ms,具體數(shù)值如表2所列。

表2記數(shù)窗口數(shù)值CPU0的 0的窗口1的 1的窗口晶振計(jì)數(shù)值 Aol-Aoh 計(jì)數(shù)值A(chǔ)il?Am6M0IF4H0190020OH03E8H0390-04OOH6M0IF4H0190020OH03E8H0390-04OOH12M03E8H0320-040OH07D0H0720-08OOH20M 0683H20M 0683H0535?06AAH0嚼驅(qū)^虬用電械貸 ?1當(dāng)實(shí)際計(jì)數(shù)值在A0L?A0H時(shí),我們認(rèn)為接收的代碼是/00;實(shí)際計(jì)數(shù)值在A1L?A1H時(shí),則將代碼記為/10。1.2指令的識(shí)別將接收的指令代碼逐位存儲(chǔ)在單片機(jī)RAM區(qū)的2AH?2FH單元中,則可以存儲(chǔ)48位共3組指令代碼,存儲(chǔ)的有效方式如表3所列。表3存儲(chǔ)方式2A2B2C2D2E2FE2HjjHE2H.膽E2HjjH在表3中,jjH表示的是表1中的任意一個(gè)按鍵的功能操作碼,只有當(dāng)2A=2C=E2H,且2B=2D=jjH的時(shí)候,此指令代碼才被認(rèn)為是有效的,將jjH代表的操作碼存入數(shù)據(jù)暫存單元1EH中,主程序即可以使用。1.3中斷服務(wù)程序流程程序中,先將接收的每一位代碼作/00、/10的判別后存儲(chǔ)下來,存滿48位后,再進(jìn)行數(shù)據(jù)是否有效的判別,最后存儲(chǔ)有效的指令代碼。程序框圖如圖4所示。

圖4中,移位處理是指2AH?2FH中的6個(gè)字節(jié)整體向左移動(dòng),目的是為了防止接收頭從某一組指令的中間開始接收數(shù)據(jù)而造成的數(shù)據(jù)丟失,若移位16次還不能出現(xiàn)有效的指令代碼,則認(rèn)為此組數(shù)據(jù)無效。存入煽碼存入煽碼圖4中斷服務(wù)程序框圖2主程序?yàn)榕浜现袛喾?wù)程序,在主程序初始化中設(shè)定INT0或INT1為負(fù)跳變邊沿

溫馨提示

  • 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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論