全書共4篇,基礎篇主要對物聯網的概念、組成、發展進行概述,同時簡單介紹物聯網中的關鍵技術和一些常用的物聯網傳感器及其特點,*后列舉物聯網技術的典型應用;理論篇主要對CC2530內部模塊的GPIO、外部中斷、定時器、DMA、UART等內部資源的設置及相關寄存器進行講解,同時在每節*后提供相關參考程序供讀者參考和使用;入門篇主要對CC2530相關的基本硬件結構進行介紹,同時對編輯軟件的安裝、應用,以及程序的燒寫進行介紹;實踐篇設置一系列實驗,從*基礎的無線控制LED實驗開始到較復雜的ZigBee管理系統實驗,從易到難,適合不同層次的讀者進行遞階學習。同時,為了幫助讀者能夠清晰地理解程序的設計思路,在主要實驗中都給出了相關的程序流程圖,并在程序中標注了大量的注解。
本教材從物聯網基礎知識入手,堅持由淺入深、由里及外、循序漸進的學習導向,使物聯網教學不再乏味,適合零基礎的讀者學習物聯網系統。本書適合作為電氣信息類(物聯網、電氣工程及其自動化、自動化、電子信息工程、通信工程、計算機科學與技術、電子科學與技術等)等專業的大學高年級學生和研究生的必修或選修教材,以及嵌入式計算機方面的指導用書,也可以作為相關科技人員的自學用書。
教材從物聯網基礎知識入手,堅持由淺入深、由里及外、循序漸進的學習導向,讓物聯網教學不再乏味。? 教材層次分明,從基礎知識、入門初探、理論指引層層探究,*后過渡至實驗應用,讓讀者漸入佳境。? 弱化理論灌輸,強化軟件編程與硬件設計能力培養,將大量實驗引入教材,引導讀者從概念定義、理論學習逐漸過渡至實驗應用。? 打破教條界限,根據相關專業課對物聯網專業知識的關聯,形成獨具多板塊、多層次、多接口特色的教材,適合相關多專業選用。
前言
在現實物理世界與虛擬計算機世界之間實現信息交互這一革命性的理念,突破了以往信息網絡技術發展的固有模式和思路,使得物聯網一躍成為全國乃至世界關注的焦點,國內外都把物聯網的發展提到了國家級的戰略高度,稱之為繼計算機、互聯網之后世界信息產業的第三次浪潮。何謂物聯網?不同的階段在不同的場合有不同的描述。目前對物聯網比較準確的表述是: 通過各種信息傳感設備及系統(傳感網、射頻識別系統、紅外感應器、激光掃描器等)、條碼與二維碼、全球定位系統,按約定的通信協議,將物與物、人與物連接起來,通過各種接入網、互聯網進行信息交換,以實現智能化識別、定位、跟蹤、監控和管理的一種信息網絡。物聯網的主要特征是每一個物件都可以尋址,每一個物件都可以控制,每一個物件都可以通信。顯然,作為感知、傳輸、應用三項技術相結合的一種產物,它是一種全新的信息獲取和處理技術。隨著物聯網技術進步的同時,新興的短距離無線通信技術和無線網絡技術也在飛速發展,ZigBee技術應運而生,正以空前的速度走進人們的生活,使人們的生活和工作更加方便,更加安全。2002年8月,由英國Invensys公司、日本三菱電氣公司、美國Motorola公司和荷蘭Philips公司共同發起了ZigBee聯盟,致力于以IEEE 802.15.4 MAC和物理層協議為基礎,進行ZigBee技術的網絡層和高層應用規范的指定、設備測試和市場推廣工作,實現各家產品的相互兼容,以期望與其他類似無線通信產品相抗衡并迅速拓展在這一領域的市場。ZigBee是一種網絡容量大、節點體積小、架構簡單、低速率、低功耗的無線通信技術。由于其節點體積小,且能自動組網,所以布局十分方便;又因其強調由大量的節點進行群體協作,網絡具有很強的自愈能力,任何一個節點的失效都不會對整體任務的完成造成致命性影響,所以特別適合用來組建無線傳感器網絡。用ZigBee技術來實現無線傳感器網絡,主要需要考慮通信節點的硬件設計,以及實現相應功能所必需的軟件開發。基于TI(德州儀器公司)的CC2530芯片在中國推廣已經有好幾年了,具備了實現ZigBee技術的各種底層硬件需求,是真正的一體化解決方案,完全符合ZigBee技術對節點體積小的要求,另外,TI還提供了ZStack協議棧,盡可能地減輕了軟件開發的工作量。本書從實際出發,從簡至難地解析用ZigBee技術開發無線傳感器網絡的各個要點,由淺入深地講述如何開發具體的無線傳感器網絡系統。本教材通俗易懂,真正適合物聯網零基礎讀者的學習。本書從實際應用入手,由淺到深、循序漸進地詮釋了物聯網的相關概念、關鍵技術及應用,其中著重分析講述了CC2530芯片的內部資源配置及使用方法,以實驗過程和實驗現象為主導,詳細敘述了使用C語言對CC2530進行編程的方法,為讀者詳細分析ZigBee 無線網絡的實現及開發技巧,引導讀者自己動手進行ZigBee無線網絡項目實驗。本書不同于傳統的物聯網技術與應用書籍,本書中的所有例程均以實際硬件為依托,以最新版的ZigBee協議棧為中心,用C語言進行軟件設計,目的是讓讀者在各種ZigBee無線網絡基礎實驗和CC2530無線數據收發應用模式實驗中理解ZigBee協議棧,對ZigBee技術知其然,又能知其所以然,從而讓讀者在實際應用中徹底理解和掌握ZigBee技術。
物聯網技術及應用前言本書內容共分為4部分,分別為基礎篇、理論篇、入門篇和實踐篇。基礎篇主要對物聯網的概念、組成、發展做了概述,同時簡單介紹了物聯網中的關鍵技術和一些常用的物聯網傳感器及其特點,最后列舉了物聯網技術的典型應用。理論篇主要對CC2530內部模塊的GPIO、外部中斷、定時器、DMA、UART等內部資源的設置及相關寄存器進行了講解,同時在每節最后都提供了相關參考程序供讀者參考和使用。入門篇主要對CC2530的基本硬件結構進行介紹,同時對編輯軟件的安裝、應用,以及程序的燒寫進行介紹。實踐篇設置了一系列實驗,從最基礎的無線控制LED實驗開始到較復雜的ZigBee管理系統實驗,從易到難,適合不同層次的讀者進行遞階學習。同時,為了幫助讀者能夠清晰地理解程序的設計思路,在主要實驗中都給出了相關的程序流程圖,并在程序中標注了大量的注解。本書由陜西科技大學的張開生編著,負責擬定編寫教材大綱、設計內容框架、定稿。在編寫過程中得到陜西科技大學電信學院研究生宮瑤、彭朋、張盟蒙、許萌、權思敏等在錄入、排版、繪圖、軟件調試等方面的大力協助,在此一并表示感謝。為了使教材更具全面性、實用性,在編寫過程中查閱并引用了大量的參考資料及文獻,并選用了其中的一些實例,因篇幅有限,難以一一列舉,在此,謹致衷心的感謝。在編寫過程中雖然做了很多力所能及的努力,但限于作者的水平,書中疏漏及不足之處在所難免,敬請廣大讀者批評指正,以便修訂再版時得以改正提高。本書適合作為電氣信息類(如物聯網、電氣工程及其自動化、自動化、電子信息工程、通信工程、計算機科學與技術、電子科學與技術等)等專業的大學高年級學生和研究生的必修或選修教材,以及嵌入式計算機方面的指導用書,也可以作為相關科技人員的指導用書。書中所涉及相關文檔電子版、PPT、實驗板請聯系skdzks@163.com。
編者2016年6月于陜西科技大學
目錄基礎篇
第1章物聯網技術簡介3
1.1物聯網概述 3
1.1.1物聯網基本概念3
1.1.2物聯網概念的比較4
1.2物聯網的發展過程5
1.2.1物聯網的起源5
1.2.2物聯網的現狀6
1.3物聯網的基本層次6
1.3.1感知層6
1.3.2傳輸層8
1.3.3應用層8
1.4物聯網關鍵技術8
1.4.1感知與識別技術8
1.4.2節點軟硬件設計技術9
1.4.3組網與泛在接入技術9
1.4.4大規模的感知信息處理技術10
1.5物聯網架構10
習題與思考11
第2章物聯網關鍵技術12
2.1感知層技術12
2.1.1EPC技術12
2.1.2RFID技術12
2.1.3傳感器技術16
2.1.4無線傳感器網絡技術18
2.2傳輸層匯聚網技術20
2.2.1ZigBee技術20
2.2.2藍牙技術24
2.2.3WiFi技術26
2.2.4UWB技術28
物聯網技術及應用
目錄2.3傳輸層網絡接入技術29
2.3.1M2M接入技術29
2.3.26LoWPAN技術33
2.4傳輸層承載網技術36
2.4.13G WLAN36
2.4.2TDSCDMA37
2.4.3光纖通信技術37
習題與思考38
第3章物聯網用傳感器39
3.1傳感器工作原理39
3.1.1機械結構型傳感器39
3.1.2物性型傳感器40
3.2物聯網中常用傳感器42
3.2.1熱學量傳感器42
3.2.2密度和濃度傳感器47
3.2.3光學量傳感器48
3.2.4氣體傳感器53
3.2.5濕度傳感器56
3.2.6生物量傳感器58
3.2.7身份識別傳感器和雷達65
習題與思考71
第4章物聯網技術典型應用72
4.1物聯網在物流行業的應用72
4.2物聯網在醫療保健中的應用76
4.3物聯網在智能交通中的應用80
4.4物聯網在智能家居中的應用84
4.5物聯網在智能電網中的應用87
4.6物聯網在環保行業的應用90
4.7物聯網應用新視野91
4.7.1車聯網91
4.7.2人體感知網92
習題與思考92
理論篇
第5章物聯網系統解決方案95
5.1CC2530內部結構95
5.1.1CPU與內存95
5.1.2外部設備97
5.1.3無線電98
5.2MCS51單片機98
5.3CPU存儲器98
5.3.1存儲器映射98
5.3.2CPU存儲空間99
5.3.3物理存儲器100
5.3.4XDATA存儲空間106
5.3.5存儲器仲裁106
5.4CPU寄存器107
5.4.1數據指針107
5.4.2寄存器R0~R7108
5.4.3程序狀態字108
5.4.4累加器109
5.4.5寄存器B109
5.4.6堆棧指針109
5.5指令集綜述110
5.6中斷原理及相關設置114
5.6.1中斷屏蔽115
5.6.2中斷處理117
5.6.3中斷優先級120
5.6.4應用示例121
習題與思考123
第6章調試接口、電源管理與閃存控制器124
6.1調試接口124
6.1.1調試模式124
6.1.2調試傳輸124
6.1.3鎖位125
6.1.4調試配置126
6.1.5調試狀態128
6.1.6硬件斷點與閃存編程129
6.1.7調試接口與供電模式129
6.1.8調試寄存器130
6.2電源管理與時鐘130
6.2.1電源管理130
6.2.2電源管理控制132
6.2.3電源管理寄存器132
6.2.4振蕩器與時鐘133
6.3復位137
6.4閃存控制器138
6.4.1閃存存儲器組織138
6.4.2閃存寫138
6.4.3閃存頁面擦除140
6.4.4閃存DMA觸發140
6.4.5閃存控制器的寄存器141
習題與思考142
第7章I/O端口143
7.1未使用的I/O引腳143
7.2低I/O電壓143
7.3通用I/O143
7.4通用I/O中斷144
7.5通用I/O DMA144
7.6外設I/O145
7.7調試接口148
7.8XOSC輸入149
7.9無線測試輸出信號149
7.10掉電信號MUX(PMUX)149
7.11I/O引腳149
7.12應用示例157
習題與思考161
第8章DMA控制器及操作162
8.1DMA操作162
8.2DMA配置參數162
8.3DMA配置、傳輸與中斷165
8.4DMA配置數據結構與存儲訪問166
8.5DMA寄存器167
習題與思考169
第9章定時器170
9.1定時器1170
9.1.1計數器170
9.1.2通道模式控制171
9.1.3IR信號的產生和線性化174
9.1.4定時器1中斷與DMA觸發177
9.1.5定時器1寄存器177
9.1.6應用示例183
9.2定時器2184
9.2.1定時器操作184
9.2.2定時器2中斷186
9.2.3事件輸出(DMA觸發和CSP事件)186
9.2.4定時器啟動/停止同步186
9.2.5定時器2寄存器187
9.3定時器3和定時器4191
9.3.1位定時器計數器191
9.3.2定時器3/定時器4模式控制192
9.3.3通道模式控制192
9.3.4定時器3/4中斷與DMA觸發193
9.3.5定時器3 與定時器4 寄存器193
9.3.6應用示例198
9.4睡眠定時器199
9.4.1定時器比較199
9.4.2定時器捕獲200
9.4.3睡眠定時器寄存器200
9.4.4應用示例203
9.5看門狗定時器205
9.5.1看門狗模式206
9.5.2定時器模式206
9.5.3看門狗定時器寄存器206
9.5.4應用示例207
習題與思考209
第10章模數轉換器、隨機數發生器與AES協處理器210
10.1ADC模數轉換210
10.1.1ADC操作211
10.1.2ADC寄存器213
10.2隨機數發生器215
10.2.1隨機數發生器的運行216
10.2.2隨機數發生器的寄存器217
10.3AES協處理器217
10.3.1AES操作217
10.3.2密鑰和IV218
10.3.3協處理器與CPU通信218
10.3.4運行模式218
10.3.5AES DMA觸發221
10.3.6AES寄存器221
習題與思考222
第11章UART與USB接口223
11.1UART模式223
11.1.1UART發送223
11.1.2UART接收223
11.1.3UART硬件流控制224
11.1.4UART特征格式224
11.1.5SPI模式224
11.1.6SSN從模式選擇引腳225
11.1.7波特率的產生225
11.1.8清除USART226
11.1.9USART中斷226
11.1.10USART DMA觸發226
11.1.11USART寄存器227
11.1.12應用示例231
11.2USB235
11.2.1USB的使能與中斷236
11.2.2端口0237
11.2.3端口1~5239
11.2.4DMA242
11.2.5USB復位242
11.2.6掛起與恢復243
11.2.7遠程喚醒243
11.2.8USB寄存器243
習題與思考250
第12章CC2530相關無線通信技術251
12.1RF內核251
12.1.1RF收發器中斷相關251
12.1.2中斷寄存器251
12.2FIFO訪問255
12.3RF內核的DMA觸發255
12.4存儲器映射255
12.4.1RXFIFO256
12.4.2TXFIFO256
12.4.3幀過濾和源匹配存儲器映射256
12.5頻率和通道編程257
12.6IEEE 802.15.42006調制格式258
12.7IEEE 802.15.42006幀格式259
12.8發送模式260
12.9接收模式264
12.9.1RX控制264
12.9.2RX狀態時序265
12.9.3幀處理265
12.9.4同步頭和幀長度域265
12.9.5幀過濾266
12.9.6源地址匹配269
12.9.7幀校驗序列271
12.9.8確認傳輸271
12.10RXFIFO訪問273
12.10.1使用FIFO和FIFOP274
12.10.2錯誤情況275
12.10.3RSSI275
12.10.4鏈路質量指示275
12.11無線電控制狀態機制275
12.12隨機數的產生277
12.13數據包分析器和無線電測試輸出信號278
12.14命令選通/CSMACA處理器278
12.14.1指令存儲器279
12.14.2數據寄存器279
12.14.3中斷請求280
12.14.4隨機數指令280
12.14.5運行CSP程序280
12.14.6寄存器280
12.14.7指令集綜述281
12.14.8指令集定義283
12.15寄存器一覽表295
12.15.1寄存器設置更新296
12.15.2寄存器訪問模式296
12.15.3寄存器描述297
習題與思考316
入門篇
第13章SUSTEB2530硬件原理與結構319
13.1功能特點319
13.2管腳信息320
13.3硬件原理320
13.3.1SUSTEB2530 PACK板原理圖320
13.3.2SUSTEB2530底板原理圖320
13.4硬件結構322
13.4.1元件布局圖322
13.4.2開發板使用說明322
第14章ZigBee開發平臺的構建326
14.1實驗介紹與準備工作326
14.2IAR集成開發環境介紹327
14.3IAR Embedded Workbench的安裝327
14.4新建工程與工程設置331
14.4.1建立一個新的工程331
14.4.2建立一個源文件332
14.4.3添加源文件到工程332
14.4.4編寫代碼334
14.4.5工程的設置335
14.4.6編譯工程341
14.5安裝SmartRF Flash
Programmer和仿真器341
14.6程序仿真與調試345
14.7安裝USB轉串口驅動345
14.8安裝ZStackCC25302.3.01.4.0/2.5.1.a協議棧346
習題與思考347
實踐篇
實驗1BasicRF無線點控LED實驗351
習題與思考354
實驗2無線傳輸質量檢測實驗355
習題與思考357
實驗3無線收發控制LED實驗358
習題與思考370
實驗4協議棧中串口基礎實驗371
習題與思考375
實驗5廣播組網無線數據傳輸實驗376
習題與思考383
實驗6組播多終端控制協調器LED實驗384
習題與思考389
實驗7點播通信無線通信實驗390
習題與思考397
實驗8DS18B20溫度傳感器數據采集實驗398
習題與思考406
實驗9DHT11溫濕度傳感器數據采集實驗407
習題與思考413
實驗10氣體濃度數據采集實驗414
習題與思考418
實驗11光敏和熱敏傳感器數據采集實驗419
習題與思考422
實驗12紅外熱釋電傳感器數據采集實驗423
習題與思考427
實驗13按鍵無線點控臺燈實驗428
習題與思考433
實驗14串口透傳無線QQ實驗434
習題與思考441
實驗15基于GenericApp無線收發實驗442
習題與思考449
實驗16新建一個自己的ZStack工程實驗450
習題與思考453
實驗17協議捕捉與分析實驗454
習題與思考457
實驗18SUSTEB2530路由器編譯實驗458
習題與思考462
實驗19協議棧讀MQ2濃度模擬量實驗463
習題與思考466
實驗20協議棧讀光敏光強模擬量實驗467
習題與思考468
實驗21協議棧RFID射頻卡實驗469
習題與思考470
實驗22ZigBee管理系統實驗471
附錄A開發板圖474
附錄B硬件原理圖475
附錄C網絡層所定義的特性常量484
附錄D常用術語英漢對照表488
參考文獻493