本文介紹ZigBee硬件模塊的設(shè)計(jì)方法和流程,今天我們就來學(xué)習(xí)一下ZigBee模塊是如何制作的。
目前,生產(chǎn)ZigBee芯片的有好幾家大公司,TI、Freescale、Atmel和Jennic等均有各自的ZigBee芯片,TI和Freescale用的比較多,設(shè)計(jì)參考文檔也比較全。TI的ZigBee解決方案主頁鏈接如下:http://focus.ti.com.cn/cn/analog/docs/rfifcomponentshome.tsp?familyId=367&contentType=4。其中包括了CC2420、CC2520、CC2430、CC2431和最新的CC2480的設(shè)計(jì)指南。Freescale的ZigBee解決方案主頁鏈接如下:http://www.freescale.com.cn/ZigBee.asp。包括了IEEE802.15.4收發(fā)器MC13192、MC13193和單芯片MC13213、MC13214等的設(shè)計(jì)指南。
我覺得這兩家的參考設(shè)計(jì)文檔比較齊全,降低了我們?nèi)腴T的門檻和硬件設(shè)計(jì)的難度。下面我就以Freescale的MC13213為例,說明一下硬件設(shè)計(jì)流程和方法。
首先,從整體來看,我們可以將目標(biāo)設(shè)計(jì)分為幾個(gè)模塊:電源模塊、主芯片模塊、天線模塊調(diào)試接口和外圍擴(kuò)展模塊。其中,電源模塊、天線模塊、調(diào)試接口和主芯片模塊是必須的,可以用通常所說的”最小系統(tǒng)”來描述。外圍擴(kuò)展模塊是根據(jù)用戶的實(shí)際需求自行添加。
1. 電源模塊
按照MC13213的datasheet,其工作電壓范圍在2-3.4V,而我們一般使用干電池或者可充電的鋰電池供電,這樣,我們就需要一個(gè)LDO或者DC-DC,它的作用就是將我們的電池電壓降到MC13213可以工作的范圍內(nèi)。在這里,我們可以選用TI的76930,不僅因?yàn)轶w積?。⊿OT23封裝),而且Dropout Voltage的典型值在71mV@100mA。另外,如果用可充電的鋰電池的話,需要注意加上保護(hù)電路,如下圖1所示:
圖1. 電源模塊
本文介紹ZigBee硬件模塊的設(shè)計(jì)方法和流程,今天我們就來學(xué)習(xí)一下ZigBee模塊是如何制作的。
目前,生產(chǎn)ZigBee芯片的有好幾家大公司,TI、Freescale、Atmel和Jennic等均有各自的ZigBee芯片,TI和Freescale用的比較多,設(shè)計(jì)參考文檔也比較全。TI的ZigBee解決方案主頁鏈接如下:http://focus.ti.com.cn/cn/analog/docs/rfifcomponentshome.tsp?familyId=367&contentType=4。其中包括了CC2420、CC2520、CC2430、CC2431和最新的CC2480的設(shè)計(jì)指南。Freescale的ZigBee解決方案主頁鏈接如下:http://www.freescale.com.cn/ZigBee.asp。包括了IEEE802.15.4收發(fā)器MC13192、MC13193和單芯片MC13213、MC13214等的設(shè)計(jì)指南。
我覺得這兩家的參考設(shè)計(jì)文檔比較齊全,降低了我們?nèi)腴T的門檻和硬件設(shè)計(jì)的難度。下面我就以Freescale的MC13213為例,說明一下硬件設(shè)計(jì)流程和方法。
首先,從整體來看,我們可以將目標(biāo)設(shè)計(jì)分為幾個(gè)模塊:電源模塊、主芯片模塊、天線模塊調(diào)試接口和外圍擴(kuò)展模塊。其中,電源模塊、天線模塊、調(diào)試接口和主芯片模塊是必須的,可以用通常所說的”最小系統(tǒng)”來描述。外圍擴(kuò)展模塊是根據(jù)用戶的實(shí)際需求自行添加。
1. 電源模塊
按照MC13213的datasheet,其工作電壓范圍在2-3.4V,而我們一般使用干電池或者可充電的鋰電池供電,這樣,我們就需要一個(gè)LDO或者DC-DC,它的作用就是將我們的電池電壓降到MC13213可以工作的范圍內(nèi)。在這里,我們可以選用TI的76930,不僅因?yàn)轶w積?。⊿OT23封裝),而且Dropout Voltage的典型值在71mV@100mA。另外,如果用可充電的鋰電池的話,需要注意加上保護(hù)電路,如下圖1所示:
圖1. 電源模塊
2. 主芯片模塊
MC13213本身就包括了MCU和收發(fā)器,因此,它的必須外圍電路很少。這里需要強(qiáng)調(diào)是晶振的選擇問題。一般我們使用外部晶振來提供系統(tǒng)時(shí)鐘,在這里,我選擇了16M的無源晶振,如下圖2所示:
圖2:主芯片電路模塊
3. 天線模塊
天線的設(shè)計(jì)關(guān)系到無線信號(hào)發(fā)送和接收的質(zhì)量。在Datasheet中,freescale給出了參考天線設(shè)計(jì),稱為倒F天線。這里需要注意的是:我們可以使用芯片的內(nèi)部收發(fā)開關(guān),也可以使用外部自己加的收發(fā)開關(guān)。使用外部收發(fā)開關(guān),信號(hào)的收發(fā)效果會(huì)更加好一點(diǎn),但是這樣一來,成本也就增加了,即增加了一個(gè)收發(fā)開關(guān)和Balun。這里我的設(shè)計(jì)是使用了外部收發(fā)開關(guān),如下圖3所示:
圖3. 天線電路模塊
4. 調(diào)試接口
Freescale有自己的BDM接口,稱為background debug module。一般,我們可以在板子上設(shè)計(jì)插針來實(shí)現(xiàn)。但是,考慮到ZigBee模塊在很多情況下,它的體積要求很小,這樣一來,六個(gè)插針的BDM接口就顯得臃腫好多。因此,我們這里使用miniUSB接口來外擴(kuò)。如下圖4所示,其中的miniUSB接口還包括了電源、UART的Rx和Tx。
圖4. miniUSB圖
5. 外圍擴(kuò)展模塊
l 充電管理芯片:如果使用可充電鋰電池的話,充電管理芯片是不能少的。這里,我們選用Freescale的MC34673。在CC(恒流)模式下,充電的電流可以通過電阻R6來調(diào)整,如下圖5所示,具體可以參考其datasheet。
圖5. 充電管理電路模塊
l 指示燈:一般可以用指示燈來指示程序運(yùn)行的狀態(tài),也就是程序可以控制的指示燈。指示燈有貼片封裝的,也有直插封裝的。發(fā)光強(qiáng)度有一般的,也有高亮的,我們可以按照實(shí)際的需求來選擇。
l 其他外圍電路可以用戶自行添加,需要注意的是,我們選擇芯片的時(shí)候,要考慮其工作電壓和電流,因?yàn)閆igBee節(jié)點(diǎn)的要求就是節(jié)能和高效。