董澤龍 毋茂盛
摘 要:TI公司生產設計的CC2530采用8051單片機內核,該芯片不僅集成有UART和SPI接口,還具有采用ZigBee協(xié)議進行數據無線發(fā)送和接收功能。為了方便非計算機專業(yè)學生進行基于CC2530的開發(fā),文中設計了SPI/UART到ZigBee協(xié)議的轉換模塊,該設計可廣泛應用于智能家居、遠程分布式控制等領域,并省去了連線,降低了成本,提高了開發(fā)效率。
關鍵詞:ZigBee;SPI;UART;CC2530
中圖分類號:TP212.9 文獻標識碼:A 文章編號:2095-1302(2015)12-00-03
0 引 言
ZigBee是一種短距離無線通信協(xié)議,具有方便、成本低等特點,特別適合于智能家居、工業(yè)控制等特定的場合,省去連線的麻煩。UART與SPI接口是目前眾多單片機的標準接口。TI公司生產設計的CC2530采用8051單片機內核,不僅集成有UART、和SPI接口,而且還具有采用ZigBee協(xié)議進行數據無線發(fā)送和接收的功能,廣泛應用于物聯網技術領域。由于基于CC2530的開發(fā)要求具有TCP/IP協(xié)議等背景知識,對于非計算機專業(yè)的學生是件比較困難的事。因此,本文利用CC2530設計了一個SPI/UART到ZigBee協(xié)議轉換模塊,該模塊通過UART或SPI接口與其它單片機系統(tǒng)相連,實現數據的無線傳輸,可廣泛應用于智能家居,分布式控制等領域,大大提高了系統(tǒng)的開發(fā)效率。
1 模塊的功能與工作原理
SPI/UART到ZigBee協(xié)議轉換模塊可通過ZigBee協(xié)議無線接收或發(fā)送數據,通過SPI或UART和其它的單片機系統(tǒng)相接口,作為一個模塊應用到各種相關的單片機應用系統(tǒng)中;該模塊也可作為ZigBee網絡的協(xié)調器使用。模塊工作時的連接如圖1所示。
2 硬件設計
硬件設計按功能大約可分為4個部分。
2.1 CC2530及外圍相關電路
德州儀器公司推出的SoC芯片CC2530,兼容ZigBee協(xié)議,它采用8051內核,并在此基礎上增加了許多功能,如支持基于IEEE 802.15.4協(xié)議的無線射頻等。CC2530及其外圍相關電路如圖2所示。
(1)數字電源和模擬電源通過電容接地;
(2)通過配置寄存器,將UART引腳RXD、TXD分別映射到引腳P0.2、P0.3;將SPI的引腳MISO、MOSI、SCK、SSN映射到P1.4、P1.5、P1.6、P1.7,并通過2個IDC10連接器和其它單片機系統(tǒng)相連。
2.2 電平轉換電路
CC2530芯片工作電壓為3.3 V,而許多單片機應用系統(tǒng)采用的是5 V的電壓,為了解決與5 V單片機系統(tǒng)的接口問題,設計了電平轉換電路。具體為采用了4路2輸入與門芯片74HCT08D,其14腳接5 V電源。由于CC2530為CMOS芯片,輸入可以承受5 V的電壓,所以,由5 V單片機到轉換模塊的信號不用電平轉換電平;而轉換模塊到5 V單片機的信號要進行轉換,即將3.3 V輸出的引腳連接到74HCT08的一對輸入引腳,將對應的輸出引腳連接到其他單片機相關引腳即可。
2.3 電源轉換電路。
本模塊不帶電源,但需要3.3 V電源。為此,專門設計了5 V到3.3 V電源轉換的電路,電路中采用LD1117將輸入到模塊的5 V電源轉換成3.3 V電源為CC2530供電。另外還設計了對 CC2530的編程與調試的接口電路。該模塊的實物圖如圖3所示。
3 軟件設計
為了方便用戶進行基于CC2530芯片的開發(fā),德州儀器公司(Texas Instruments)專門為用戶開發(fā)了Z-Stack協(xié)議棧,它為用戶提供了應用層的API,因此,用戶可以不需詳細了解內部實現原理,就進行基于CC2530的應用開發(fā)。但是由于Z-Stack協(xié)議棧是半開源的,對于底層內部實現原理用戶無法了解和修改,給移植和深入研究造成了一定的困難。
3.1 寄存器配置
在模塊工作時,相關引腳必須連接正確。在UART模式下,CTS、RTS引腳不用連接,TXD和RXD與對應通信單片機的RXD和TXD連接。在SPI模式下,4根引腳對應連接即可。配置寄存器復用相應的引腳如表1所列。
3.2 UART模式操作
UART模式下采用檢測寄存器的發(fā)送完成標志位來判斷數據是否發(fā)送完成;采用中斷方式響應數據接收中斷,在中斷函數內對數據進行處理。
3.3 SPI模式的操作
(1)主模式
4 結 語
本文設計的模塊經過實際的應用,工作穩(wěn)定,實現了數據的無線傳輸功能,可以作為獨立擴展模塊和其他單片機進行通信,不需從頭設計無線通信的部分,降低開發(fā)難度,大大提高了開發(fā)的效率??捎糜谥悄芗揖?、分布式控制等領域,省去連線的麻煩,節(jié)約開支。
參考文獻
[1] 毋茂盛. 單片機原理與開發(fā)[M]. 北京:高等教育出版社,2015.
[2] 王小強,歐陽駿,黃寧淋.ZigBee無線傳感器網絡設計與實現[M].北京:化學工業(yè)出版社,2012.
[3] 法拉哈尼. ZigBee無線網絡與收發(fā)器[M].沈建華,王維華,闊鑫,譯.北京:北京航空航天大學出版社,2013.
[4] Texas Instruments.CC111xFx, CC243xFx,CC251xFx and CC253xFx SPI[EB/OL].2009. http://www.ti.com.cn/cn/lit/an/swra223a/swra223a.pdf.
[5] Texas Instruments. CC253x/4x User's Guide[EB/OL].2014. http://www.ti.com.cn/cn/lit/ug/swru191f/swru191f.pdf.
[6] Texas Instruments.CC2530 Datasheet[EB/OL].2009. http://www.ti.com.cn/cn/lit/ds/symlink/cc2530.pdf.