無線傳感器網絡中的nesC嵌入式編程語言
為了避免與pc機自身系統的沖突,可將安裝包tinyos-1.1.0.exe(軟件版本以實際仿真的版本為主,現升級到TinyOS-2.1)安裝到指定路徑(本仿真軟件環境是安裝在D:/盤下)。這個安裝包已經包含了JAVA、Cygwin,TinyOS相關軟件和相關的編譯器,同時提供像mica、micaz等硬件驅動,針對不同硬件編譯生成可執行文件下載。
(2)執行步驟
①打開生成的cygwin圖標(Linux建立在Windows下的軟件平臺),在光標下進入仿真環境路徑(安裝在D盤下):
cygdrive/d/tinyos/cygwin/opt/…/tinyos/sim―尋找軟件仿真路徑。
②輸入make,之后將生成一個執行腳本文件Tinyviz.jar。
③進入應用程序路徑。在相同的路徑下進入blink目錄下。
④輸入make pc―在PC機上對Blink程序進行編譯、仿真,若有相關硬件,則輸入硬件名稱,如make micaz,在blink文件下會生成一個pc文件夾,里面包含了在pc機上blink主程序main.exe。
⑤打開blink/pc路徑,輸入:tinyviz - run main.exe10(10為傳感器節點的仿真個數)。
利用可視化Tinyviz將調用接口使Blink程序執行的仿真結果通過圖形顯示出來,仿真結果如圖2所示。最上面一層顯示了整個程序仿真時間長度和仿真終止按鍵。圖中每個節點的位置可以任意布置,仿真間隔時間也能自行設定。Blink程序的主要功能是每經過1 s的時間間隔,每個仿真節點上紅燈會閃爍1次,如圖中節點0紅燈是滅的,節點6紅燈是亮的。該圖很清晰地將NesC編寫的應用程序功能仿真出來,對具體代碼的硬件化執行提供了實現方法。

4 總 結
通過對Blink程序的詳細分析可以看出,用nesC編寫的程序能很好地將組件化/模塊化的思想應用到程序中,對于其他nesC應用程序編寫也能調用各組件接口,代碼量少,能快速建立程序中模塊間的鏈接,減少執行任務和事件驅動時線程間不必要的資源消耗,其具體功能可通過仿真軟件反映出來。掌握nesC的語法,可以大大地降低實現無線傳感器網絡操作系統和上層的應用程序的復雜度,為深入學習與研究TinyOS系統以及其上應用程序的設計提供了參考方法。 linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論