宋血平 蔣井盛 朱永祥 朱 敏
(湖南工業(yè)大學電氣與信息工程學院,湖南 株洲412007)
近年來,紅外遙控已經(jīng)涉及到各類家電和工業(yè)設(shè)備。但各廠商遙控器互不兼容,應用范圍有限,傳統(tǒng)的單一控制和被動控制紅外遙控器已無法滿足人們的需求。隨著科技的發(fā)展,單片機在控制領(lǐng)域起到越來越重要的作用,觸摸屏和彩屏的成本的逐漸降低,所以采用以單片機90C51為控制核心進行遙控應用設(shè)計,分為控制模式和學習模式,加之采用觸摸屏輸入,彩屏顯示界面。可極大地提高遙控器人機交互性能。
學習型遙控器就是基于對BIT‘0’和BIT‘1’的識別(由于NEC協(xié)議的編碼長度比較通用,故采用)BIT‘0’是先高電平為0.56ms然后低電平為0.56ms。BIT‘1’是先高電平為0.56ms然后低電平為1.69ms。
當NEC協(xié)議遙控器在按鍵按下后,會周期性地發(fā)出同一種32位二進制碼,它的周期約為108ms。一般大約是45--63ms之間,當一個鍵按下超過了36ms,振蕩器就會使芯片激活,從而發(fā)射一組編碼脈沖,這個編碼脈沖一般是由一個起始碼(大約9ms),一個結(jié)果碼(大約4.5ms),低 8 位地址碼(大約 9-18m),高 8 位地址碼(大約 9-18ms),8 位數(shù)據(jù)碼(大約9-18ms)和這8位數(shù)據(jù)的反碼(大約9-18ms)組成。
本方案是基于單片機的學習型遙控器,紅外波形的學習模式方案如圖1和控制模式方案如圖2。以STC90C516R+為核心,通過測量NEC協(xié)議紅外遙控信號的脈沖寬度來原封不動地保存紅外遙控編碼,并利用單片機定時器T0實現(xiàn)38KHz載波,根據(jù)觸摸屏相應操作單片機控制輸出紅外遙控波形,實現(xiàn)了紅外波形的學習和控制。
硬件整體原理如圖3所示。
紅外解碼模塊設(shè)計。采用PC 1838一體化紅外解碼器,它的第二腳接地,第三腳接5V的電源,第一腳接到單片機的P3.2中。PC 1838紅外解碼后,單片機P3.2將接收高低電平脈沖信號,下降沿有效。單片機可以對紅外編碼長度進行測量并記錄下來。
片外EEPROM模塊設(shè)計。當在本系統(tǒng)學習模式情況下,選擇彩屏上的按鍵(即觸摸)。就會有相應的數(shù)據(jù)存儲到AT24C08中,在斷電的情況下也不會使數(shù)據(jù)丟失。當在本系統(tǒng)控制模式情況下,選擇彩屏上的按鍵(即觸摸)。就會有相應的數(shù)據(jù)從AT24C08中調(diào)用出來。
TFT彩屏顯示模塊設(shè)計。TFT-GGIN7009UTSW-W是屬于電阻屏, 它的 22,23,24,25,26,27,28,29 腳接 STC90C516RD+單片機的1,2,3,4,5,6,7,8腳。TFT-GGIN7009UTSW-W的14,15,16,17,18,19,20,21腳接STC90C516RD+單片機的32,33,34,35,36,37,38,39腳。TFTGGIN7009UTSW-W的11,12,13腳接STC90C516RD+單片機的28,27,26腳 TFT-GGIN7009UTSW-W1,2,3,4,5,6,7,31,32,33,38,39 腳接地。TFT-GGIN7009UTSW-W的8,9,10腳接電源。
觸摸屏控制模塊設(shè)計。XPT2046是屬于集成在TFTGGIN7009UTSW-W一塊觸摸屏控制芯片。XPT2046的11,12,14,15,16分別接STC90C516RD+的21,25,23,22,24腳。XPT2046采用差分控制模式。可有效的提高精度。當人觸碰觸摸屏時,X-,X+,X-,Y+坐標值將會進行讀取,進行差分運算后,存儲到相應的地址中,從而達到了人機交互的目的。
紅外載波發(fā)射模塊設(shè)計。運用STC90C516RD+的定時器T0產(chǎn)生38KHZ的載波 (因為我們設(shè)置TO定時器的TH0=0xFF,TL0=0xE6;也就是大約每26us產(chǎn)生一次中斷,而在程序中,根據(jù)接收的編碼的PWM高低電平可以控制是否發(fā)射出去。從而就得到的38KHZ的載波。)然后信號經(jīng)過電阻后到達了8050的基極,8050發(fā)射極接地,集電極接電阻后接紅外發(fā)光二極管的負極。當有信號從STC90C516RD+發(fā)出時,通過三極管8050控制紅外二極管的亮滅。
單片機模塊設(shè)計。本模塊采用STC90C516RD+單片機,它是本系統(tǒng)的CPU。它的20,40腳接地和5V電源,為單片機供電。它的1,2,3,4,5,6,7,8腳接彩屏的高位數(shù)據(jù)入口,32,33,34,35,36,37,38,39腳接彩屏的低位數(shù)據(jù)入口,26,27,28腳分別接彩屏的WR,RS,CS。13腳接彩屏的復位腳,上述這些腳控制著彩屏。它的18,19腳接12MHZ晶振。它的9腳接復位電路。它的21,22,23,24,25接觸摸屏的PEN,T-CS,DI,CLK,DO腳,以讀取觸摸屏坐標信號。它的10,11腳接入小按鈕,以選擇控制模式和學習模式。它的12腳接PC 1838,以讀取接收紅外高低電平脈沖信號。它的14腳要用于定時器T0接紅外發(fā)射模塊,以發(fā)射學習到的紅外高低電平脈沖信號。它的15腳接蜂鳴器,以方便人機交流。
整體調(diào)試如圖。圖4、圖5為一級界面。圖6、圖7為二級界面。圖8、圖9為二級界面。
當系統(tǒng)通電或者是復位的時候。系統(tǒng)會首先進入圖4一級界面A,等待3秒鐘后,自動刷新到圖5一級界面B中。
學習模式時,選擇按鍵K1時,界面會刷新,進入圖6二級界面A中,其界面上有七個模塊可供選擇,每個模塊代表一個遙控器。當選擇圖6二級界面A中的前三個(model 1,model2,model3)模式后,會調(diào)用如圖8三級界面A所示。當人按下如圖8三級界面A所示界面相應按鍵的時候,學習型遙控器會對紅外遙控信號進行學習,學習成功后,蜂鳴器響,并且相應按鍵變紅后變綠。當選擇圖6二級界面 A中的后四個(model4,model5,model6,model7)模式后,會調(diào)用如圖9三級界面B所示。當人按下如圖9三級界面B所示界面相應按鍵的時候,學習型遙控器會對紅外遙控信號進行學習學習成功后,蜂鳴器響并且相應按鍵變紅后變綠。
控制模式時,選擇按鍵K2時,界面會刷新,進入圖7二級界面B中,其界面上有七個模塊可供選擇,每個模塊代表一個遙控器。當選擇圖7二級界面B的前三個(model 1,model2,model3)模式后,會調(diào)用如圖8三級界面A所示。當人按下如圖8三級界面A所示界面相應按鍵的時候,學習型遙控器會對紅外遙控信號進行學習,學習成功后,蜂鳴器響,并且相應按鍵變紅后變綠。當選擇圖7二級界面B的后四個(model4,model5,model6,model7)模式后,會調(diào)用如圖9三級界面B所示。當人按下如圖9三級界面B所示界面相應按鍵的時候,學習型遙控器會對紅外遙控信號進行學習,學習成功后,蜂鳴器響,并且相應按鍵變紅后變綠。
[1]肖伸平,歐偉明,何靜,凌云,劉劍.單片機原理與應用:系統(tǒng)設(shè)計[M].電子工業(yè)出版社,2009.
[2]鄭鋒,王巧芝,李英建,劉瑞國.51單片機應用系統(tǒng)典型模塊開發(fā)大全[M].中國鐵道出版社,2004.
[3]徐愛鈞,彭秀華.KEIL CX51 V7.0單片機高級語言編程與uVISION2應用實踐[M].北京:電子出版社,2005.
[4]何立民.單片機高級編程[M].北京:北京航天航空大學出版社,2000.
[5]KEIL Software Inc.RTX51 Real-time Kernel[OL].http://www.keil.com/rtx51,2004.