裴德鳳
摘 要 根據(jù)HS0038的性能,結合瑞薩M37544單片機,本文介紹紅外遙控系統(tǒng)的工作原理及空調器紅外遙控通訊協(xié)議,給出紅外遙控接收系統(tǒng)的硬件電路,重點闡述通過查詢方式完成程序編寫的方法,該種控制方式具有可靠性高、成本低的特點,在單片機控制系統(tǒng)中可以廣泛的應用。
關鍵詞 單片機 紅外遙控 空調 查詢方式
中圖分類號:TP368.1 文獻標識碼:A
0引言
紅外遙控是目前使用很廣泛的一種通信和遙控技術,由于紅外遙控裝置具有體積小,功耗低,功能強、成本低等特點,因而,在家用電器產品及工業(yè)設備中得到廣泛采用,本文以家用空調為例,闡述如何通過M37544單片機來實現(xiàn)遙控器解碼功能。
1紅外遙控系統(tǒng)簡介
紅外遙控系統(tǒng)有發(fā)射和接收兩大部分組成,發(fā)射部分包括鍵盤矩陣,編碼調制,LED紅外發(fā)送器。接收部分包括光、電轉換放大器、解調、解碼電路。如圖1所示。
2空調系統(tǒng)遙控接收通訊協(xié)議
本文所介紹的空調使用的遙控器引導碼格式為:先發(fā)3ms高電平、再發(fā)3ms低電平,再發(fā)3ms高電平,再發(fā)4.5ms低電平,引導碼格式如圖2所示:
數(shù)據(jù)碼格式如圖3所示,數(shù)據(jù)“1”格式為發(fā)1.2 ms 低電平,數(shù)據(jù)“0”格式為發(fā)0.56ms低電平,間隔碼為0.56ms高電平。
上述由引導碼和“0”,“1”組成的數(shù)據(jù)碼經(jīng)38KHZ載頻進行二次調制以提高發(fā)射效率,達到降低電源功耗的目的,然后再通過紅外發(fā)射二極管產生紅外線向空間發(fā)射。
遙控器先發(fā)送引導碼,緊跟其后再發(fā)送8個字節(jié)數(shù)據(jù),共64位。在64位二進制數(shù)據(jù)中,包含空調運行所有狀態(tài),包括開關機、運行模式、風速、風擺、睡眠、定時等信息,其具體通訊協(xié)議如下表1所示:
3硬件電路的設計
接收部分采用一體化接收頭HS0038,該器件集紅外線接收、放大、解調,還原成同步格式相同,但高低電位剛好相反的脈沖信號,輸出TTL電平,再送給單片機,經(jīng)單片機解碼并執(zhí)行,控制相應的控制對象。
在單片機的接收電路中,通常會用單片機外部中斷口進行接收,由于本控制器采用M37544單片機作為控制核心,該芯片有兩個外部中斷口,在系統(tǒng)中分別用來作為電源過零檢測和風機反饋脈沖輸入端口,所以遙控接收只能使用普通的I/O端口,其接收頭的輸出端口直接接到MCU的P1.4端口,通過軟件測量P1.4端口的高低電平時間,從而判斷接收的是“0”還是“1”。硬件電路如圖4所示:
4查詢法接收程序設計
在接收程序中先判斷引導碼格式是否有誤,如果有一段引導碼不符合規(guī)定的長度,則本次接收無效,程序返回,只有在引導碼正確無誤的基礎上,再來判斷數(shù)據(jù)碼,接收數(shù)據(jù)碼時,通過指令的執(zhí)行時間來判斷代碼的長度,當接收的高電平持續(xù)時間大于1 ms時,認為該位為數(shù)據(jù)“1”,當持續(xù)時間小于1 ms時,認為該位為數(shù)據(jù)為“0”,當連續(xù)接收8位后,保存該字節(jié)數(shù)據(jù),用同樣的方法繼續(xù)接收其余數(shù)據(jù),直到8個字節(jié)數(shù)據(jù)全部接收完畢。
當8個字節(jié)數(shù)據(jù)全部接收完畢,判斷特征碼是否正確,如果正確則將遙控接收標志位(QZFLAG.0)置1,在處理程序中處理相關信息,如不正確,則將遙控接收標志(QZFLAG.0)清0,本次接收無效,程序不再處理接收信息。
遙控接收程序流程如圖5。
因該程序代碼較長,給出程序編寫偽碼如圖6所示。
在具體測試遙控接收端口p1.4為低電平的持續(xù)時間程序片段如下圖7所示。該程序通過指令的循環(huán)執(zhí)行,不停累加寄存器R0的值,直至P1.4端口的狀態(tài)發(fā)生變化,累加結束,然后根據(jù)R0寄存器的值和指令執(zhí)行時間,計算P1.4端口持續(xù)低電平的時間;在測試p1.4端口為高電平時的持續(xù)時間與上述方法相同。
5結束語
經(jīng)試驗測試,上述遙控接收方式?jīng)]有出現(xiàn)丟碼現(xiàn)象,接收數(shù)據(jù)準確無誤,該種方式成本低、可靠性,編程簡單,不必占用單片機外部中斷端口,可以在單片機控制系統(tǒng)中廣泛使用。
參考文獻
[1] 聶詩良,李磊民.采用單片機發(fā)送并接收紅外遙控信號的方法[J].信息技術,2004,28(02).
[2] 李寶營,趙永生,祁建廣.基于單片機的紅外遙控系統(tǒng)設計[J].機電工程技術,2008,37(12) :77-79.