梁劍平
(玉林師范學(xué)院 計(jì)算機(jī)科學(xué)與工程學(xué)院,廣西 玉林 537000)
紅外遙控設(shè)備具有價(jià)格低廉、體積小、功能強(qiáng)、功耗低、抗干擾能力強(qiáng)等優(yōu)點(diǎn),被廣泛應(yīng)用于家用電器、玩具、工業(yè)設(shè)備中[1-5]。根據(jù)我校物聯(lián)網(wǎng)工程專業(yè)“傳感器原理及應(yīng)用”課程實(shí)驗(yàn)的需要,研制了紅外遙控傳感器實(shí)驗(yàn)平臺(tái),設(shè)計(jì)了相應(yīng)的實(shí)驗(yàn)內(nèi)容,讓學(xué)生在做中學(xué)[6]、理論和實(shí)踐相結(jié)合,使學(xué)生進(jìn)一步了解和掌握紅外遙控傳感器的原理及應(yīng)用。
本文設(shè)計(jì)的實(shí)驗(yàn)平臺(tái)如圖1所示,以STC89C52單片機(jī)為主控芯片,紅外接收傳感器使用HS0038一體化萬能接收傳感器,用于接收并解碼紅外遙控器發(fā)送的信號(hào),其電壓范圍是2.7~5.5 V,引腳間距為2.5 mm,中心頻率為38 kHz,集成光電檢測和放大器、濾波器;采用環(huán)氧樹脂一體成型,抗自然紅外光干擾[7]。對(duì)應(yīng)圖1圈出部分的實(shí)物如圖2所示,將其集成在實(shí)驗(yàn)平臺(tái)中。圖3是紅外遙控接收傳感器電路原理,STC89C52單片機(jī)IO口P3.4通過上拉電阻與紅外接收傳感器的IR輸出引腳連接。選擇紅外遙控器作為紅外發(fā)射電路。圖4是本實(shí)驗(yàn)平臺(tái)選擇的紅外遙控器實(shí)物,其使用專用集成電路進(jìn)行編碼,由38 kHz載波調(diào)制脈沖幅度,通過紅外二極管進(jìn)行紅外信號(hào)發(fā)射。紅外遙控系統(tǒng)由發(fā)射和接收兩部分組成,系統(tǒng)框圖如圖5所示[8]。
圖1 紅外遙控傳感器實(shí)驗(yàn)平臺(tái)
圖2 紅外接收傳感器HS0038實(shí)物
圖3 紅外遙控接收傳感器電路原理
圖4 紅外遙控器
圖5 紅外遙控系統(tǒng)框圖
根據(jù)本文研制的實(shí)驗(yàn)平臺(tái),圍繞紅外遙控傳感器設(shè)計(jì)了紅外傳感器通信協(xié)議初探實(shí)驗(yàn)、紅外傳感器解碼基礎(chǔ)實(shí)驗(yàn)、紅外遙控LED燈亮滅進(jìn)階實(shí)驗(yàn),三個(gè)實(shí)驗(yàn)環(huán)節(jié)難度由淺入深。
本實(shí)驗(yàn)平臺(tái)紅外遙控采用NEC通信協(xié)議[9-10],使用邏輯分析儀讀取IR引腳的電平,從而直觀了解NEC通信協(xié)議。NEC通信協(xié)議定義的邏輯“0”和邏輯“1”如下:
(1)邏輯0∶0.56 ms低電平+ 0.56 ms高電平(低高電平比1∶1)。
(2)邏輯1∶0.56 ms低電平+ 1.68 ms高電平(低高電平比1∶3)。
NEC通信協(xié)議中一幀編碼數(shù)據(jù)由前導(dǎo)碼+起始碼+數(shù)據(jù)碼+數(shù)據(jù)反碼組成,本實(shí)驗(yàn)中前導(dǎo)碼由9 ms低電平+4.5 ms高電平組成,起始碼16位(00000000 11111111) = 0x00FF,數(shù)據(jù)碼8位,數(shù)據(jù)反碼8位,數(shù)據(jù)碼+數(shù)據(jù)反碼=0x00FF,前導(dǎo)碼和起始碼對(duì)于同一個(gè)遙控器不同的按鍵都是一樣的,數(shù)據(jù)碼對(duì)應(yīng)于每個(gè)按鍵的編碼,數(shù)據(jù)反碼是數(shù)據(jù)碼按位取反的值。
初探實(shí)驗(yàn)學(xué)生不需要編程,將實(shí)驗(yàn)平臺(tái)上紅外遙控接收傳感器HS0038的引腳與邏輯分析儀連接如圖6所示,邏輯分析儀的白色探頭接紅外接收頭IR引腳,黑色探頭接紅外接收頭地引腳,接好線路后給實(shí)驗(yàn)平臺(tái)上電,按圖4遙控器的某個(gè)按鍵,如“1”按鍵,觀察邏輯分析儀上位機(jī)的波形并分析記錄。圖7是實(shí)驗(yàn)課程中某組學(xué)生按下實(shí)驗(yàn)所用遙控器按鍵“1”的解碼波形,對(duì)波形進(jìn)行放大如圖8所示,對(duì)波形進(jìn)行分析如圖9所示。該波形圖即為按下的遙控器某個(gè)按鍵對(duì)應(yīng)的NEC通信協(xié)議解碼數(shù)據(jù)。
圖6 邏輯分析儀測量遙控按鍵波形
圖7 遙控器按鍵“1”解碼波形
圖8 遙控器按鍵“1”解碼放大波形
圖9 遙控器按鍵“1”解碼放大波形分析
根據(jù)圖9分析遙控器的按鍵“1”的編碼,可得按鍵“1”數(shù)據(jù)碼為(10100010)=0XA2,通過下一節(jié)的基礎(chǔ)實(shí)驗(yàn)進(jìn)一步驗(yàn)證波形數(shù)據(jù)的正確性。
根據(jù)硬件部分圖3所示的紅外遙控接收傳感器電路原理,利用Keil軟件編程控制單片機(jī)通過IO口P3.4讀取紅外接收傳感器HS0038輸出引腳IR的數(shù)據(jù)。為了便于觀察記錄并通過串口助手顯示數(shù)據(jù),同時(shí)數(shù)碼管顯示對(duì)應(yīng)的數(shù)字,如按下按鍵“1”,數(shù)碼管顯示單個(gè)數(shù)字“1”,要求學(xué)生解碼實(shí)驗(yàn)平臺(tái)所用的遙控器所有按鍵的編碼,并將數(shù)據(jù)記錄在表1中,其中編碼值采用十六進(jìn)制記錄,編碼值是學(xué)生實(shí)驗(yàn)編程讀取IR引腳記錄的紅外遙控器按鍵對(duì)應(yīng)的編碼,將本節(jié)實(shí)驗(yàn)編程解碼數(shù)據(jù)與上一節(jié)實(shí)驗(yàn)使用邏輯分析儀讀取的數(shù)據(jù)對(duì)比,驗(yàn)證實(shí)驗(yàn)結(jié)果的正確性和一致性。圖10和圖11是實(shí)驗(yàn)課程中某組學(xué)生的串口助手?jǐn)?shù)據(jù)顯示結(jié)果和數(shù)碼管顯示結(jié)果。
表1 紅外遙控器按鍵對(duì)應(yīng)編碼
圖10 串口助手?jǐn)?shù)據(jù)顯示結(jié)果
圖11 數(shù)碼管顯示結(jié)果
開發(fā)板上有紅色、黃色、綠色三種顏色的LED燈,實(shí)驗(yàn)平臺(tái)對(duì)應(yīng)LED燈部分的電路原理如圖12所示。利用Keil軟件編程實(shí)現(xiàn)使用紅外遙控信號(hào)控制三個(gè)LED燈的亮滅,模擬現(xiàn)實(shí)情況中遙控電燈的開關(guān)控制。具體功能如下:當(dāng)按下遙控器按鍵“1”時(shí),紅色LED燈亮;當(dāng)按下按鍵“2”時(shí),黃色LED燈亮;當(dāng)按下按鍵“3”時(shí),綠色LED燈亮;當(dāng)按下按鍵“OK”時(shí),三個(gè)燈都熄滅。軟件流程如圖13所示。該實(shí)驗(yàn)?zāi)軌蚴箤W(xué)生更進(jìn)一步掌握如何使用紅外遙控器的紅外信號(hào)進(jìn)行靈活設(shè)計(jì)以實(shí)現(xiàn)按鍵的功能。
圖12 LED燈電路原理
圖13 紅外遙控信號(hào)控制LED燈亮滅流程
本文針對(duì)“傳感器原理及應(yīng)用”課程中紅外遙控傳感器研制的實(shí)驗(yàn)平臺(tái)和實(shí)驗(yàn)內(nèi)容進(jìn)行設(shè)計(jì),其中實(shí)驗(yàn)內(nèi)容涉及初探實(shí)驗(yàn)、基礎(chǔ)實(shí)驗(yàn)、進(jìn)階實(shí)驗(yàn)三個(gè)環(huán)節(jié),實(shí)驗(yàn)環(huán)節(jié)循序漸進(jìn)、環(huán)環(huán)緊扣,能夠幫助學(xué)生理解并掌握紅外遙控傳感器原理及應(yīng)用。本實(shí)驗(yàn)平臺(tái)外擴(kuò)了E2PROM存儲(chǔ)器,可以設(shè)計(jì)實(shí)現(xiàn)紅外遙控器密碼鎖項(xiàng)目式實(shí)驗(yàn),進(jìn)一步提高學(xué)生的工程實(shí)踐能力。