無線傳感器網(wǎng)絡中的nesC嵌入式編程語言
為了避免與pc機自身系統(tǒng)的沖突,可將安裝包tinyos-1.1.0.exe(軟件版本以實際仿真的版本為主,現(xiàn)升級到TinyOS-2.1)安裝到指定路徑(本仿真軟件環(huán)境是安裝在D:/盤下)。這個安裝包已經(jīng)包含了JAVA、Cygwin,TinyOS相關軟件和相關的編譯器,同時提供像mica、micaz等硬件驅(qū)動,針對不同硬件編譯生成可執(zhí)行文件下載。
(2)執(zhí)行步驟
①打開生成的cygwin圖標(Linux建立在Windows下的軟件平臺),在光標下進入仿真環(huán)境路徑(安裝在D盤下):
cygdrive/d/tinyos/cygwin/opt/…/tinyos/sim―尋找軟件仿真路徑。
②輸入make,之后將生成一個執(zhí)行腳本文件Tinyviz.jar。
③進入應用程序路徑。在相同的路徑下進入blink目錄下。
④輸入make pc―在PC機上對Blink程序進行編譯、仿真,若有相關硬件,則輸入硬件名稱,如make micaz,在blink文件下會生成一個pc文件夾,里面包含了在pc機上blink主程序main.exe。
⑤打開blink/pc路徑,輸入:tinyviz - run main.exe10(10為傳感器節(jié)點的仿真?zhèn)€數(shù))。
利用可視化Tinyviz將調(diào)用接口使Blink程序執(zhí)行的仿真結(jié)果通過圖形顯示出來,仿真結(jié)果如圖2所示。最上面一層顯示了整個程序仿真時間長度和仿真終止按鍵。圖中每個節(jié)點的位置可以任意布置,仿真間隔時間也能自行設定。Blink程序的主要功能是每經(jīng)過1 s的時間間隔,每個仿真節(jié)點上紅燈會閃爍1次,如圖中節(jié)點0紅燈是滅的,節(jié)點6紅燈是亮的。該圖很清晰地將NesC編寫的應用程序功能仿真出來,對具體代碼的硬件化執(zhí)行提供了實現(xiàn)方法。
4 總 結(jié)
通過對Blink程序的詳細分析可以看出,用nesC編寫的程序能很好地將組件化/模塊化的思想應用到程序中,對于其他nesC應用程序編寫也能調(diào)用各組件接口,代碼量少,能快速建立程序中模塊間的鏈接,減少執(zhí)行任務和事件驅(qū)動時線程間不必要的資源消耗,其具體功能可通過仿真軟件反映出來。掌握nesC的語法,可以大大地降低實現(xiàn)無線傳感器網(wǎng)絡操作系統(tǒng)和上層的應用程序的復雜度,為深入學習與研究TinyOS系統(tǒng)以及其上應用程序的設計提供了參考方法。 linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論