無線傳感網(wǎng)技術(shù)及應(yīng)用 課件全套 蔡教武 項目01-24 認(rèn)識ZigBee無線傳感網(wǎng)技術(shù) - SSD1306液晶顯示_第1頁
無線傳感網(wǎng)技術(shù)及應(yīng)用 課件全套 蔡教武 項目01-24 認(rèn)識ZigBee無線傳感網(wǎng)技術(shù) - SSD1306液晶顯示_第2頁
無線傳感網(wǎng)技術(shù)及應(yīng)用 課件全套 蔡教武 項目01-24 認(rèn)識ZigBee無線傳感網(wǎng)技術(shù) - SSD1306液晶顯示_第3頁
無線傳感網(wǎng)技術(shù)及應(yīng)用 課件全套 蔡教武 項目01-24 認(rèn)識ZigBee無線傳感網(wǎng)技術(shù) - SSD1306液晶顯示_第4頁
無線傳感網(wǎng)技術(shù)及應(yīng)用 課件全套 蔡教武 項目01-24 認(rèn)識ZigBee無線傳感網(wǎng)技術(shù) - SSD1306液晶顯示_第5頁
已閱讀5頁,還剩610頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

項目一認(rèn)識ZigBee無線傳感網(wǎng)技術(shù)目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204拓展訓(xùn)練05項目導(dǎo)入01項目導(dǎo)入

作為一種與藍牙、Wi-Fi齊名的短距離無線傳感網(wǎng)技術(shù),ZigBee具有功耗低、成本低、安全性好、網(wǎng)絡(luò)容量大、工作頻段靈活等優(yōu)點,廣泛應(yīng)用于工業(yè)控制、智能家居、醫(yī)療護理、智能農(nóng)業(yè)、智能物流、城市交通、消費電子等領(lǐng)域,目前最新版本為ZigBee3.0。

本項目將介紹ZigBee技術(shù)的基本知識及其它幾種常見的近距離無線傳感網(wǎng)技術(shù)。項目分析02目前,物聯(lián)網(wǎng)系統(tǒng)架構(gòu)通常劃分為四層,傳感網(wǎng)是物聯(lián)網(wǎng)系統(tǒng)的關(guān)鍵組成部分,它覆蓋了感知層和網(wǎng)絡(luò)層。感知層實現(xiàn)對設(shè)備的信息和狀態(tài)進行感知和控制;網(wǎng)絡(luò)層實現(xiàn)感知層和平臺層之間的信息傳輸。隨著技術(shù)的不斷進步,現(xiàn)在的傳感網(wǎng)已經(jīng)有很多類型,按照傳輸介質(zhì)來分,傳感網(wǎng)可以分為有線傳感網(wǎng)和無線傳感網(wǎng)。典型的有線傳感網(wǎng)有RS-485總線網(wǎng)絡(luò)、CAN總線網(wǎng)絡(luò)和PLC電力線載波等。常見的無線傳感網(wǎng)有基于Wi-Fi、藍牙、紅外線、ZigBee、Z-Wave、LoRa和NB-IoT等無線技術(shù)的無線傳感網(wǎng)。本項目主要學(xué)習(xí)基于ZigBee的無線傳感網(wǎng)技術(shù)應(yīng)用與開發(fā)技術(shù)。項目分析項目要求:

認(rèn)識ZigBee無線傳感網(wǎng)技術(shù),掌握ZigBee無線傳感網(wǎng)定義、特點和應(yīng)用領(lǐng)域。項目分析項目目標(biāo)

03項目目標(biāo)項目目標(biāo)掌握ZigBee無線傳感網(wǎng)的定義掌握ZigBee無線傳感網(wǎng)的特點了解ZigBee協(xié)議的版本了解ZigBee芯片及其發(fā)展了解Z-Stack協(xié)議棧的發(fā)展過程知識儲備04知識儲備知識儲備ZigBee無線傳感網(wǎng)定義ZigBee無線傳感網(wǎng)特點常用短距離無線通信技術(shù)ZigBee版本ZigBee芯片發(fā)展Z-Stack協(xié)議棧發(fā)展知識儲備

ZigBee是一種短距離、低功耗的無線通信技術(shù)名稱,這一名稱來源于蜜蜂的八字舞。蜜蜂在發(fā)現(xiàn)花叢后會通過一種特殊的肢體語言來告知同伴新發(fā)現(xiàn)的食物源位置等信息,這種肢體語言就是ZigZag舞蹈,是蜜蜂之間一種簡單傳達信息的方式,借此意義將這種新一代無線通訊技術(shù)命名為ZigBee。一、ZigBee無線傳感網(wǎng)定義知識儲備(1)低功耗:這是ZigBee一個顯著特點。ZigBee的傳輸速率低,發(fā)射功率僅為1mW,而且采用了休眠模式,由于工作周期較短,可以確保兩節(jié)五號電池支持長達六個月到兩年左右的使用時間。(2)低成本:協(xié)議簡單且所需的存儲空間小,這極大降低了ZigBee的成本,每塊芯片價格僅1美元左右,而且ZigBee協(xié)議是免專利費的。(3)時延短:通信時延和從休眠狀態(tài)激活的時延都非常短。典型的設(shè)備搜索時延為30ms,休眠激活時延為15ms,活動設(shè)備信道接入時延為15ms。這樣一方面節(jié)省了能量消耗,另一方面更適用于對時延要求比較敏感的場合。(4)數(shù)據(jù)傳輸速率低:只有20kbps到250kbps,專注于低數(shù)據(jù)傳輸速率的場合。(5)網(wǎng)絡(luò)容量大:一個ZigBee設(shè)備可以與另外254個設(shè)備相連接,一個ZigBee網(wǎng)絡(luò)可以容納最多65536個設(shè)備,一個區(qū)域內(nèi)可以同時存在100個ZigBee網(wǎng)絡(luò)。網(wǎng)絡(luò)有星狀、樹狀和網(wǎng)狀網(wǎng)絡(luò)結(jié)構(gòu)。在有節(jié)點加入和撤出時,網(wǎng)絡(luò)具有自動修復(fù)功能。二、ZigBee無線傳感網(wǎng)特點知識儲備(6)有效范圍?。河行Ц采w范圍在10~200米之間,具體依據(jù)實際發(fā)射功率的大小和各種不同的應(yīng)用模式而定。(7)工作頻段靈活:使用免費頻段分別為2.4GHz(全球流行)、868MHz(歐洲)以及915MHz(美國),均為免執(zhí)照頻段。(8)安全性高:ZigBee提供了基于循環(huán)冗余校驗(CRC)的數(shù)據(jù)包完整性檢查功能,支持鑒權(quán)和認(rèn)證,采用了AES-128的加密算法,各個應(yīng)用可以靈活確定其安全屬性。(9)數(shù)據(jù)傳輸可靠性高:采取了碰撞避免策略,同時為需要固定帶寬的通信業(yè)務(wù)預(yù)留了專用時隙,避開了發(fā)送數(shù)據(jù)的競爭和沖突。MAC層采用了完全確認(rèn)的數(shù)據(jù)傳輸模式,每個發(fā)送的數(shù)據(jù)包都必須等待接收方的確認(rèn)信息,如果傳輸過程中出現(xiàn)問題可以進行重發(fā)。二、ZigBee無線傳感網(wǎng)特點知識儲備

1.Wi-Fi/IEEE802.11協(xié)議Wi-Fi原先是無線保真(WirelessFidelity)的縮寫,在無線局域網(wǎng)的范疇是指“無線相容性認(rèn)證”,實質(zhì)上是一種商業(yè)認(rèn)證,同時也是一種基于IEEE802.11標(biāo)準(zhǔn)的無線局域網(wǎng)(WLAN)技術(shù)。優(yōu)點:覆蓋范圍廣,數(shù)據(jù)傳輸速率快。缺點:存在一定的安全風(fēng)險,信號穩(wěn)定性較差,功耗略高,組網(wǎng)能力差。三、常用短距離無線通信技術(shù)知識儲備表1-1各Wi-Fi版本的主要技術(shù)參數(shù)Wi-Fi版本W(wǎng)i-Fi標(biāo)準(zhǔn)發(fā)布時間最高速率工作頻段Wi-Fi7IEEE802.11be2022年30Gbps2.4GHz,5GHz,6GHzWi-Fi6IEEE802.11ax2019年11Gbps2.4GHz或5GHzWi-Fi5IEEE802.11ac2014年1Gbps5GHzWi-Fi4IEEE802.11n2009年600Mbps2.4GhH或5GHzWi-Fi3IEEE802.11g2003年54Mbps2.4GHzWi-Fi2IEEE802.11b1999年11Mbps2.4GHzWi-Fi1IEEE802.11a1999年54Mbps5GHzWi-Fi0IEEE802.111997年2Mbps2.4GHz知識儲備

