天天看點

Zigbee在.Net Micro Framework系統中的應用

兩者都是低複雜度,低功耗,低成本(.Net MF開源且免費)的解決方案,二者結合對建構物聯網無線方案來說,真是珠聯璧合。

目前.Net Micro Framework V4.0的源碼中已經提供了CC2420的驅動程式(源碼在/framework/core/drivers/802_15_4/stack/physical/cc2420),硬體通過SPI方式通路CC2420晶片,在酒窖存儲監控中已有相關應用,有興趣的朋友可以參考一下。

晶片級方案由于沒有合适的開發闆,是以暫且不作介紹,我今天僅介紹子產品級解決方案,其平台是赫立訊公司的IP-Link1223子產品。

IP-Link1223子產品提供三種組網模式:線性網絡、全Mesh網絡、星型拓撲,其中全Mesh網絡最為常用。三種指令模式:AT指令模式、透傳模式、二進制模式,AT指令模式隻能本地配置;透傳模式雖然好用,但是多點通信時并不靈活;二進制模式不僅本地可以配置,也可以透過網絡遠端配置,并且可以擷取路由表及相關鍊路通信品質。

軟體配置界面:

Zigbee在.Net Micro Framework系統中的應用

目前已經編寫出支援全部的二進制模式指令Helicomm_IPLink1223類,相關指令如下,詳細通信協定請參見赫立訊公司相關的說明文檔。

private static byte CMD_ReadADC = 0x81;              //讀模拟通道值

    private static byte CMD_ReadADC = 0x81;              //讀模拟通道值

    private static byte CMD_ReadRSSI = 0x82;             //讀發射頻率

    private static byte CMD_ReadTemperature = 0x83;      //讀溫度

    private static byte CMD_ReadSRegister = 0x86;        //讀S寄存器值

    private static byte CMD_WriteSRegister = 0x87;       //寫S寄存器值

    private static byte CMD_ReadMAC = 0x8B;              //讀MAC位址

    private static byte CMD_ReadVer = 0x8C;              //讀核心版本

    private static byte CMD_BatterySavingMode = 0x8D;    //節電(停機)

    private static byte CMD_Hibernation = 0x8E;          //休眠

    private static byte CMD_SoftReboot = 0x8F;           //軟重新開機

    private static byte CMD_HardwareReboot = 0xC0;       //硬重新開機

    private static byte CMD_Reset = 0x90;                //恢複出廠設定

    private static byte CMD_ReadRoute = 0x95;            //讀取路由表

    private static byte CMD_ReadBlacklist = 0x9C;        //讀取黑名單   

    private static byte CMD_WriteBlacklist = 0x9D;       //寫黑名單  

    private static byte CMD_TrackerRoute = 0xAA;         //跟蹤路由  

    private static byte CMD_TrackerLQIRoute = 0xBB;      //帶信号強度的跟蹤路由

    private static byte CMD_ReadIO = 0xAC;               //讀IO狀态

    private static byte CMD_WriteIO = 0xAD;              //寫IO狀态

    private static byte CMD_ScanNeighbour = 0xBC;        //掃描鄰居清單

    private static byte CMD_ReadDeviceType = 0xC3;       //獲得裝置類型    

private static byte CMD_LocalHibernation = 0xB1;     //本地休眠

    private static byte CMD_LocalAwaikening = 0xB2;      //本地喚醒

Zigbee在.Net Micro Framework系統中的應用
Zigbee在.Net Micro Framework系統中的應用

繼續閱讀