版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
精品文檔-下載后可編輯基于CC2430使終端設(shè)備依據(jù)特定的PANID入網(wǎng)引言
ZigBee是一種嶄新的,專注于低功耗、低成本、低復(fù)雜度、低速率的近程無(wú)線網(wǎng)絡(luò)通信技術(shù),也是目前嵌入式應(yīng)用的一個(gè)大熱點(diǎn)。Zigbee是IEEE802.15.4協(xié)議的代名詞。根據(jù)這個(gè)協(xié)議規(guī)定的技術(shù)是一種短距離、低功耗的無(wú)線通信技術(shù)。這一名稱于蜜蜂的八字舞,由于蜜蜂(bee)是靠飛翔和“嗡嗡”(zig)地抖動(dòng)翅膀的“舞蹈”來(lái)與同伴傳遞花粉所在方位信息,也就是說蜜蜂依靠這樣的方式構(gòu)成了群體中的通信網(wǎng)絡(luò)。
簡(jiǎn)而言之,ZigBee就是一種便宜的,低功耗的近距離無(wú)線組網(wǎng)通訊技術(shù)。近年來(lái),我國(guó)應(yīng)用ZigBee無(wú)線數(shù)據(jù)網(wǎng)絡(luò)的越來(lái)越多。很多地方都取代了局域網(wǎng)。我們平時(shí)看到的樓宇監(jiān)控系統(tǒng)、無(wú)線方式集中抄表以及礦山救援系統(tǒng)和家電控制等都是對(duì)ZigBee的應(yīng)用。在下文我們將談到的就是在玩過有較多客戶的IT公司的產(chǎn)品CC2430。想來(lái)能讓你們了解到ZigBee技術(shù)。
1提出問題
與PANID不同的是ZigBee在一片不大的區(qū)域內(nèi),有數(shù)個(gè)信道相同的協(xié)調(diào)器。當(dāng)設(shè)置了終端的PANID后,終端只加入和其上存儲(chǔ)的PANID相同的協(xié)調(diào)器。目前本無(wú)線組網(wǎng)項(xiàng)目使用的是TI公司的CC2430,其上的ZigBee協(xié)議棧為TI的Z-STACK1.4.3-1.2.1。由于TI公司的策略是終端比較隨機(jī)的加入其中的一個(gè)協(xié)調(diào)器,即使其上已經(jīng)定義了特定的PANID。從少量的實(shí)驗(yàn)來(lái)看,CC2430作為終端優(yōu)先加入PANID號(hào)比較小的協(xié)調(diào)器。用戶一般無(wú)法讓終端選擇,并且終端掃描網(wǎng)絡(luò)和請(qǐng)求入網(wǎng)的過程都沒有給出源代碼。這樣便給這類實(shí)際應(yīng)用帶來(lái)諸多不便。
2問題分析
關(guān)于CC2430/2431網(wǎng)絡(luò)的形成,可以參考《ZigBee技術(shù)實(shí)踐教程》一書。該書為北京航空航天大學(xué)出版社出版,高守瑋和吳燦陽(yáng)主編。文后會(huì)附上本書的簡(jiǎn)介。
路由器和終端試圖加入一個(gè)網(wǎng)絡(luò)時(shí),首先調(diào)用NLME_NetworkDiscoveryRequest()函數(shù)。該函數(shù)將進(jìn)行網(wǎng)絡(luò)掃描,其結(jié)果由函數(shù)ZDO_NetworkDiscoveryConfirmCB()返回。而發(fā)現(xiàn)網(wǎng)絡(luò)存在后,將調(diào)用NLME_OrphanJoinRequest()函數(shù)試圖加入網(wǎng)絡(luò)。其結(jié)果由函數(shù)ZDO_JoinIndicationCB()返回。
遺憾的是,網(wǎng)絡(luò)掃描和請(qǐng)求入網(wǎng)兩個(gè)函數(shù)都沒有源代碼,造成無(wú)法修改的困境??陀^地說,在TI公司的ZSTACK上修改某些參數(shù)常常是比較困難的。只好從提供了源代碼的ZDO_NetworkDiscoveryConfirmCB()函數(shù)和ZDO_JoinIndicationCB()函數(shù)來(lái)想辦法。檢測(cè)ZDO_NetworkDiscoveryConfirmCB()的代碼,發(fā)現(xiàn)其終調(diào)用ZDO_FinishProcessingMgmtNwkDiscReq()函數(shù)。
而在該函數(shù)中,有對(duì)路由器的特殊處理。條件編譯變量RTR_NWK代表有路由器功能的設(shè)備,雖然協(xié)調(diào)器可以兼做路由器,但執(zhí)行這段代碼的只可能是普通的路由器。
#ifdefined(RTR_NWK)
……
#endif
……中的代碼檢索返回的網(wǎng)絡(luò)信息描述結(jié)構(gòu),查看有沒有和存儲(chǔ)的PANID相同的協(xié)調(diào)器。觀察ZDObject.c文件中的ZDO_StartDevice()函數(shù),當(dāng)啟動(dòng)設(shè)備模式為“再繼續(xù)”時(shí),即startMode==MODE_RESUME,終端設(shè)備以孤點(diǎn)方式請(qǐng)求加入網(wǎng)絡(luò)。再繼續(xù)模式實(shí)際上是標(biāo)識(shí)非協(xié)調(diào)器設(shè)備處于網(wǎng)絡(luò)掃描完成,準(zhǔn)備請(qǐng)求入網(wǎng)的狀態(tài)。分析到此,可以想出辦法了。首先定義一個(gè)檢查是否有PANID相同的協(xié)調(diào)器的全局變量bool變量p_matching。初始化時(shí)設(shè)其為FALSE。
3解決方法和實(shí)際代碼
對(duì)剛才提及的代碼段,增加終端對(duì)返回的網(wǎng)絡(luò)信息描述結(jié)構(gòu)的查詢。
在ZDApp.c中修改ZDApp_event_loop()函數(shù),在調(diào)用ZDO_StartDevice(…)之前,亦即在終端設(shè)備掃描網(wǎng)絡(luò)和請(qǐng)求入網(wǎng)前增加一段代碼。當(dāng)終端和協(xié)調(diào)器PANID不同,并且是再繼續(xù)模式時(shí),重新搜索是否有與PANID相同的協(xié)調(diào)器,而不請(qǐng)求人網(wǎng)。
這樣就使得終端有協(xié)調(diào)器可挑選了。
關(guān)于如何修改PANID,給出代碼如下(該代碼為協(xié)調(diào)器和終端通用的。_NIB是和網(wǎng)絡(luò)相關(guān)的全局結(jié)構(gòu)體):
另外非協(xié)調(diào)器設(shè)備在初始化時(shí),應(yīng)該增加如下的代碼(gu16RecBuffLen為自定義的16位整型數(shù)):
通過對(duì)掃描網(wǎng)絡(luò)結(jié)果處理函數(shù)的分析,研究掃描網(wǎng)絡(luò)和請(qǐng)求人網(wǎng)前的程序段。在程序段中增加一個(gè)對(duì)終端是否檢索到特定PANID的協(xié)調(diào)器的邏輯變量。在程序中增加未檢索到特定PANID的協(xié)調(diào)器時(shí)不請(qǐng)求入網(wǎng)的代碼,以達(dá)到終端選擇協(xié)調(diào)器入網(wǎng)的目的。我們經(jīng)過實(shí)驗(yàn),在現(xiàn)場(chǎng)有數(shù)個(gè)不同PANID的協(xié)調(diào)器的情況下,終端設(shè)備只加入特定的協(xié)調(diào)器就可以了。
《ZigBee技術(shù)實(shí)踐教程》簡(jiǎn)介
《ZigBee技術(shù)實(shí)踐教程:基于CC3430/31的無(wú)線傳感器網(wǎng)絡(luò)解決方案》以ZigBee無(wú)線傳感網(wǎng)絡(luò)技術(shù)為主要對(duì)象,以基于CC2430/31芯片(TI/Chipcon公司)的HFZ—CC2430/31ZDK開發(fā)套件為硬件平臺(tái),深入剖析了TI的Z—Stack協(xié)議棧架構(gòu)和編程接口,并詳細(xì)講述了如何在此基礎(chǔ)上開發(fā)自己的ZigBee項(xiàng)目?!禯igBee技術(shù)實(shí)踐教程:基于CC3430/31的無(wú)線傳感器網(wǎng)絡(luò)解決方案(附盤)》分為5個(gè)篇章:理論篇、準(zhǔn)備篇、入門篇、進(jìn)階篇和提高篇。理論篇簡(jiǎn)要介紹了無(wú)線傳感器網(wǎng)絡(luò)和ZigBee協(xié)議規(guī)范的基礎(chǔ)知識(shí),為讀者進(jìn)行ZigBee項(xiàng)目開發(fā)提供理論指導(dǎo),以便開發(fā)時(shí)參考;準(zhǔn)備篇講述了ZigBee硬件開發(fā)平臺(tái)、軟件開發(fā)環(huán)境的組成和安裝,以及通過17個(gè)CC2430/31片內(nèi)外設(shè)的操作例程來(lái)闡述CC2430/31片上系統(tǒng)的開發(fā)和使用;入門篇以一個(gè)通俗易懂的例子講述了輪轉(zhuǎn)查詢式操作系統(tǒng)的基本原理,并介紹了這種操作系統(tǒng)在TIZ—Stack中的應(yīng)用以及TIZ—Stack的用戶編程接口;進(jìn)階篇通過幾個(gè)例子演示如何建立簡(jiǎn)單的ZigBee無(wú)線傳感網(wǎng)絡(luò)系統(tǒng),并詳細(xì)闡述了ZigBee協(xié)議規(guī)范的幾個(gè)重要概念在TIZ—Stack的代碼實(shí)現(xiàn);
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車按揭貸款服務(wù)合同
- 附期限贈(zèng)與倉(cāng)庫(kù)合同
- 私家轎車車位出租合同
- 房產(chǎn)租賃合同樣書
- 廣告審核居間合同方案
- 攝影工作室翻新合同樣本
- 智能環(huán)保監(jiān)測(cè)系統(tǒng)建設(shè)工程承包合同
- 風(fēng)險(xiǎn)管理咨詢服務(wù)合同
- 社區(qū)團(tuán)購(gòu)電商平臺(tái)運(yùn)營(yíng)合同
- 地名工業(yè)園區(qū)關(guān)鍵技術(shù)改造及研發(fā)投資合同
- GB/T 45120-2024道路車輛48 V供電電壓電氣要求及試驗(yàn)
- 2025年上海市嘉定區(qū)中考英語(yǔ)一模試卷
- 2025年中核財(cái)務(wù)有限責(zé)任公司招聘筆試參考題庫(kù)含答案解析
- 春節(jié)文化常識(shí)單選題100道及答案
- 華中師大一附中2024-2025學(xué)年度上學(xué)期高三年級(jí)第二次考試數(shù)學(xué)試題(含解析)
- 12123交管學(xué)法減分考試題及答案
- 2025年寒假實(shí)踐特色作業(yè)設(shè)計(jì)模板
- 《數(shù)據(jù)采集技術(shù)》課件-XPath 解析庫(kù)
- 財(cái)務(wù)報(bào)銷流程培訓(xùn)課程
- 成人腦室外引流護(hù)理-中華護(hù)理學(xué)會(huì)團(tuán)體 標(biāo)準(zhǔn)
- 24年追覓在線測(cè)評(píng)28題及答案
評(píng)論
0/150
提交評(píng)論