2.藍牙/IEEE802.15.1協(xié)議藍牙(Bluetooth)技術(shù)最早始于1994年,由瑞典電信巨頭愛立信公司研發(fā)。藍牙可連接多個設(shè)備,克服了數(shù)據(jù)同步的難題。藍牙技術(shù)聯(lián)盟在全球擁有超過25000家成員公司,它們分布在電信、計算機、網(wǎng)絡(luò)、和消費電子等多重領(lǐng)域。IEEE將藍牙技術(shù)列為IEEE802.15.1標(biāo)準(zhǔn),但如今已不再維持該標(biāo)準(zhǔn)。

優(yōu)點:速率快、低功耗,安全性高。

缺點:網(wǎng)絡(luò)節(jié)點少,不適合多點布控。三、常用短距離無線通信技術(shù)知識儲備藍牙采用的波段為2.4–2.485MHz。這是全球范圍內(nèi)無需取得執(zhí)照的工業(yè)、科學(xué)和醫(yī)療(ISM)用的2.4GHz無線電頻段。藍牙使用跳頻技術(shù),將傳輸?shù)臄?shù)據(jù)分割成數(shù)據(jù)包,通過79個指定的藍牙頻道分別傳輸數(shù)據(jù)包。每個頻道的頻寬為1MHz。藍牙4.0使用2MHz間距,可容納40個頻道。第一個頻道始于2402MHz,每1MHz一個頻道,至2480MHz,通常每秒跳1600次。

藍牙是基于數(shù)據(jù)包、有著主從架構(gòu)的協(xié)議。一個主設(shè)備至多可和同一網(wǎng)中的七個從設(shè)備通訊。所有設(shè)備共享主設(shè)備的時鐘,設(shè)備之間可通過協(xié)議轉(zhuǎn)換角色,從設(shè)備也可轉(zhuǎn)換為主設(shè)備(比如,一個頭戴式耳機如果向手機發(fā)起連接請求,它作為連接的發(fā)起者,自然就是主設(shè)備,但是隨后也許會作為從設(shè)備運行)知識儲備

3.ZigBee/802.15.4協(xié)議

ZigBee被正式提出來是在2003年,它的出現(xiàn)是為了彌補藍牙通信協(xié)議的高復(fù)雜、功耗大、距離近、組網(wǎng)規(guī)模太小等缺陷。ZigBee可工作在三個頻段868MHz-868.6MHz、902MHz-928MHz和2.4GHz-2.4835GHz,其中最后一個頻段世界范圍內(nèi)通用,16個信道,該頻段也屬于全球范圍內(nèi)無需取得執(zhí)照的ISM(IndustrialScientificMedical)頻段。三個頻段傳輸速率分別為20kbps、40kbps以及250kbps。

ZigBee采用自組網(wǎng)的方式進行通信,在無線傳感器網(wǎng)絡(luò)中,當(dāng)某個傳感器的訊息從某條通信路徑無法順暢的傳遞出去時,動態(tài)路由器會迅速的找出另外一條近距離的信道傳輸數(shù)據(jù),從而保證了信息的可靠傳遞。

優(yōu)點:安全性高、功耗低、組網(wǎng)能力強、容量大、電池壽命長。

缺點:抗干擾性差,ZigBee協(xié)議沒有開源,通信距離短,數(shù)據(jù)傳輸率較低。三、常用短距離無線通信技術(shù)知識儲備

4.NFC

近場通信(NearFieldCommunication)是一種新興的技術(shù),使用了NFC技術(shù)的設(shè)備(比如手機)可以在彼此靠近的情況下進行數(shù)據(jù)交換。NFC技術(shù)是由非接觸式射頻識別(RFID)及互連互通技術(shù)整合演變而來,由飛利浦和索尼共同研制開發(fā),通過在單一芯片上集成感應(yīng)式讀卡器、感應(yīng)式卡片和點對點通信的功能,利用移動終端實現(xiàn)移動支付、電子票務(wù)、門禁、移動身份識別、防偽等應(yīng)用。NFC與藍牙技術(shù)功能類似,但傳輸速率和傳輸距離沒有藍牙快和遠,同時功耗和成本都較低,保密性好,這些優(yōu)點讓它成為移動支付和消費類電子的寵兒。

優(yōu)點:低成本、低功耗,高安全性。

缺點:數(shù)據(jù)傳輸率較低,不能組網(wǎng)。三、常用短距離無線通信技術(shù)知識儲備

5.其他短距通信技術(shù)

除了以上4種典型的短距無線通信技術(shù)之外,還有超寬帶、紅外等技術(shù)。超寬帶(UWB)是一種無載波通信技術(shù),利用納秒至微微秒級的非正弦波窄脈沖傳輸數(shù)據(jù),能在10m左右的范圍內(nèi)實現(xiàn)數(shù)百Mb/s至數(shù)Gb/s的數(shù)據(jù)傳輸速率,具有系統(tǒng)復(fù)雜度低、發(fā)射信號功率譜密度低、對信道衰落不敏感、低截獲能力、定位精度高、抗干擾性能強、傳輸速率高、帶寬極寬、消耗能量小等優(yōu)點,尤其適用于室內(nèi)等密集多徑場所的高速無線接入,主要應(yīng)用于室內(nèi)通信、高速無線LAN、家庭網(wǎng)絡(luò)、無繩電話、安全檢測、位置測定、雷達等領(lǐng)域。

紅外技術(shù)也是無線通信技術(shù)的一種,可以進行無線數(shù)據(jù)的傳輸。紅外有明顯的特點:點對點的傳輸方式、無線、不能離得太遠,要對準(zhǔn)方向,不能穿墻與障礙物,幾乎無法控制信息傳輸?shù)倪M度。802.11物理層標(biāo)準(zhǔn)中,除了使用2.4GHz頻率的射頻外,還包括了紅外的有關(guān)標(biāo)準(zhǔn)。IrDA1.0支持最高115.2kbps的通信速率,IrDA1.1支持到4Mbps。三、常用短距離無線通信技術(shù)知識儲備三、常用短距離無線通信技術(shù)表1-2各種短距無線通信技術(shù)的主要技術(shù)參數(shù)技術(shù)參數(shù)Wi-Fi藍牙ZigBeeNFCUWB紅外數(shù)據(jù)傳輸率11-54Mbps720kbps-1Mbps20-250kbps424kbps53-480Mbps20bps通信距離100m-200m10m30m10cm0.2-40m10m標(biāo)準(zhǔn)IEEE802.11IEEE802.15.1IEEE802.15.4ISO18092

NEC/飛利浦/東芝等采用頻段2.4GHz2.4GHz2.4GH/868MHz/915MHz13.56MHz3.1GHz-10.6GHz38KHz安全性低高中高極高高功耗10-50mA20mA5mA10mA10-50mA1mA抗干擾性能較低較低中中高高知識儲備

第一個ZigBee協(xié)議棧規(guī)范于2004年12月正式發(fā)布,稱為ZigBee1.0或ZigBee2004。

第二個ZigBee協(xié)議棧規(guī)范于2006年12月發(fā)布,稱為ZigBee2006規(guī)范,主要是用“群組庫(ClusterLibrary)”替換了ZigBee2004中的MSG/KVP結(jié)構(gòu)。

第三個ZigBee協(xié)議棧規(guī)范于2007年10月發(fā)布,稱為ZigBee2007規(guī)范,它包含兩個協(xié)議棧模板(Profile),一個是ZigBee協(xié)議棧模板(StackProfile1),它是2006年發(fā)布的,目標(biāo)是消費電子產(chǎn)品和燈光商業(yè)應(yīng)用環(huán)境,設(shè)計簡單,使用在少于300個節(jié)點的網(wǎng)絡(luò)中。另一個是ZigBeePro協(xié)議棧模板(StackProfile2),它是在2007年發(fā)布,目標(biāo)是商業(yè)和工業(yè)環(huán)境,支持大型網(wǎng)絡(luò),1000個以上網(wǎng)絡(luò)節(jié)點,具有更高的安全性,并增加了多播、多對一路由等功能。四、ZigBee版本知識儲備

2016年5月,ZigBee聯(lián)盟推出了ZigBee3.0標(biāo)準(zhǔn)。其主要的任務(wù)就是為了統(tǒng)一眾多應(yīng)用層協(xié)議,解決了不同廠商ZigBee設(shè)備之間的互聯(lián)互通問題。用戶只要購買任意一個經(jīng)過ZigBee3.0的網(wǎng)關(guān)就可以控制不同廠家基于ZigBee3.0的智能設(shè)備。四、ZigBee版本知識儲備

1.早期ZigBee芯片發(fā)展

從2003年12月,Chipcon公司推出業(yè)界第一款ZigBee收發(fā)器CC2420以來,各大半導(dǎo)體廠家可謂百家爭鳴,先后推出許多款ZigBee收發(fā)芯片,其中仍然以Chipcon最受關(guān)注。先后有多家公司推出與ZigBee收發(fā)芯片匹配的專業(yè)處理器,除了Chipcon外就以微芯的PIC18F4620和ATMEL的A222222最為成功。2004年12月Chipcon推出全球第一個基于IEEE802.15.4/ZigBee協(xié)議的片上系統(tǒng)(SoC)解決方案--CC2430無線單片機,該款芯片內(nèi)部集成了一顆增強型的8051內(nèi)核以及業(yè)內(nèi)性能卓越的ZigBee收發(fā)器CC2420。2005年12月,Chipcon再接再厲,推出內(nèi)嵌定位引擎的ZigBee/IEEE802.15.4解決方案CC2431。五、ZigBee芯片發(fā)展知識儲備

