無線通信是人們現(xiàn)代日常生活的一部分,在辦公室、學校或家庭等場所,都在接觸無線通信設備,如筆記本電腦、打印機、攝像機、手持設備、照明控制器和家電設備等。這些設備的復雜程度與它們執(zhí)行的任務類型有關,其中許多家庭自動化的無線應用采用小型微控制器和少量代碼執(zhí)行簡單的任務,更加追求低成本、單一性和微型化。在目前眾多的網(wǎng)絡" title="無線網(wǎng)絡" target="_blank">無線網(wǎng)絡技術中,ZigBee技術作為一種新興的無線網(wǎng)絡技術,近兩年在工業(yè)控制、消費電子等領域以及科研開發(fā)中得到了眾多的關注和使用,而且越來越顯示出它的強勁應用勢頭。ZigBee是一種低功耗、短距離和低速的無線網(wǎng)絡技術,工作在2.4 GHz國際免執(zhí)照的頻段,在IEEE標準上它和無線局域網(wǎng)、藍牙同屬802家族中的無線個人區(qū)域網(wǎng)絡。
通常的ZigBee無線控制器節(jié)點是以一個高端微控制器為核心,再配合無線收發(fā)器構成的。本文將設計一個新型的、低成本的、使用ZigBee無線技術的精簡型無線控制器,比如用于空調遙控,整個目標應用板上的元器件極少,走線極少,體積極小。該設計只采用三個電子芯片:一個低端微控制器(MC9S08QG8)、一個RF收發(fā)器(MC13192)和一個16×2的LCD,其他需要的元器件為電阻和按鍵之類的無源器件。
1 器件選擇
為了實現(xiàn)工業(yè)或家電無線控制應用低成本的目標,首要任務是選擇合適的微控制器(MCU)和無線收發(fā)器。FREESCALE半導體公司(飛思卡爾,前身為Mo-torola半導體部)的各檔微控制器在國內嵌入式控制領域獲得了越來越多的應用。它最新推出的MC9S08QG低端微控制器系列,其處理內核、片上外圍設備、節(jié)電功能和開發(fā)工具等,構成了成本、能源、效率敏感的控制應用的理想解決方案。采用MC9S08QGx微控制器系列,不僅開發(fā)的費用可明顯減少,最終生產階段的成本也可大幅下降。在開發(fā)階段,一些高級調試功能,包括CodeWarrior全功能工具鏈和ProcessorExpert工具包等都是免費贈送的。在生產階段,內部時鐘源模塊、模擬電路和E2PROM模擬則減少了對諸如晶振或諧振器、模擬比較器、串行E2PROM等外部器件的需求,否則這些外部器件都是印制電路板上必不可少的。
本無線控制器設計的核心器件即選擇FREESCALE該系列中的僅有16引腳的MC9S08QG8,它是采用高性能、低功耗的HCS08內核的飛思卡爾8位微控制器系列中具有很高的集成度的器件,內置8KB FLASH存儲器,512 B RAM,SCI/SPI/IIC接口,8位模/數(shù)定時器模塊,A/D模塊等。MC9S08QG8
MCU集成了通常只有較大、較昂貴的元器件才具有的性能,包括背景調試系統(tǒng)以及可進行實時總線捕捉的內置在線仿真(ICE)功能,具有單線的調試及仿真接口(BDM),還包括一個可編程的16位定時器/脈沖寬度調制(PWM)模塊(TPM),是同類產品中最靈活、又最經(jīng)濟的模塊之一。
另一個主要芯片為無線收發(fā)器,同樣選擇Frees-cale半導體公司的MCl3192,它是FREESCALE公司推出的符合ZigBee標準的新型射頻芯片。其工作頻率是2.405~2.480 GHz,該頻帶劃分為16個信道,每個信道占用5 MHz的帶寬;采用直接序列擴頻的通信技術,數(shù)據(jù)傳輸速率為250 Kb/s。MCl3192具有一個優(yōu)化的數(shù)字核心,有助于降低MCU處理功率,縮短執(zhí)行周期。為了適應低功耗的要求,芯片除了接收、發(fā)送和空閑三種工作狀態(tài)外,還有三種低功耗運行模式:
掉電模式 此模式下芯片電流小于1μA;
睡眠模式 此模式下電流在3μA左右;
休眠模式 此模式下電流約為35μA。
芯片采用可編程功率輸出模式,發(fā)送功率為O~4 dBm,接收靈敏度可以達到-92 dBm,傳輸距離為30~70 m。由于MC13192的低功耗特性以及SPI通信接口,它與MC9S08QG8微處理器配合用于解決電池供電設備的低電壓、低功耗應用以及通信控制等,是十分適合的。
至于其他外圍器件則可選用通用的,比如液晶顯示器使用16×2的字符型LCD,按鍵按最終的工藝要求配用,這部分的電路應用是成熟技術。
2 無線控制器的總體構建
基于前述主要器件的選擇考慮,本文實現(xiàn)的無線控制器原理框圖如圖1所示。
用來在收發(fā)器和微控制器之間交換數(shù)據(jù)的接口主要為串行外設接口(SPI)。微控制器MC9S08QG8通過SPI接口(4線)對MCl3192的內部寄存器進行讀寫操作,從而完成對MCl3192的控制和數(shù)據(jù)通信。該接口可以讀寫收發(fā)器的配置、狀態(tài)和控制寄存器。SPI接口還可以讀寫位于收發(fā)器內部的RAM,用于通過RF發(fā)送和接收數(shù)據(jù)。另一個用于收發(fā)器和微控制器間通信的信號是中斷請求(IRQ)信號。IRQ腳由收發(fā)器進行處理。當收發(fā)器的狀態(tài)寄存器發(fā)生變化時,IRQ腳會產生下降沿跳變。IRQ產生后,微控制器要做的第一件事就是讀取狀態(tài)寄存器,確定產生中斷的特定事件。
微控制器MC9S08QG8通過通用I/O接口GPIO完成與液晶顯示器和按鍵的連接,其中LCD數(shù)據(jù)線和按鍵輸入線設計成多路分時復用的(共4線),LCD的控制線由MCU單獨提供(共3線)。
BDM程序下載和在線調試僅占用MCU的單線1線,在設計之初是必須的,但當調試下載完成后,該引線也可當做普通I/O使用或備用。
3 硬件電路的具體設計
根據(jù)前面器件選擇和總體構建的考慮,本文完成的無線控制器具體設計電路如圖2所示。其中MC9S08QG8微控制器(MCU)的大部分管腳具有多重功能,電路設計中,即以MC9S08QG8為核心,實現(xiàn)各種控制。
各部分的供電電源為低電壓3 V,可用兩節(jié)7號電池供電。MCU的時鐘電路無需外接晶振,直接使用MCU內部自帶的時鐘;MCU的RST和BKGD引腳用于BDM接口的連接,完成程序下載后可另作它用,比如MCl3192的中斷信號IRO就接至PTA3/RST/IRQ復用;圖2中MCl3192收發(fā)器其他外圍電路使用數(shù)據(jù)手冊提供的工作所需的最低硬件要求。MCU與MCl3192的連接按照標準SPI方式連接,MCU為主機,MCl3192為從機,通過MOSI,MISO,SPSCK信號線可以配置收發(fā)器,并發(fā)送和接收數(shù)據(jù)。同時也可以通過SPI配置收發(fā)器提供的定時器和GPIO引腳,將其用于其他的目的。收發(fā)器的片選CE信號由MCU的通用I/O口PTB5進行選通。收發(fā)器要切換運行模式(接收、發(fā)送、半休眠、休眠或空閑)還需要另外一個信號,該信號稱為RXTXEN,由MCU的通用I/O口PTB7進行處理。MCU與MCl3192之間的數(shù)據(jù)傳輸模式可采用流模式,每次收發(fā)一個字(16 b),都通過中斷由MCU控制處理,這樣可以最大限度地保證了數(shù)據(jù)傳輸?shù)膶崟r性。
16×2 LCD的RS,R/W,E信號由MCU通用I/O口PTB的三個引腳進行控制,實際上可以將R/W直接接低電平,或者軟件控制使始終為低點平,因為應用時只需對LCD做命令、數(shù)據(jù)寫入;數(shù)據(jù)線采用LCD的4線訪問形式,即只用DB4~DB7,由MCU的PTA0~PTA3提供;背光電源BKL+,BKL-不接,以減少功耗。4個按鍵也接在MCU的PTA0~PTA3,與LCD數(shù)據(jù)線復用,按鍵的上拉電阻使用MCU內部配置的,無需外接上拉以減省元件。同時當?shù)却幚戆存I時,MCU將按鍵輸入直接配置成按鍵輸入中斷,也減少了硬件連接和軟件復雜度,按鍵發(fā)生時MCU自動轉去讀取按鍵輸入及按鍵處理,當要進行LCD顯示時,MCU又將復用線臨時配置成數(shù)據(jù)輸出,配合LCD控制信號完成LCD的內容顯示。
MCU的8 KB FLASH和512 B的存儲器資源對于一般的無線控制是足夠的,另外,設計中還會用到MCU的定時器資源,通過定時比較器生成一般無線控制應用中都需要的定時時間,通過軟件編程可以方便地實現(xiàn)。
4 無線控制功能示例
以上設計方案適用于多種無線控制應用,如空調、智能風扇等的無線控制。在此方案基礎上還可以擴展出更復雜的無線控制應用,因為MCU還有少量口線(比如再增加一個設備開關按鍵)、MCl3192還有很多接口如它自帶的GPIO、定時器等都是可利用資源;同時此方案其實仍然可以精簡,比如不需要顯示的無線控制應用,就可省去LCD顯示器。