




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
目錄任務(wù)目標(biāo)01相關(guān)知識點(diǎn)02任務(wù)實(shí)施03任務(wù)目標(biāo)(1)掌握組播通信。(2)掌握按鍵操作。任務(wù)2:組播通信本任務(wù)實(shí)現(xiàn)組播通信:各節(jié)點(diǎn)之間以組播方式發(fā)送數(shù)據(jù),只有同組的節(jié)點(diǎn)可以接收和發(fā)送數(shù)據(jù),組播通信原理圖如圖所示。組播通信原理圖任務(wù)2:組播通信本任務(wù)實(shí)現(xiàn)的具體功能:一個節(jié)點(diǎn)做協(xié)調(diào)器,另外兩個節(jié)點(diǎn)做終端。按終端S1鍵時,協(xié)調(diào)器Led2狀態(tài)改變,同時終端自身的Led2狀態(tài)也改變,提示發(fā)送成功。修改其中一個終端的組編號,編譯下載后,按此終端S1鍵時,此時看協(xié)調(diào)器Led2狀態(tài)是否會改變。組播通信協(xié)調(diào)器程序和終端程序流程圖如圖所示。協(xié)調(diào)器程序流程圖 終端程序流程圖相關(guān)知識點(diǎn)組播定義在apsgroups.h文件中有aps_Group_t結(jié)構(gòu)體的定義,如下所示:#defineAPS_GROUP_NAME_LEN16typedefstruct{uint16ID;uint8name[APS_GROUP_NAME_LEN];}aps_Group_t;每個組有一個特定的ID,然后是組名,組名存放在name數(shù)組中。注意:name數(shù)組的第一個元素是組名的長度,從第二個元素開始存放真正的組名字符串。在程序中可以使用如下方法定義一個組。1aps_Group_tSampleApp_Group;2SampleApp_Group.ID=0x0001;3SampleApp_G[0]=7;4osal_memcpy(&(SampleApp_G[1]),"Group1",7);5aps_AddGroup(SAMPLEAPP_ENDPOINT,&SampleApp_Group);第1行,定義了一個aps_Group_t類型的變量SampleApp_Group。第2行,將組ID初始化為0x0001。第3行,將組名的長度寫入name數(shù)組的第1個元素位置處。第4行,使用osal_memcpy()函數(shù)將組名“Groupl”拷貝到name數(shù)組中,從第2個元素位置處開始存放組名。第5行,使用aps_AddGroup()函數(shù)使該端口加到組中。相關(guān)知識點(diǎn)其中,aps_AddGroup()函數(shù)原型如下:aps_AddGroup(uint8endpoint,aps_Group_t*group);這些協(xié)議棧已經(jīng)幫我們實(shí)現(xiàn)了,打開SampleApp.c文件,搜索SampleApp_Group,可以找到組定義,如圖所示。
組播定義相關(guān)知識點(diǎn)組播通信流程(1)在Coordinator.c文件中添加頭文件:(2)定義組播結(jié)構(gòu)體變量aps_Group_tGenericApp_Group;(3)在GenericApp_Init(uint8task_id)中初始化:GenericApp_Group.ID=0x0001;//組號osal_memcpy(GenericApp_G,“Group1”,6);//組名(4)當(dāng)網(wǎng)絡(luò)狀態(tài)發(fā)生變化時,加入組aps_AddGroup(GENERICAPP_ENDPOINT,&GenericApp_Group);//將端口加入組任務(wù)開發(fā)實(shí)施步驟(1)找到初始化函數(shù)GenericApp_Init(),加上紅框代碼
(2)找到任務(wù)事件處理函數(shù)GenericApp_ProcessEvent()函數(shù),加上按鍵事件處理.
任務(wù)開發(fā)實(shí)施步驟(3)找到消息處理函數(shù)GenericApp_MessageMSGCB()
任務(wù)開發(fā)實(shí)施步驟(4)按鍵處理函數(shù)
任務(wù)開發(fā)實(shí)施步驟(5)發(fā)送消息函數(shù)(組播發(fā)送)
任務(wù)開發(fā)實(shí)施步驟(6)添加幾個變量
任務(wù)開發(fā)實(shí)施步驟(7)添加頭文件(8)添加組播簇ID任務(wù)開發(fā)實(shí)施步驟(9)函數(shù)聲明(10)GenericApp.h文件添加簇任務(wù)開發(fā)實(shí)施步驟任務(wù)結(jié)果操作步驟(1)編譯程序下載到三個節(jié)點(diǎn)中,一個協(xié)調(diào)器,一個路由器,一個終端。(2)終端節(jié)點(diǎn)按下S1按鍵,發(fā)送組播數(shù)據(jù),成功則終端D2燈翻轉(zhuǎn),協(xié)調(diào)器收到數(shù)據(jù)后協(xié)調(diào)器的D2燈同時翻轉(zhuǎn)。(3)按下協(xié)調(diào)器S2按鍵,退出組,則終端再按下S1按鍵,協(xié)調(diào)器收不到數(shù)據(jù),D2燈不變化。注意:協(xié)調(diào)器發(fā)送組播信息時,
終端節(jié)點(diǎn)收不到組播的數(shù)據(jù),只有路由器能收到。什么原因呢?原因:協(xié)議棧規(guī)范里面規(guī)定,睡眠中斷不接收組播信息,如果一定要接收的話,只有將終端的接收機(jī)一直打開,這樣就可以接收到了。具體做法為:將f8config.cfg配置文件中的:-RFD_RCVC_ALWAYS_ON=FALSE改為:-RFD_RCVC_ALWAYS_ON=TRUE就可以了。拓展作業(yè):改為協(xié)調(diào)器發(fā)送數(shù)據(jù),終端接收數(shù)據(jù),收到數(shù)據(jù)后D2燈翻轉(zhuǎn)。程序下載到三個節(jié)點(diǎn)中,協(xié)調(diào)器、路由器、終端各一個,協(xié)調(diào)器按下S1按鍵,其他兩個節(jié)點(diǎn)上D2燈同時翻轉(zhuǎn)。感謝觀看THANKYOUPleasereplacetext,clickaddrelevantheadline,modifythetextcontent,alsocancopyyourcontenttothisdirectly.Pleasereplacetext,clickaddrelevantheadline,modifythetextcontent,alsocancopyyourcontentto
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 7課間十分鐘(教學(xué)設(shè)計(jì))-部編版道德與法治一年級上冊
- 二氧化碳激光混合氣生產(chǎn)建設(shè)項(xiàng)目節(jié)能評估報(bào)告(節(jié)能專)
- 2025年全自動衛(wèi)生護(hù)墊生產(chǎn)線行業(yè)深度研究分析報(bào)告
- 2025年低碳小鎮(zhèn)項(xiàng)目發(fā)展計(jì)劃
- 污泥處理處置項(xiàng)目可行性研究報(bào)告項(xiàng)目建議書
- 中國手工焊機(jī)市場競爭策略及行業(yè)投資潛力預(yù)測報(bào)告
- 幼兒園安全環(huán)境評估報(bào)告
- 2025年度出租車公司車輛安全檢查外包合同
- 浙教版高一必修信息技術(shù)3.5《智能處理》教學(xué)設(shè)計(jì)
- 6《景陽岡》教學(xué)設(shè)計(jì)-2023-2024學(xué)年統(tǒng)編版語文五年級下冊
- 大型機(jī)械安拆管理培訓(xùn)課件
- 短視頻運(yùn)營實(shí)務(wù)教學(xué)ppt課件(完整版)
- 妊娠和精神疾病課件
- 全新人教精通版六年級英語下冊教案(全冊 )
- (新版教材)粵教粵科版六年級下冊科學(xué)全冊教案(教學(xué)設(shè)計(jì))
- 精品污水處理廠工程重難點(diǎn)分析及應(yīng)對措施
- (完整版)泄洪渠施工方案
- 幼兒園廚房人員培訓(xùn)計(jì)劃
- 博士、博士后簡歷模板
- 《房屋面積測算技術(shù)規(guī)程》DGJ32TJ131-2022
- 畢業(yè)設(shè)計(jì)-膽囊結(jié)石患者的護(hù)理計(jì)劃
評論
0/150
提交評論