2006年2月TI公司收購Chipcon公司,以壯大其在RF行業(yè)的龍頭地位。之后TI在發(fā)布的ZigBee收發(fā)器以及無線單片機上進行不斷的修訂,也陸續(xù)開發(fā)出具有針對性的開發(fā)系統(tǒng),并于2006年10月把其自身的MSP430處理器用于ZigBee收發(fā)器的控制,并于2007年5月推出整套CC2420+MSP430ZigBee/IEEE802.15.4DevelopmentKit開發(fā)包。2008年2月,推出第二代ZigBee/IEEE802.15.4收發(fā)芯片CC2520,2008年4月推出ZigBee協(xié)處理器CC2480,2008年6月推出2.4G放大芯片CC2591。五、ZigBee芯片發(fā)展知識儲備

芯片供應(yīng)商TI共推出了三種ZigBee方案,方案1為單芯片(SOC)CC2430/CC2431;方案2為協(xié)處理器(CC2480)方案,提供AT命令接口;方案3為MCU加射頻收發(fā)器(CC2520/CC2420)。方案1和2功耗理想,其中方案1是單芯片方案,集成度高;方案3是采用TIMSP430加上外置的射頻收發(fā)器。方案2的ZigBee協(xié)處理器可以與任何MCU接口,下一步還將和DSP對接,因此方案2更加靈活,上市時間更快。五、ZigBee芯片發(fā)展知識儲備

2.國外ZigBee芯片最新發(fā)展近年來,國外芯片巨頭主要提供了CC2530、CC2630和JN5168等ZigBee芯片方案。1)CC2530。CC2530是美國TI推出的一款用于IEEE802.15.4,ZigBee和RF4CE應(yīng)用的SOC解決方案。集成了增強型工業(yè)標(biāo)準(zhǔn)8051MCU和IEEE802.15.4RF收發(fā)器,擁有系統(tǒng)可編程Flash、8-KBRAM和UART、SPI、DMA等諸多強大外設(shè)功能。CC2530有四種不同的Flash版本:CC2530F32/64/128/256,分別具有32KB/64KB/128KB/256KB的Flash存儲器。(成都億佰特電子科技有限公司自主生產(chǎn)的E18系列產(chǎn)品采用CC2530F256內(nèi)核處理器)。2)CC2630。CC2630是美國TI推出的內(nèi)含一個32位ARMCortex–M3內(nèi)核,與攜帶了ARMCortex-M0內(nèi)核管理的IEEE802.15.4MAC系統(tǒng)同時運行的雙內(nèi)核SOC,雙內(nèi)核架構(gòu)可改善整體系統(tǒng)的性能和功耗,并釋放閃存以供應(yīng)用。其主頻高達48MHz,富有豐富外設(shè)的,高達128KBFlash和20KBSRAM,可有效解決ZigBee和6LoWPAN應(yīng)用方案。3)JN5168。JN5168是一款NXP推出的支持JenNet-IP,ZigBeePRO或RF4CE網(wǎng)絡(luò)的32位增強型帶嵌入式EEPROM存儲器的RISC處理器。擁有256KBFlash和32KBRAM,以及IEEE802.15.4無線收發(fā)器,提供了一個完整的集成解決方案。五、ZigBee芯片發(fā)展知識儲備

3.國內(nèi)ZigBee芯片最新發(fā)展國內(nèi)知名ZigBee芯片生產(chǎn)商有臺晶科技、炬力、深谷電子等。與國外品牌相比,國內(nèi)ZigBee芯片生產(chǎn)企業(yè)產(chǎn)品價格較便宜,同時具備性能穩(wěn)定、環(huán)保、易操作等特點,是大批企業(yè)、個人選擇使用的主要原因。目前,國內(nèi)ZigBee芯片市場份額逐年上升,并且預(yù)計在未來幾年會進一步擴大。1)國產(chǎn)ZigBee芯片的優(yōu)勢國產(chǎn)ZigBee芯片與進口芯片相比,雖然在品牌影響力、市場認(rèn)可度、穩(wěn)定性等方面還有些劣勢,但也具有以下明顯優(yōu)勢:(1)成本更低:國產(chǎn)ZigBee芯片的生產(chǎn)成本相對進口芯片較低,因此國產(chǎn)芯片的產(chǎn)品價格更優(yōu)惠,同時質(zhì)量得到了保障。(2)適應(yīng)國內(nèi)市場:國產(chǎn)芯片與進口芯片相比,它們能夠更好地適應(yīng)國內(nèi)市場的需求,同時能夠提供更符合中國國情的一系列軟硬件支持。(3)技術(shù)逐步提升:雖然國內(nèi)ZigBee芯片的技術(shù)與進口芯片仍有差距,但是隨著技術(shù)的不斷創(chuàng)新和推動,國產(chǎn)芯片技術(shù)也逐漸提升,其性能也逐漸得到提高。五、ZigBee芯片發(fā)展知識儲備2)國產(chǎn)ZigBee芯片的發(fā)展前景和趨勢目前,國內(nèi)智能家居市場逐漸普及,物聯(lián)網(wǎng)應(yīng)用也逐漸成熟。隨著技術(shù)的發(fā)展和應(yīng)用需求的不斷增長,ZigBee芯片市場將不斷擴大,目前中國已經(jīng)成為全球大的物聯(lián)網(wǎng)市場之一。在這種情況下,國產(chǎn)ZigBee芯片有望逐步獲得更多市場份額,其發(fā)展前景也逐漸被看好。(1)政策扶持:因全球貿(mào)易環(huán)境和國內(nèi)政策的影響,在一些市場領(lǐng)域的采購和使用堅持中國制造,這給國產(chǎn)ZigBee芯片帶來了很好的機遇和政策支持。(2)生態(tài)圈建設(shè):除了芯片本身,支持ZigBee技術(shù)的設(shè)備、平臺、工具、服務(wù)等生態(tài)圈建設(shè)也非常重要,這將吸引開發(fā)者和合作伙伴加入其中,共同推動技術(shù)的發(fā)展。(3)行業(yè)應(yīng)用需求:智能家居、智慧城市、工業(yè)控制、醫(yī)療健康等領(lǐng)域?qū)Φ凸摹⒌统杀?、高可靠性的無線物聯(lián)網(wǎng)技術(shù)有著巨大的需求,尤其是在應(yīng)對人口老齡化、環(huán)保節(jié)能等社會經(jīng)濟問題方面,ZigBee技術(shù)也將發(fā)揮更加重要的作用。五、ZigBee芯片發(fā)展知識儲備2007年1月推出ZigBee協(xié)議棧(Z-Stack),并于2007年4月提供免費下載版本V1.4.1,之后陸續(xù)推出了V1.4.2、V1.4.3等版本。2008年4月,針對MSP430F4618+CC2420組合把Z-Stack升級為V2.0.0。2008年8月,升級Z-StackV2.0.0支持CC2520+MSP430。2009年7月,升級Z-Stack為V2.1.0,支持ZigBeePROandSmartEnergy。在TI推出大家最熟悉的Z-Stack2.5.1a協(xié)議棧之后,并沒有繼續(xù)以Z-Stack2.6.x的形式直接發(fā)布,而是按照不同應(yīng)用場景發(fā)布了不同版本的協(xié)議棧,原因在于TI希望開發(fā)者根據(jù)實際的應(yīng)用選擇更有針對的性的協(xié)議棧進行開發(fā)。之后TI又推出Z-Stack3.0.x和Z-Stack3.x.0兼容協(xié)議套件,其目的是將多個前面的ZigBee標(biāo)準(zhǔn)整合成一個統(tǒng)一的標(biāo)準(zhǔn)。Z-Stack3.0協(xié)議套件針對的CC2530,CC2531和CC2538MCU六、Z-Stack協(xié)議棧發(fā)展知識儲備Z-Stack3.0協(xié)議套件主要實現(xiàn)了以下幾個功能:具有統(tǒng)一的ZigBee集群庫,它是物聯(lián)網(wǎng)應(yīng)用程序的通用語言dotdot的基礎(chǔ),用于定義嵌入式物聯(lián)網(wǎng)應(yīng)用程序的數(shù)據(jù)對象,模型和功能,實現(xiàn)ZigBee基本設(shè)備行為規(guī)范。該規(guī)范定義了所有ZigBee設(shè)備使用的網(wǎng)絡(luò)形成、發(fā)現(xiàn)和應(yīng)用程序供應(yīng)的通用機制集?;赯igBeePRO2015堆棧,它提供了新的和改進的安全模式,包括用于帶外密鑰交換的安裝代碼,以及用于無協(xié)調(diào)器網(wǎng)絡(luò)拓?fù)涞姆植际桨踩W(wǎng)絡(luò)。支持綠色電源代理,允許能量收集和超低功耗設(shè)備無縫連接到ZigBee網(wǎng)絡(luò)。保持與以前的ZigBeePRO和應(yīng)用程序配置文件的向前和向后兼容性。樣品應(yīng)用包括快速原型設(shè)計,包括門鎖,恒溫器,燈和開關(guān),以及溫度傳感器等。ZigBee網(wǎng)絡(luò)處理器固件,通過串行端口提供對ZigBeePro2015堆棧和基本設(shè)備行為功能的抽象訪問,用于雙芯片架構(gòu)基于ZigBee的應(yīng)用程序。Z-Stack3.x.0是TI針對CC1352和CC2652SimpleLink無線MCU的ZigBee3.0兼容協(xié)議套件。六、Z-Stack協(xié)議棧發(fā)展拓展訓(xùn)練05拓展訓(xùn)練請查閱相關(guān)資料,研究常見的遠距離無線傳感網(wǎng)技術(shù)有哪些?它們各有什么特點和應(yīng)領(lǐng)域?謝謝大家觀看GENERAL

