兩者都是低複雜度,低功耗,低成本(.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指令模式隻能本地配置;透傳模式雖然好用,但是多點通信時并不靈活;二進制模式不僅本地可以配置,也可以透過網絡遠端配置,并且可以擷取路由表及相關鍊路通信品質。
軟體配置界面:
目前已經編寫出支援全部的二進制模式指令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; //本地喚醒