Zigbee學習系列——1.初識

由於一些偶然因素,我碰到了Zigbee,到現在對於Zigbee協議棧已經瞭解了一部分,但因爲性格的原因,一直在排斥。我在學習Zigbee之前,做過51單片機的開發,也學習過STM32(但沒有深入,以後可能會,因爲就目前所做的功能來說,51單片機已經夠用了,而且開發簡單,還有一個原因就是我一直在排斥使用庫函數。。。可能是因爲51底層寫習慣了,對別人定義的函數總是感覺不安全),所以對於C語言開發和單片機這一塊還是有一定了解的,我相信這個世界上和我一樣的人有很多,都是對單片機開發有一定的基礎才轉過來的(如果沒有還是建議學習一下然後再做Zigbee,不然“莫名其妙的”Bug會讓你失去活下去的信心。。。開個玩笑),所以很可能着急做出一點什麼來防止自己失去興趣(好吧說的就是我),但是很坑的是如果開發板是你自己做的或者是第三方的,那麼你從官網上下載的協議棧裏面所包含的demo是沒有辦法直接使用的,因爲它是按照他們公司出的開發板寫的程序,可以說是測試程序吧(我認爲這點很討厭,又不是賣開發板的)這就導致你得改,而且我是用的2.5.1a版本,這個版本很亂!但又沒辦法,具體的下面會說。開頭就這樣草草的寫一下吧。

那麼萬事皆有因果,要用Zigbee做什麼,爲什麼要用Zigbee呢。我想做的就是簡單的萬物互聯,也就是籠統概念上的物聯網,然而實現物聯網的方法有很多,但就無線通信協議而言,有Wifi、藍牙、Zigbee、UWB、NFC等等,但Zigbee僅僅就低功耗這一點就已經比其他的更有優勢了,當然還有其他的具體看鏈接:http://m.elecfans.com/article/599455.html

據介紹說Zigbee終端節點在使用乾電池供電的情況下可以工作兩個月至半年的時間,這個是什麼概念,假設你有20個節點,你只需要過一兩個月或者半年去給所有的換一下電池即可,但如果是其他設備,最多也就十幾天二十天,如果是Wifi使用電池供電,估計兩三天就得換,一個還好說,二十個,如果有上百個,而且都不在同一個地方,換電池得換到什麼時候。。。

在開始學習的時候建議大家百度一下什麼是Zigbee,瞭解瞭解一些概念,比如協議和協議棧分別是什麼等等一些基礎的東西,這裏貼一個鏈接,裏面的內容相對很全,大概看下吧,希望對你們有幫助,看不懂也沒關係,有個概念就行

https://blog.csdn.net/u013162035/article/details/81047474

Zigbee官網:https://zigbee.org

今天是2019年10月,Zigbee協議棧已經更新到3.0.2的版本了,這個版本結構要比我使用的2.5.1a要完善,而且結構也比較清晰,但同時也更復雜。對於強迫症的我早就應該升級了,但是一些問題壓制着我沒有辦法升級,問題是:

• 3.0版本協議棧工作佔據的數據內存很大,cc2530單片機是8KBRAM,就算什麼都不添加,都是很可能不夠用,而且協議棧本身也很大,256KB也能佔用90%以上,所以如果要使用cc2530,對自己的開發就得考慮內存問題了,還可能因爲內存的原因導致無法繼續擴展

• 當然可以不使用CC2530,TI官方人員推薦使用CC2652R,但是這又出現一個問題,CC2652R的模塊價格高出CC2530好幾倍,作爲個人開發的我而言根本無法開銷,並且CC2652都是ARM架構的,不是簡單的單片機,所以會更復雜

所以還是打算CC2530上2.5.1a的協議棧,這裏最後再說一下如果要學習Zigbee CC2530,你需要準備哪些東西

硬件:

1.CC2530開發板(買的做的都可以,只要你有能力)

2.CCDebugger下載器,用來下載和調試程序使用,必須要有的

3.2531 dongle抓包工具,用來抓取並分析數據使用

軟件:

IAR for 8051開發環境,因爲CC2530是增強型51單片機,所以使用這個版本,沒見過有人使用Keil開發。

協議棧:https://download.csdn.net/download/dreamer282/11914027

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章