TEACHING項目二認(rèn)識IAR集成開發(fā)環(huán)境目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204項目實施拓展訓(xùn)練0506項目導(dǎo)入01項目導(dǎo)入

大學(xué)畢業(yè)生小王到一家傳感網(wǎng)系統(tǒng)方案設(shè)計公司實習(xí),項目經(jīng)理要求小王搭建一個適合ZigBee技術(shù)開發(fā)的集成開發(fā)環(huán)境,小王該如何搭建該系統(tǒng)呢?

本項目將帶你認(rèn)識ZigBee無線傳感網(wǎng)技術(shù)的集成開發(fā)環(huán)境——IAREmbeddedWorkbench。項目分析02集成開發(fā)環(huán)境(IDE,IntegratedDevelopmentEnvironment),是指用于軟件開發(fā)的工具,通常包含編輯器、編譯器、調(diào)試器、圖形用戶界面等集成了多種工具的應(yīng)用程序。傳感網(wǎng)技術(shù)開發(fā)的集成開發(fā)環(huán)境可分為通用IDE、專用IDE兩種,也可自行搭建自己的IDE。通用IDE指的是支持多種不同廠家單片機芯片的IDE,比如,Keil、IAR等。專用IDE是指支持特定型號單片機,或特定環(huán)境的IDE工具。比如,只支持STM32的STM32CubeIDE等。本項目中,公司需要小王搭建適合ZigBee無線傳感網(wǎng)技術(shù)的集成開發(fā)環(huán)境,所使用的軟件開發(fā)環(huán)境為IAR,本項目將學(xué)習(xí)IARfor51版本的基本使用方法。項目分析項目要求:

認(rèn)識并搭建IAR集成開發(fā)環(huán)境,順利運行一個簡單的IAR程序。項目分析項目目標(biāo)

03項目目標(biāo)項目目標(biāo)了解IAR軟件開發(fā)環(huán)境的版本及其發(fā)展掌握IAR的基本使用方法掌握ZigBee軟件開發(fā)環(huán)境的搭建掌握ZigBee程序編譯和下載的基本流程知識儲備04知識儲備知識儲備IAR集成開發(fā)環(huán)境IAR版本IAR的安裝方法IAR的使用方法知識儲備

ZigBee是一種短距離、低功耗的無線通信技術(shù)名稱,這一名稱來源于蜜蜂的八字舞。蜜蜂在發(fā)現(xiàn)花叢后會通過一種特殊的肢體語言來告知同伴新發(fā)IARforMCS-51,即IAREmbeddedWorkbenchforMCS-51。IAREmbeddedWorkbench是瑞典IARSystems公司為微處理器開發(fā)的一個集成開發(fā)環(huán)境,簡稱IAR或EW。IAR針對不同的處理器提供不同的版本,如針對內(nèi)核為8051的微處理器提供IARfor51版本,針對內(nèi)核為ARM或AVR的微處理器提供IARforARM和IARforAVR版本。一、IAR集成開發(fā)環(huán)境知識儲備

IAR集成開發(fā)環(huán)境針對不同的MCU開發(fā)了不同版本的軟件,主要有IAREmbeddedWorkbenchforArm、IAREmbeddedWorkbenchfor8051、IAREmbeddedWorkbenchforMSP430、IAREmbeddedWorkbenchforAVR、IAREmbeddedWorkbenchforSTM8等版本,其中常用的是IAREmbeddedWorkbenchforArm(例如ARMCortexM3和STM32F407等)和IAREmbeddedWorkbenchfor8051(例如89C51和CC2530等)。IAREW8051又有許多不同的版本,版本間的兼容性較差。因此開發(fā)不同類型的項目最好選擇不同版本的IAR開發(fā)環(huán)境。二、IAR版本知識儲備

IAR集成開發(fā)環(huán)境針對不同的MCU開發(fā)了不同版本的軟件,主要有IAREmbeddedWorkbenchforArm、IAREmbeddedWorkbenchfor8051、IAREmbeddedWorkbenchforMSP430、IAREmbeddedWorkbenchforAVR、IAREmbeddedWorkbenchforSTM8等版本,其中常用的是IAREmbeddedWorkbenchforArm(例如ARMCortexM3和STM32F407等)和IAREmbeddedWorkbenchfor8051(例如89C51和CC2530等)。IAREW8051又有許多不同的版本,版本間的兼容性較差。因此開發(fā)不同類型的項目最好選擇不同版本的IAR開發(fā)環(huán)境。二、IAR版本知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備三、IAR的安裝方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法知識儲備四、IAR的使用方法項目實施05項目實施一、準(zhǔn)備設(shè)備和資源項目實施前必須先準(zhǔn)備好相應(yīng)的設(shè)備和資源,見表2-1。序號設(shè)備/資源名稱數(shù)量單位是否準(zhǔn)備到位(√)1CC2530模塊1個

2CCDebugger仿真器(帶下載線)1個

3MiniUSB供電線或5號電池1根/個

表2-1設(shè)備和資源清單項目實施

一般工程中采用SmartRF04EB或CC-Debugger仿真器,它們通常通過JTAG接口與CC2530開發(fā)板相連。二、安裝仿真器(燒錄器)驅(qū)動項目實施二、安裝仿真器(燒錄器)驅(qū)動如果未能成功安裝驅(qū)動,打開Windows的設(shè)備管理器也可以看到有一個黃色驚嘆號。項目實施二、安裝仿真器(燒錄器)驅(qū)動項目實施二、安裝仿真器(燒錄器)驅(qū)動項目實施1.連接設(shè)備

將CCDebugger仿真器的接口與CC2530實驗?zāi)K(實驗?zāi)K使用“求助按鈕V1.0”)相連,仿真器另一端用USB數(shù)據(jù)線連接到PC上,如圖2-21所示。

圖2-21實驗接線圖

三、實施過程項目實施2.運行程序?qū)⑾旅娴拇a寫入main.c文件中。#include<ioCC2530.h>#defineLED1P1_0//定義P1.0口用LED1(紅燈D5),讓代碼更易讀懂//延時1ms子程序voidDelayMS(intMsec){inti,j;for(i=0;i<msec;i++)for(j=0;j<535;j++);}//主程序voidmain(void){P1DIR|=0x01;//只修改LED1燈相應(yīng)的P1_0口為輸出while(1)//死循環(huán){LED1=0;//點亮LED1DelayMS(1000);//延時1秒LED1=1;//熄滅LED1DelayMS(1000);//延時1秒}}項目實施點擊Compile編譯按鈕,當(dāng)下方信息框提示0error(s),說明代碼正確,再點擊DownloadandDebug按鈕就可以把生成的Hex文件燒寫進CC2530芯片中,如圖2-22所示。項目實施項目成果06按仿真器或者CC2530實驗?zāi)K上的Reset復(fù)位鍵,打開串口調(diào)試助手,設(shè)置波特率為115200,串口調(diào)試助手將會收到來自CC2530的片內(nèi)溫度,如圖11-5所示。圖11-5串口獲得CC2530片內(nèi)溫度值

按仿真器或者CC2530模塊上的Reset復(fù)位鍵,可以看到CC2530開發(fā)板上的紅燈D5閃爍,說明程序燒錄成功,其效果如圖2-23所示。項目成果拓展訓(xùn)練07拓展訓(xùn)練一、訓(xùn)練描述

以上實驗中,我們順利運行了第一個程序,看著閃爍的紅燈D5,是不是感覺有所收獲呢?如果想讓另外一個綠燈D6也同時閃爍,你能做到嗎?不妨修改上面的代碼,重新下載試試!二、訓(xùn)練要求控制2個LED燈(D5和D6)同時閃爍。拓展訓(xùn)練謝謝大家觀看GENERAL

