新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于GPRS的ZigBee協調器網關設計通信

        基于GPRS的ZigBee協調器網關設計通信

        作者: 時間:2012-12-21 來源:網絡 收藏

        3 協調器網關軟件設計
        協調器網關軟件設計流程如圖2所示。其中等待注冊成功是查看AT+CGREG?指令是否返回1或5,返回則表示GPRS模塊上網注冊成功;APN設置為CMNET;PPP撥號用AT%ETCPIP=\”\”,\”\””指令;域名解析指令AT%DNSR=”xxxx.3322.org”將返回與此域名綁定的IP;再用連接服務器指令AT%IPOPEN=“TCP”,xxx.xxx.xxx,1234連接上位機IP及監聽端口。

        本文引用地址:http://www.104case.com/article/153651.htm

        b.JPG


        數據傳輸程序的設計是重點,數據傳輸包括將采集到的數據透明上傳至TCP服務器以及上位機指令的檢測和通信是否掉線的檢測。串口2接收到FEOF幀頭后再執行AT指令將有效測量數據透明上傳,收到心跳幀636F 6F6E后也透明上傳,收到其他字符則不處理。當串口1接收緩存中有%IPCLOSE字符串時表示通信斷開,此時則在下位機程序中重新執行連接服務器程序直至再次連接成功,保證數據通信可靠。

        4 上位機程序設計
        整個上位機軟件設計流程如圖3所示,即編寫一個TCP服務器程序。采用通信工具中TCPListen來偵聽客戶端的連接請求,建立連接后,利用TCP Read讀取傳輸的數據,工作模式設置為standard,即等待直至讀取所有“讀取的字節”中指定的字節或“超時毫秒”用完,返回目前已讀取的字節,如字節數少于請求的字節數,則返回部分字節并報告超時錯誤。由于數據幀通過下位機編程為固定長度是20 B的數據,心跳幀為4 B的數據,因此在配置TCP Read函數時,要將“讀取的字節”設置為20,“超時毫秒”設置為0。這樣既可以偵聽到心跳幀,又不至于因心跳幀的4 B打亂數據幀的20 B而導致數據錯誤。程序控制部分可向下位機發送控制指令,實現對單個或多個節點數據采集周期以及開始結束的控制,以適應不同的工作場合。主要原理是利用TCP Wtite函數向已建立的連接發送指令,程序中兩次利用TCP Write函數,第一次寫入指令的長度,第二次寫入指令的內容。

        c.JPG

        tcp/ip相關文章:tcp/ip是什么


        數字通信相關文章:數字通信原理


        通信相關文章:通信原理


        土壤濕度傳感器相關文章:土壤濕度傳感器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 武强县| 时尚| 绍兴市| 瑞金市| 古丈县| 深泽县| 治多县| 磐安县| 津市市| 峨边| 游戏| 尚义县| 杭锦后旗| 洱源县| 黄大仙区| 宁武县| 新巴尔虎左旗| 罗定市| 鹿邑县| 天柱县| 和田市| 南充市| 澄迈县| 诏安县| 高邑县| 巴中市| 建湖县| 宁城县| 长武县| 沂源县| 孟连| 乐安县| 阿拉善盟| 兴山县| 长武县| 读书| 吉林市| 平湖市| 洛扎县| 南投县| 葫芦岛市|