版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄 目錄10_ZIGBEE 網絡通信的實現(xiàn) 網絡通信的實現(xiàn)............................................................................................................1一、控制臺的基本結構.......................................................................
2、................................................1二、第一個命令’H’幫助..................................................................................................................3三、廣播........................................
3、....................................................................................................6四、點對點通信................................................................................................................
4、.................8五、遠程..........................................................................................................................................13五、總結......................................................
5、....................................................................................2010_ZigBee 網絡通信的實現(xiàn) 網絡通信的實現(xiàn)----(轉載請注明出處 轉載請注明出處 774910349@qq.com)Everhuai 寫于 寫于 2011-12-24上一次筆記中主要講了一些原理性的東西,現(xiàn)在將對我的代碼進行解讀。一、控制臺的基本結構 一、控
6、制臺的基本結構在代碼中我單獨為控制臺增加了兩個文件 Console.c 和 Console.h。#ifndef CONSOLE_H#define CONSOLE_H#ifdef __cplusplusextern “C“{#endif#define USER_DEBUG 1 //調試 調試#undef USER_DEBUG//函數(shù)指針原型 函數(shù)指針原型typedef void (*console_f)(void); str
7、uct console_config{console_f console; //入口函數(shù)指針 入口函數(shù)指針console_f menu;//打印菜單 打印菜單console_f broadcast; //廣播函數(shù)指針 廣播函數(shù)指針console_f search; //搜索節(jié)點 搜索節(jié)點console_f cmd;
8、 //通過無線發(fā)送命令給節(jié)點進行操作的函數(shù)指針 通過無線發(fā)送命令給節(jié)點進行操作的函數(shù)指針console_f serialCB; //提供給串口 提供給串口{(void)port;#ifdef USER_DEBUG//為了節(jié)省資源,只有調試的時候才使用該 為了節(jié)省資源,只有調試的時候才使用該 LED 指示串口工作狀態(tài) 指示串口工作狀態(tài)HalLedSet( HAL_LED_2, HAL_LED_MODE_T
9、OGGLE );#endif //USER_DEBUGif ((event //第一次觸發(fā)任務 第一次觸發(fā)任務 SERIALAPP_SEND_EVTconsole.serialCB(); //用于把串口讓給不同的任務 用于把串口讓給不同的任務}}操作完成是使用語句console.serialCB = console.console; //釋放串口 釋放串口把串口還給控制臺。二、第一個命令’ 二、第一個命令’h
10、’幫助 幫助現(xiàn)在來講一下命令是如何實現(xiàn)的,這里以’h’幫助命令為例;從前面我們知道控制臺的入口函數(shù)是 console_entry(),static void console_entry(void){static uint8 commond = 0; //保存命令 保存命令uint8 *IEEEAddr;uint16 nwkAddr;if(commond != 0) //命令還沒有執(zhí)行完畢 命令
11、還沒有執(zhí)行完畢{goto cmd;//運行命令 運行命令}//讀取命令, 讀取命令,2 個字節(jié),格式:命令 個字節(jié),格式:命令 + 回車 回車*console.Console_TxLen = HalUARTRead(CONSOLE_PORT, console.Console_TxBuf+STR_START, CONSOLE_TX_MAX); //以十六進制形式打印輸入命令字節(jié)數(shù) 以十六進制形式打印輸入命令字節(jié)數(shù),前三字節(jié)為命令 前三字
12、節(jié)為命令show_hex(console.Console_TxLen, console.Console_TxBuf+STR_START+3, 1); //串口調試助手把回車當成兩個字符 串口調試助手把回車當成兩個字符 '\t' '\n'if((*console.Console_TxLen != 2) && (*console.Console_TxLen != 3)) // 命
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于zigbee的無線傳感器網絡通信協(xié)議棧設計與實現(xiàn)
- 基于ZigBee的無線傳感器網絡通信協(xié)議棧設計與實現(xiàn).pdf
- 千兆網絡通信系統(tǒng)的FPGA設計實現(xiàn).pdf
- 實時隱秘網絡通信系統(tǒng)的DSP實現(xiàn).pdf
- 在labview中實現(xiàn)網絡通信的幾種方法
- 多網絡通信與安全的研究和實現(xiàn).pdf
- 基于ZigBee的無線傳感器網絡通信節(jié)點的軟硬件設計.pdf
- 多端口網絡通信平臺的設計與實現(xiàn).pdf
- 網絡通信課程設計
- VDR數(shù)據保護容器的網絡通信研究與實現(xiàn).pdf
- 遠程監(jiān)控系統(tǒng)中網絡通信的研究與實現(xiàn).pdf
- 網絡通信連接器的設計與實現(xiàn).pdf
- 基于MPC8280的網絡通信平臺的實現(xiàn).pdf
- 基于ARM的Zigbee無線網絡通信系統(tǒng)的研究與設計.pdf
- 基于Linux的網絡通信游戲的設計與實現(xiàn).pdf
- 基于ACE的網絡通信系統(tǒng)的研究與實現(xiàn).pdf
- 基于ACE的網絡通信子系統(tǒng)的設計與實現(xiàn).pdf
- 基于libuv的網絡通信接口系統(tǒng)的設計與實現(xiàn).pdf
- 基于Rabbit2000的網絡通信及其實現(xiàn).pdf
- 燈控臺網絡通信模塊的設計與實現(xiàn).pdf
評論
0/150
提交評論