TEACHING項目三制作LED流水燈目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204項目實施拓展訓(xùn)練0506項目導(dǎo)入01項目導(dǎo)入項目導(dǎo)入LED因為其本身發(fā)光顏色多樣、絢麗多彩,是各種場所、設(shè)施創(chuàng)造氣氛,形成照明效果最佳選擇。在很多地方,如電影院、時間隧道、大型商場大樓的外觀等需要通過照明來發(fā)揮效果,如果用上流水燈的襯托,就能讓體驗者感受到臨場感和趣味感。項目導(dǎo)入本項目將帶你揭開流水燈的神秘面紗,設(shè)計一個屬于自已的LED流水燈。項目導(dǎo)入項目分析02項目分析本項目需要使用LED設(shè)計一個流水燈,我們可以使用CC2530單片機的I/O口來實現(xiàn)項目任務(wù)。IO口作為單片機與外界通信最主要的手段,是單片機學(xué)習(xí)中最基本也是最重要的一個知識。在本項目中,我們可以通過單片機的IO口來控制LED的亮和滅,再設(shè)計相應(yīng)的程序,便可實現(xiàn)流水燈的效果。應(yīng)用戶需求,設(shè)計一套LED流水燈系統(tǒng)。設(shè)備選型及開發(fā)環(huán)境搭建。設(shè)計LED控制程序,實現(xiàn)LED1、LED2流水燈效果。項目要求項目目標(biāo)03項目目標(biāo)

了解CC2530芯片的內(nèi)部構(gòu)成

掌握CC2530芯片I/O口的特點

了解CC2530的SFR(特殊功能寄存器)

學(xué)會與CC2530I/O相關(guān)的SFR配置

學(xué)會使用CC2530的I/0控制外部設(shè)備原理與編程知識儲備04知識儲備由于我們使用的單片機為CC2530芯片,要完成這個項目的設(shè)計,我們首先要了解CC2530芯片的內(nèi)部結(jié)構(gòu),掌握CC2530芯片I/O口的特點,掌握C2530芯片與IO口相關(guān)的特殊功能寄存器的參數(shù)配置及應(yīng)用開發(fā)。知識儲備一、CC2530芯片的內(nèi)部結(jié)構(gòu)CC2530芯片主要由以下幾個部分組成:8051CPU內(nèi)核內(nèi)置或外接32MHz晶振內(nèi)置32K晶振保證芯片在休眠狀態(tài)時的工作8KBSRAM32/64/128/256KBFlashROM簡化了8051的I/O口,只保留P0、P1及P2的5個引腳,共21個IO引腳內(nèi)置1個最高12bit的ADC模數(shù)轉(zhuǎn)換器USART0、USART1兩個異步通信串口TIMER0-TIMER4四個定時器18個IRQ中斷源和一個五通道DMA中斷控制器1個睡眠定時器保證MCU可工作于超低功耗模式內(nèi)置一個兼容IEEE802.15.4協(xié)議的無線RF收發(fā)器。CC2530的內(nèi)部結(jié)構(gòu)圖如圖3-2所示。知識儲備

圖3-2CC2530內(nèi)部結(jié)構(gòu)圖知識儲備二、CC2530的I/O口CC2530有21個數(shù)字I/O引腳,可以配置為通用數(shù)字I/O或外設(shè)I/O信號,這些I/O通過配置相關(guān)寄存器可作為ADC的模擬量輸入端、定時器或USART等外部設(shè)備。I/O端口具備以下主要特性:21個數(shù)字I/O引腳可以配置為通用I/O或外部設(shè)備I/O輸入口具備上拉或下拉能力具有外部中斷能力。知識儲備三、項目中用到的SFR本項目中用到的SFR包括P1、P1SEL、P1DIR、P1INP,P1寄存器用于控制P1口外部引腳的電平高低,P1SEL用于設(shè)置P1口外部引腳的用于通用I/O口還是外設(shè),P1DIR用于設(shè)置P1口外部引腳的輸入/輸出方向,P1INP用于設(shè)置P1口外部引腳的驅(qū)動方式。寄存器配置如表3-2~3-5所示。表3-2P1(0x90)-P1端口數(shù)據(jù)寄存器位名稱復(fù)位R/W描述7:0P1_[7:0]0xFFR/W端口1。通用I/O端口??梢詮腟FR位尋址。該CPU內(nèi)部寄存器可以從XDATA(0x7080)讀,但是不能寫當(dāng)給P1寄存器其中一個或幾個位賦值時,對應(yīng)外部引腳電平也會相應(yīng)改變。知識儲備表3-3P1SEL(0xF4)–P1端口功能選擇位名稱復(fù)位R/W描述7:0SELP1_[7:0]0x00R/WP1.0到P1.7功能選擇0:通用I/O1:外設(shè)功能當(dāng)給P1SEL寄存器其中一個或幾個位賦值0時,對應(yīng)引腳為通用I/O口;賦值1時,對應(yīng)引腳為外部設(shè)備(如ADC、定時器、USART)。表3-4P1DIR(0xFE)–P1端口方向位復(fù)位R/W描述7:00x00R/WP1.0到P1.7的I/O方向

0:輸入1:輸出當(dāng)給P1DIR寄存器其中一個或幾個位賦值0時,對應(yīng)引腳為輸入口;賦值1時,對應(yīng)引腳為輸出口。知識儲備表3-5P1INP(0xF6)–P1端口輸入模式位名稱復(fù)位R/W描述7:0MDP0_[7:0]0x00R/WP1.0到P1.7的I/O輸入模式0:接上拉/下拉電阻1:三態(tài)當(dāng)給P1INP寄存器其中一個或幾個位賦值0時,對應(yīng)引腳為接上拉/下拉電阻的輸入口;賦值1時,對應(yīng)引腳為三態(tài)輸門輸入口。如果我們用到寄存器復(fù)位后的默認(rèn)功能,也可以不對寄存器進行設(shè)置。但在大型項目中代碼是開發(fā)團隊合作完成,無法確定這些寄存器的狀態(tài),因此會對用到的所有寄存器都進行配置。項目實施05項目實施一、設(shè)備和資源準(zhǔn)備項目實施前必須先準(zhǔn)備好相應(yīng)的設(shè)備和資源,見表3-6。序號設(shè)備/資源名稱數(shù)量單位是否準(zhǔn)備到位(√)1CC2530模塊(帶LED電路)1個

2CCDebugger仿真器(帶下載線)1個

3MiniUSB供電線或5號電池1根/個

表3-6設(shè)備和資源清單CC2530模塊(帶LED電路)CCDebugger仿真器(帶下載線)MiniUSB供電線或5號電池項目實施二、查閱實驗?zāi)K原理圖常見的CC2530應(yīng)用模塊通常在P1_0和P1_1引腳均接有LED,本實驗?zāi)K的應(yīng)用電路在P0_7引腳也接了一個LED。其原理圖如圖3-3所示。其中,當(dāng)P1_0輸出高電平1時,發(fā)光二極管D5熄滅;當(dāng)P1_0輸出低電平0時,發(fā)光二極管D5點亮。其余D6、D7兩個LED的電路控制與D5相同,僅I/O端口不同。本實驗使用D5和D6兩個LED完成流水燈實驗。由于本實驗使用的CC2530實驗?zāi)K帶有蜂鳴器模塊,因此需要初始化蜂鳴器的I/O端口P1_2并關(guān)閉蜂鳴器。圖3-3LED原理圖項目實施三、實施過程1.連接設(shè)備將CCDebugger仿真器的接口與CC2530實驗?zāi)K(實驗?zāi)K使用“求助按鈕V1.0”)相連,仿真器另一端用USB數(shù)據(jù)線連接到PC上,如圖3-4所示。圖3-4實驗接線圖項目實施2.程序設(shè)計(1)創(chuàng)建工程。打開IAR新建一個CProject工程(具體步驟請參照項目二)。(2)程序流程圖,如圖3-5所示。圖3-5程序流程圖項目實施(3)編寫代碼。

完整的程序源代碼,見課程資源。

主要功能代碼如下:項目實施項目實施圖3-6IAR的LED流水燈編譯界面拓展訓(xùn)練06拓展訓(xùn)練一、訓(xùn)練描述以上實驗只是利用CC2530開發(fā)板自帶的2個LED指示燈完成了流水燈的最基本功能,要實現(xiàn)真正的LED流水燈效果,則需要用到更多的I/O口。二、訓(xùn)練要求1.使用P1_0,P1_1,P0_7口的3個引腳控制3個LED燈。2.實現(xiàn)流水燈從左到右再從右到左的往復(fù)流動效果。3.實現(xiàn)其他更多的流水燈效果。項目總結(jié)07項目總結(jié)項目完成后認(rèn)真填寫項目報告表(表3-11),記錄整個項目的完成步驟及完成效果。項目總結(jié)課程

名稱

項目

名稱

班級

姓名

學(xué)號

組長

小組

成員

項目

報告(報告必須包含以下幾點:一、項目目的,二、項目計劃;三、項目實施過程;四、項目總結(jié);五、體會,可附頁)

日期

項目成員簽名

表3-11項目報告表謝謝大家觀看GENERAL

