基于Atmega16單片機的智能空調遙控器
1 引言
近年來,計算機技術、現代通信技術和自動控制技術高速發展,智能化家居系統也隨著新技術的發展進入了千家萬戶,家居系統中如空調、電視、照明系統等,都使用遙控器進行控制。紅外線遙控器由于具有結構簡單、體積小、功耗低、功能強、成本低等特點,已成為使用最廣泛的一種遙控方式。然而,由于各種紅外設備采用的技術標準與協議大不相同,使得各種設備的遙控器并不能兼容,給用戶和消費者帶來了諸多不便。
目前,市場上已有的萬能遙控器多是內置了多種品牌的紅外控制指令,對內置品牌以外的紅外設備則無能為力。為此,本文設計了一款針對空調設備的智能學習型紅外遙控器,采用記錄脈沖寬度的方法,成功實現了對多種紅外空調遙控信號的學習與再現,真正實現了"萬能".本文在闡述了系統的總體結構及硬件設計的基礎上,詳細研究了系統學習,發送及通信功能的軟件設計與實現。
2 系統總體結構與硬件設計
系統采用模塊化設計,各模塊通過接口電路與主控芯片相連。主要模塊有:矩陣鍵盤,液晶顯示,存儲模塊,紅外發送模塊,紅外接收模塊,RS232、RS485 通信模塊,以及溫度檢測模塊。系統結構圖如圖1 所示。
系統以Atmega16 單片機作為主控芯片,Atmega16具有16K 字節的系統內可編程Flash ,512 字節EEPROM,1K 字節SRAM,32 個通用I/O 口線,32 個通用工作寄存器,用于邊界掃描的JTAG 接口,支持片內調試與編程,三個具有比較模式的靈活的定時器/計數器(T/C),片內/外中斷,可編程串行USART,有起始條件檢測器的通用串行接口,8 路10 位具有可選差分輸入級可編程增益的ADC,具有片內振蕩器的可編程看門狗定時器,一個SPI 串行端口,以及六個可以通過軟件進行選擇的省電模式。該芯片功能強大,滿足系統設計需要并提供了充分的擴展空間。主控芯片使用8MHz 的晶振,晶振電路靠近主控芯片,盡量減少輸入噪聲。復位電路采用低電平復位。
圖1 系統結構圖
矩陣鍵盤采用3*3 的設計,設置了8 個功能鍵,方便用戶進行手動操作。其中單獨設計了一顆模式切換鍵,可在學習、發射、通信模式中切換。為了實現學習功能, 紅外接收模塊使用了一體化接收頭NB1838,其光電檢測和前置放大器集成于同一封裝,中心頻率為37.9KHz. NB1838 的環氧樹脂封裝結構為其提供了一個特殊的紅外濾光器,對自然光和電場干擾有很強的防護性。NB1838 對接收到的紅外信號進行放大、檢波、整形,并調制出紅外編碼,得到TTL 波形,反相后輸入單片機,再由單片機進行進一步的處理,存儲到EEPROM 中,接收電路如圖2 所示。
圖2 接收硬件電路圖。
考慮到系統需要的存儲空間比較大,設計了單獨的存儲模塊,選用的EEPROM 是AT24C64,它提供了8KB 的容量,通過IIC 協議與Atmega16 TWI 接口通信,將學習到的紅外指令存儲在此,掉電不丟失。
在發射模式下,系統從EEPROM 讀取相應數據信息,利用三極管9013 組成的放大電路,通過大功率紅外發射管將調制好的紅外信號發射出去。發射電路如圖3所示,非發送狀態時,三極管工作在截止狀態,紅外發射管不工作,有利于降低功耗以及延長紅外發射管的使用壽命。經實際測試,發射距離可達到10m 左右。
圖3 發射硬件電路圖。
通信模式中,系統通過RS232 電路與上位機通信,在與上位機通信時使用DS18B20 反饋溫度信息,DS18B20 一線總線設計大大提高了系統的抗干擾性,獨特而且經濟。系統還增加了RS485 模塊,便于組網,以實現對多個紅外設備進行控制。RS485 在組網時只需要用一對雙絞線將子設備的"A"、"B"端連接起來,這種接線方式為總線式拓撲結構,在同一總線上可掛接多個結點,連接方便。
為了增加設備的實用性,系統設計了兩個電源方案,一個是直接接入5V 直流電源,一個是接入12V直流電源,然后通過L7805 構成的變壓電路降壓為5V使用。
紅外遙控器相關文章:紅外遙控器原理 雙絞線傳輸器相關文章:雙絞線傳輸器原理
評論