TEACHING項目四按鍵控制LED目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204項目實施拓展訓(xùn)練0506項目導(dǎo)入01項目導(dǎo)入項目導(dǎo)入電路板上常用的按鍵是一種機械彈性電子開關(guān),使用時輕按下按鍵,即可使引腳導(dǎo)通開關(guān)閉合,松開手則開關(guān)斷開。在電子設(shè)計應(yīng)用里面,通常是通過按鍵來實現(xiàn)用戶交互。按鍵檢測的原理,是在機械點的彈性作用下,當(dāng)機械觸點斷開、閉合時,電壓信號產(chǎn)生高低電平的互相轉(zhuǎn)化。項目導(dǎo)入本項目將使用按鍵控制LED的亮滅,以實現(xiàn)簡單的報警提示功能。項目導(dǎo)入項目分析02項目分析本項目需要使用按鍵控制LED燈的亮滅,以實現(xiàn)報警提示功能的模擬。我們可以通過配置CC2530單片機的I/O口功能來實現(xiàn)項目任務(wù)。本項目實現(xiàn)用查詢方式來判斷按鍵是否被按下,如果按下,LED亮起;再按下按鍵,LED熄滅。如此循環(huán)。應(yīng)用戶需求,設(shè)計一套使用求助按鈕點亮LED報警燈的系統(tǒng)。用軟件查詢方式完成獨立按鍵檢測的原理學(xué)習(xí)。設(shè)計按鍵控制程序,實現(xiàn)求助按鈕控制LED的亮滅。項目要求項目目標(biāo)03項目目標(biāo)掌握CC2530芯片I/O口的使用掌握CC2530芯片I/O口輸入模式相關(guān)的SFR配置掌握CC2530按鍵控制LED的軟件編程熟悉按鍵控制電路知識儲備04知識儲備要完成這個項目的設(shè)計,我們必須熟悉如何配置相應(yīng)的寄存器,使CC2530芯片的I/O完成作為輸入輸出端口的應(yīng)用。按鍵狀態(tài)的讀取使用I/O口作為輸入端口功能,此時引腳可以配置為上拉、下拉或三態(tài)三種操作模式的其中一種。當(dāng)I/O口配置為輸入模式時,CC2530芯片則通過讀取相應(yīng)的寄存器來獲得I/O端口的輸入狀態(tài)。輸入也可以通過設(shè)置邊緣觸發(fā)或電平觸發(fā),給C2530芯片產(chǎn)生中斷。由此我們可以理解為,CC2530芯片的I/O引腳是雙向并帶有三態(tài)控制的輸入和輸出緩沖器。項目實施05項目實施一、設(shè)備和資源準(zhǔn)備項目實施前必須先準(zhǔn)備好相應(yīng)的設(shè)備和資源,見表4-4。序號設(shè)備/資源名稱數(shù)量單位是否準(zhǔn)備到位(√)1CC2530模塊(帶求助按鈕電路)1個

2CCDebugger仿真器(帶下載線)1個

3MiniUSB供電線或5號電池1根/個

表4-4設(shè)備和資源清單CC2530模塊(帶求助按鈕電路)CCDebugger仿真器(帶下載線)MiniUSB供電線或5號電池項目實施二、查閱實驗?zāi)K原理圖常見的CC2530應(yīng)用模塊一般都會設(shè)計一個或多個按鍵接到I/O引腳上,圖4-2以P0_0為例,按鍵按下時I/O口P0_0輸入低電平,松開時I/O口輸入高電平。而有的CC2530模塊則相反,需要修改按鍵檢測函數(shù)KeyScan()中的相應(yīng)電平值。LED電路原理圖如圖4-3所示。由于本實驗使用的CC2530實驗?zāi)K帶有蜂鳴器模塊,因此需要初始化蜂鳴器的I/O端口P1_2并關(guān)閉蜂鳴器。圖4-2按鍵原理圖

圖4-3LED原理圖項目實施三、實施過程1.連接設(shè)備將CCDebugger仿真器的接口與CC2530實驗?zāi)K(實驗?zāi)K使用“求助按鈕V1.0”)相連,仿真器另一端用USB數(shù)據(jù)線連接到PC上。2.程序設(shè)計(1)程序流程圖實驗的程序流程圖如下圖4-4所示。項目實施(2)創(chuàng)建工程。打開IAR新建一個CProject工程(具體步驟請參照項目二)(3)編寫代碼。完整的程序源代碼,見課程資源。項目實施項目實施圖4-5按鍵控制LED編譯界面項目成果項目成果按仿真器或者CC2530實驗?zāi)K上的Reset復(fù)位鍵,然后反復(fù)按下CC2530模塊上的按鍵,可以看到CC2530板上可以看到CC2530板上D5的亮滅效果,則說明項目運行成功,其效果如圖4-6所示。如果未看到按鍵控制LED效果,說明程序的編寫有誤,或需要檢查CCDebugger仿真器接線、仿真器驅(qū)動安裝是否正?;蚋鼡QCC2530實驗?zāi)K。圖4-6燒錄成功效果圖拓展訓(xùn)練06拓展訓(xùn)練一、訓(xùn)練描述以上實驗是利用CC2530板子自帶的一個按鍵和1個LED指示燈完成了求助按鈕控制LED燈的功能,加強訓(xùn)練可以通過按鍵控制LED流水燈的效果展示。二、訓(xùn)練要求使用P1_0,P1_1,P0_7口的3個引腳控制3個LED燈。實現(xiàn)按鍵按下,三個LED流水燈從左到右再從右到左的往復(fù)流動效果;再按下按鍵,則LED燈均熄滅。項目總結(jié)項目總結(jié)項目完成后認(rèn)真填寫項目報告表(表4-5),記錄整個項目的完成步驟及完成效果。項目總結(jié)課程

名稱

項目

名稱

班級

姓名

學(xué)號

組長

小組

成員

項目

報告(報告必須包含以下幾點:一、項目目的,二、項目計劃;三、項目實施過程;四、項目總結(jié);五、體會,可附頁)

日期

項目成員簽名

表4-5項目報告表謝謝大家觀看GENERAL

TEACHING項目五按鍵觸發(fā)中斷目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204項目實施拓展訓(xùn)練0506項目導(dǎo)入01項目導(dǎo)入項目導(dǎo)入合理巧妙地利用單片機中斷,不僅可以獲得處理突發(fā)狀況的能力,而且可以使單片機能夠“同時”完成多項任務(wù)。CC2530單片機處理程序的任務(wù)時,當(dāng)它正在完成某個事情的過程中有一件或者多件別的事情發(fā)生需要單片機立刻去關(guān)注一下,并判斷是否需要停下手頭的工作去馬上去處理,只有處理完了才能回頭繼續(xù)完成剛才的工作。這種情況下,CC2530單片機的中斷系統(tǒng)起到了關(guān)鍵的作用。項目導(dǎo)入本項目基于項目四按鍵控制LED亮滅的基礎(chǔ)上,使用按鍵輸入中斷功能控制LED亮滅和蜂鳴器的發(fā)聲,以實現(xiàn)聲光報警提示功能。項目導(dǎo)入項目分析02項目分析項目實現(xiàn)用中斷方式來判斷按鍵是否被按下,如果按1下,LED亮,并且蜂鳴器響起;再按1下,LED滅同時蜂鳴器靜音。如此循環(huán)。使用按鍵輸入中斷功能,設(shè)計一套實現(xiàn)聲光報警提示功能的系統(tǒng)。掌握如何使用通用IO中斷知道CC2530的IO中斷機制知道CC2530的中斷向量知道如何編寫中斷函數(shù)項目要求項目目標(biāo)03項目目標(biāo)掌握CC2530中斷的工作原理掌握CC2530的I/O中斷相關(guān)寄存器的配置學(xué)會使用CC2530的I/0的中斷知識儲備04知識儲備什么是中斷系統(tǒng)?引起CPU中斷的根源稱為中斷源。中斷源向CPU提出中斷請求,CPU暫時中斷原來的事務(wù)A,轉(zhuǎn)去處理事件B,對事件B處理完畢后,再回到原來被中斷的地方(即斷點),稱為中斷返回。實現(xiàn)上述中斷功能的部件稱為中斷系統(tǒng)(中斷機構(gòu))。知識儲備通用I/O引腳設(shè)置為輸入后,可以用于產(chǎn)生中斷。中斷可以設(shè)置在外部信號的上升或下降沿觸發(fā)。P0、P1或P2端口都有中斷使能位,對位于IENl-2寄存器內(nèi)的端口所有的位都是公共的,如下:IENI.P0IE:P0中斷使能IEN2.PIIE:P1中斷使能IEN2.P2IE:P2中斷使能除了這些公共中斷使能之外,每個端口的位都有位于SFR寄存器P0IEN、P1IEN和P2IEN的單獨的中斷使能。即使配置為外設(shè)I/O或通用輸出的I/O引腳使能時都有中斷產(chǎn)生。知識儲備一、開啟中斷(中斷使能)CC2530的21個通用I/O引腳設(shè)置為輸入后,都可以用于觸發(fā)中斷。中斷可以設(shè)置在外部信號的上升或下降沿觸發(fā)。使用中斷前首先要開啟中斷功能(中斷使能)。與之相關(guān)的寄存器有IEN0、IEN1和IEN2,寄存器各位的名稱、功能和描述如表5-1~5-6所示。位名稱復(fù)位R/W描述7EA0R/W總中斷設(shè)置。0:禁止所有中斷1:打開總中斷6-0R0不使用,讀出來是05STIE0R/W睡眠定時器中斷使能0:中斷禁止1:中斷使能4ENCIE0R/WAES加密/解密中斷使能0:中斷禁止1:中斷使能3URX1IE0R/WUSART1RX中斷使能0:中斷禁止1:中斷使能2URX0IE0R/WUSART0RX中斷使能0:中斷禁止1:中斷使能1ADCIE0R/WADC中斷使能0:中斷禁止1:中斷使能0RFERRIE0R/WRFTX/RXFIFO中斷使能0:中斷禁止1:中斷使能表5-1IEN0(0xA8)–中斷使能0知識儲備位名稱復(fù)位R/W描述7:6-00R0不使用,讀出來為05P0IE0R/W端口0中斷使能0:中斷禁止1:中斷使能4T4IE0R/W定時器4中斷使能0:中斷禁止1:中斷使能3T3IE0R/W定時器3中斷使能0:中斷禁止1:中斷使能2T2IE0R/W定時器2中斷使能0:中斷禁止1:中斷使能1T1IE0R/W定時器1中斷使能0:中斷禁止1:中斷使能0DMAIE0R/WDMA傳輸中斷使能0:中斷禁止1:中斷使能表5-2IEN1(0xB8)–中斷使能1位名稱復(fù)位R/W描述7:6-00R0沒有使用,讀出來是05WDTIE0R/W看門狗定時器中斷使能0:中斷禁止1:中斷使能4P1IE0R/W端口1中斷使能0:中斷禁止1:中斷使能3UTX1IE0R/WUSART1TX中斷使能0:中斷禁止1:中斷使能2UTX0IE0R/WUSART0TX中斷使能0:中斷禁止1:中斷使能1P2IE0R/W端口2中斷使能0:中斷禁止1:中斷使能0RFIE0R/WRF一般中斷使能0:中斷禁止1:中斷使能表5-3IEN2(0x9A)–中斷使能2知識儲備位名稱復(fù)位R/W描述7:0P0_[7:0]IEN0x00R/W端口P0.7到P0.0中斷使能0:中斷禁止1:中斷使能表5-4P0IEN(0xAB)–端口0中斷屏蔽位名稱復(fù)位R/W描述7:0P1_[7:0]IEN0x00R/W端口P1.7到P1.0中斷使能0:中斷禁止1:中斷使能表5-5P1IEN(0x8D)–端口1中斷屏蔽位名稱復(fù)位R/W描述7:6-00R/W未使用5DPIEN0R/WUSBD+中斷使能4:0P2_[4:0]IEN00000R/W端口P2.4到P2.0中斷使能0:中斷禁止1:中斷使能表5-6P2IEN(0xAC)–端口2中斷屏蔽知識儲備舉例說明,要使用P1_2引腳作為中斷輸入,按順序需要做以下設(shè)置:1.開總中斷2.開啟P1口中斷3.開啟P1_2引腳中斷以上操作,即要把表中寄存器的灰色相關(guān)位設(shè)置為1。知識儲備二、中斷控制CC2530單片機的中斷控制寄存器如表5-7所示。位名稱復(fù)位R/W描述7PADSC0R/W控制I/O引腳在輸出模式下的驅(qū)動能力。0:最小驅(qū)動能力增強。DVDD1/2等于或大于2.6V1:最大驅(qū)動能力增強。DVDD1/2小于2.6V6:4-000R0未使用3P2ICON0R/W端口2,4-0引腳的輸入中斷配置。0:輸入的上升沿觸發(fā)中斷1:輸入下降沿觸發(fā)中斷2P1ICONH0R/W端口1,7-4引腳的輸入中斷配置。0:輸入的上升沿觸發(fā)中斷1:輸入下降沿觸發(fā)中斷1P1ICONL0R/W端口1,3-0引腳的輸入中斷配置。0:輸入的上升沿觸發(fā)中斷1:輸入下降沿觸發(fā)中斷0P0ICON0R/W端口0,7-0引腳的輸入中斷配置。0:輸入的上升沿觸發(fā)中斷1:輸入下降沿觸發(fā)中斷表5-7PICTL(0x8C)–端口中斷控制例如要在P1_2引腳的下降沿觸發(fā)中斷,則需要把灰色標(biāo)記位置為1,若是上升沿觸發(fā)中斷,則無需配置這個寄存器。知識儲備三、中斷處理CC2530單片機的中斷處理寄存器如表5-8~5-11所示。位名稱復(fù)位R/W描述7:5-000R/W沒有使用4WDTIF0R/W看門狗定時器中斷標(biāo)志0:無中斷請求1:中斷請求未處理3P1IF0R/W端口1中斷標(biāo)志0:無中斷請求1:中斷請求未處理2UTX1IF0R/WUSART1TX中斷標(biāo)志0:無中斷請求1:中斷請求未處理1UTX0IF0R/WUSART1TX中斷標(biāo)志0:無中斷請求1:中斷請求未處理0P2IF0R/W端口2中斷標(biāo)志0:無中斷請求1:中斷請求未處理表5-8IRCON2(0xE8)–

中斷標(biāo)志5知識儲備位名稱復(fù)位R/W描述7:0P0IF[7:0]0x00R/W0端口0:7-0位中斷狀態(tài)標(biāo)志。當(dāng)端口發(fā)生中斷請求未處理時,其相應(yīng)的標(biāo)志位置1。表5-9P0IFG(0x89)–端口0中斷狀態(tài)標(biāo)志位名稱復(fù)位R/W描述7:0P1IF[7:0]0x00R/W0端口1:7-0位中斷狀態(tài)標(biāo)志。當(dāng)端口發(fā)生中斷請求未處理時,其相應(yīng)的標(biāo)志位置1。表5-10P1IFG(0x8A)–端口1中斷狀態(tài)標(biāo)志位名稱復(fù)位R/W描述7:6-00R0未使用5DPIF0R/W0USBD+中斷狀態(tài)標(biāo)志。當(dāng)D+線發(fā)生中斷請求未處理時,其相應(yīng)的標(biāo)志位置1。4:0P2IF[4:0]00000R/W0端口2:4-0位中斷狀態(tài)標(biāo)志。當(dāng)端口發(fā)生中斷請求未處理時,其相應(yīng)的標(biāo)志位置1。表5-11P2IFG(0x8B)–端口2中斷狀態(tài)標(biāo)志知識儲備當(dāng)中斷條件發(fā)生時,P0-P2中斷標(biāo)志寄存器P0IFG、P1IFG或P2IFG中相應(yīng)的中斷狀態(tài)標(biāo)志將設(shè)置為1。例如P1_2引腳觸發(fā)了中斷,則P1IFG中的數(shù)值會變?yōu)?0000100。不管引腳是否設(shè)置了它的中斷使能位,中斷狀態(tài)標(biāo)志位都會被置1。項目實施05項目實施一、設(shè)備和資源準(zhǔn)備項目實施前必須先準(zhǔn)備好相應(yīng)的設(shè)備和資源,見表5-12。序號設(shè)備/資源名稱數(shù)量單位是否準(zhǔn)備到位(√)1CC2530模塊1個

2CCDebugger仿真器(帶下載線)1個

3MiniUSB供電線或5號電池1根/個

表5-12設(shè)備和資源清單CC2530模塊(帶LED電路)CCDebugger仿真器(帶下載線)MiniUSB供電線或5號電池項目實施二、查閱實驗?zāi)K原理圖原理圖如圖5-1所示,按鍵按下時I/O口P0_0輸入低電平,松開時輸入高電平。蜂鳴器和LED電路原理圖則如圖5-2所示,I/O口P1_2用于有源蜂鳴器LS1的發(fā)聲控制,當(dāng)P1_2輸出高電平,蜂鳴器發(fā)聲。相反,輸出低電平則關(guān)斷蜂鳴器,不發(fā)聲。圖5-1按鍵原理圖圖5-2蜂鳴器和LED的原理圖項目實施三、實施過程1.連接設(shè)備將CCDebugger仿真器的接口與CC2530實驗?zāi)K(實驗?zāi)K使用“求助按鈕V1.0”)相連,仿真器另一端用USB數(shù)據(jù)線連接到PC上,如圖5-3所示。圖5-3實驗接線圖項目實施2.程序設(shè)計(1)實驗分析首先定義相關(guān)IO端口,根據(jù)硬件原理圖P1_0端口控制LED1,P1_1端口控制LED2,P0_7端口控制LED3,P1_2端口控制蜂鳴器BEEP,P0_0端口控制按鈕。#defineLED1P1_0//LED1為P1_0端口控制

#defineLED2P1_1//LED2為P1_1端口控制

#defineLED3P0_7//LED3為P0_7端口控制

#defineBEEPP1_2//BEEP為P1_2端口控制

CC2530的外部中斷我們需要配置三個寄存器P0IEN、PICTL、P0IFG、IEN1。寄存器的具體用法參考本項目知識儲備內(nèi)容。KEY_IO初始化(中斷方式配置)函數(shù)如下:voidInitKey(void){P0IEN|=0x01;//設(shè)置P0_0為中斷方式IEN1|=0x20;//允許P0口中斷PICTL|=0x01;//下降沿觸發(fā)P0IFG=0x00;//清中斷標(biāo)志位EA=1;//開總中斷}項目實施(2)程序流程圖程序流程圖見圖5-4。圖5-4程序流程圖(3)創(chuàng)建工程打開IAR新建一個CProject工程(具體步驟請參照項目二)。項目實施(4)編寫代碼完整的程序源代碼,見課程資源。主要功能代碼如下:項目實施圖5-5按鍵中斷產(chǎn)生聲光報警的編譯界面項目成果項目成果按仿真器或者CC2530實驗?zāi)K上的Reset復(fù)位鍵,然后反復(fù)按下CC2530模塊上的按鍵,可以看到CC2530板上D5的亮滅效果,同時LED亮起來時伴隨有蜂鳴器的響聲,LED熄滅則蜂鳴器聲音關(guān)閉,則說明項目運行成功,其效果如圖5-6所示。如果未看到按鍵控制LED和蜂鳴器的效果,說明程序的編寫有誤,或需要檢查CCDebugger仿真器接線、仿真器驅(qū)動安裝是否正?;蚋鼡QCC2530實驗?zāi)K。圖5-6燒錄成功效果圖拓展訓(xùn)練06拓展訓(xùn)練一、訓(xùn)練描述以上實驗是利用CC2530板子自帶的求助按鈕、蜂鳴器和1個LED指示燈完成了按鍵中斷控制LED燈和蜂鳴器實現(xiàn)聲光報警的功能,加強訓(xùn)練可以通過按鍵控制3個LED燈亮滅情況的不同,展示不同的聲光效果。二、訓(xùn)練要求使用P1_0,P1_1,P0_7口的3個引腳控制3個LED燈。實現(xiàn)按鍵按下,1個LED燈亮起,同時蜂鳴器響起;再按下按鍵,蜂鳴器仍然響起的同時,增加一個亮起的LED燈。第三次按下按鍵,蜂鳴器仍然響起的同時,再增加一個亮起的LED燈,此時共有三個LED亮起。第四次按下按鍵,關(guān)閉蜂鳴器和所有LED燈。項目總結(jié)項目總結(jié)項目完成后認(rèn)真填寫項目報告表(表5-13),記錄整個項目的完成步驟及完成效果。項目總結(jié)課程

名稱

項目

名稱

班級

姓名

學(xué)號

組長

小組

成員

項目

報告(報告必須包含以下幾點:一、項目目的,二、項目計劃;三、項目實施過程;四、項目總結(jié);五、體會,可附頁)

日期

項目成員簽名

表5-13項目報告表謝謝大家觀看GENERAL

TEACHING項目六定時器1控制LED閃爍目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204項目實施拓展訓(xùn)練0506項目導(dǎo)入01項目導(dǎo)入項目導(dǎo)入嵌入式開發(fā)應(yīng)用中經(jīng)常使用定時器功能,本項目主要是學(xué)會CC2530定時器的使用方法。定時器可幫助開發(fā)者實現(xiàn)各種定時功能,例如周期性任務(wù)、超時檢測、時序控制等。定時器用于進行定時。它內(nèi)部有一個寄存器,一旦讓它開始計數(shù),這個寄存器的值每經(jīng)過一個機器周期便會自動加1。我們可以把機器周期理解為定時器的計數(shù)周期。項目導(dǎo)入本項目將設(shè)計一個定時器控制LED閃爍項目。項目導(dǎo)入項目分析02項目分析定時器1是一個獨立的16位定時器,支持典型的定時/計數(shù)功能,比如輸入捕獲,輸出比較和PWM功能。定時器有五個獨立的捕獲/比較通道。每個通道定時器使用一個I/O引腳,定時器用于范圍廣泛的控制和測量應(yīng)用。項目三的流水燈實驗是通過軟件延時實現(xiàn),本項目則使用定時器控制LED燈的亮滅,以實現(xiàn)定時亮燈的場景模擬。我們可以通過編寫CC2530單片機程序,使用內(nèi)部定時器/計數(shù)器控制CC2530板子的LED周期性地閃爍。項目分析通電后,LED每隔1秒閃爍一次。了解CC2530單片機定時器的相關(guān)寄存器配置使用T1定時器控制LED以每秒鐘為周期的亮滅項目要求項目目標(biāo)03項目目標(biāo)掌握CC2530單片機定時器1的工作原理掌握CC2530單片機定時器1的使用方法掌握使用CC2530單片機定時器1實現(xiàn)控制LED亮滅項目儲備04項目儲備要完成這個項目的設(shè)計,我們必須熟CC2530定時器的原理以及如何配置相應(yīng)的寄存器,使CC2530芯片的I/O完成作為輸入輸出端口的應(yīng)用。按鍵狀態(tài)的讀取使用I/O口作為輸入端口功能,此時引腳可以配置為上拉、下拉或三態(tài)三種操作模式的其中一種。當(dāng)I/O口配置為輸入模式時CC2530芯片則通過讀取相應(yīng)的寄存器來獲得I/O端口的輸入狀態(tài)。輸入也可以通過設(shè)置邊緣觸發(fā)或電平觸發(fā),給C2530芯片產(chǎn)生中斷。由此我們可以理解為,CC2530芯片的I/O引腳是雙向并帶有三態(tài)控制的輸入和輸出緩沖器。項目儲備定時器的工作頻率和工作模式定時器1的通道模式控制定時器1的狀態(tài)和中斷標(biāo)志寄存器項目儲備項目實施05項目實施項目實施過程

準(zhǔn)備設(shè)備和資源查閱實驗?zāi)K原理圖準(zhǔn)備設(shè)備和資源實施過程連接設(shè)備程序設(shè)計創(chuàng)建工程程序流程圖編寫代碼編譯運行拓展訓(xùn)練06拓展訓(xùn)練一、訓(xùn)練描述以上實驗是利用CC2530板子的定時器功能和LED指示燈完成了定時器1控制LED閃爍的功能,加強訓(xùn)練可以通過定時器控制LED實現(xiàn)流水燈功能。二、訓(xùn)練要求1.使用P1_0,P1_1,P0_7口的3個引腳控制3個LED燈。2.使用定時器1實現(xiàn)三個LED流水燈從左到右再從右到左的往復(fù)流動亮滅的效果。謝謝大家觀看GENERAL

TEACHING項目七串口發(fā)送數(shù)據(jù)目錄項目導(dǎo)入項目目標(biāo)項目分析知識儲備01030204項目實施拓展訓(xùn)練0506項目導(dǎo)入01項目導(dǎo)入項目導(dǎo)入單片機的串口發(fā)送功能廣泛應(yīng)用于許多領(lǐng)域,例如通信、控制、數(shù)據(jù)采集等。在實際使用中,需要根據(jù)具體的應(yīng)用場景和要求,選擇合適的串口通信參數(shù)和發(fā)送方式,以實現(xiàn)高效、穩(wěn)定的數(shù)據(jù)傳輸。例如在電子秤應(yīng)用中,通過電子秤里面的單片機與計算機連接并進行串口通信,將電子秤測量的重量數(shù)據(jù)傳輸?shù)接嬎銠C中,進行數(shù)據(jù)處理和存儲。項目導(dǎo)入本項目將設(shè)計一個屬于自已的串行通信模塊。項目導(dǎo)入項目分析02項目分析單片機串口發(fā)送數(shù)據(jù)是指使用單片機內(nèi)置的串行通信模塊,通過串口將數(shù)據(jù)發(fā)送出去。串口發(fā)送數(shù)據(jù)的過程一般包括以下步驟:1.設(shè)置串口通信參數(shù)。包括通信波特率、數(shù)據(jù)位數(shù)、校驗位、停止位等。2.編寫發(fā)送函數(shù)。在發(fā)送函數(shù)中,需要將要發(fā)送的數(shù)據(jù)寫入串口發(fā)送緩沖區(qū)或FIFO緩沖區(qū),等待發(fā)送器將數(shù)據(jù)發(fā)送出去。3.啟動串口發(fā)送器。在單片機中,串口發(fā)送器一般是通過中斷方式實現(xiàn)的,發(fā)送函數(shù)執(zhí)行后,會向發(fā)送器發(fā)出啟動信號。4.等待發(fā)送完成。在數(shù)據(jù)發(fā)送完畢之前,一般需要等待發(fā)送器的發(fā)送完成中斷或空閑中斷,表示數(shù)據(jù)已經(jīng)全部發(fā)送出去。5.返回發(fā)送結(jié)果。發(fā)送函數(shù)可以根據(jù)發(fā)送結(jié)果返回相應(yīng)的狀態(tài)碼,例如發(fā)送成功或失敗等。項目分析接收電腦發(fā)來的數(shù)據(jù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論