唉!花了很多時間,結果原來早就寫好了..
前一段時間,一直以為TinyOs下面,執行的時候沒辦法攔截訊息,是最大的怨念。
沒想到網路上爬一下文章,以及...
Tutorial 目錄下已經展示了printf() 這個函數的使用方法..
Step1. 程式中引入 #include "printf.h"
Step 2. 程式中使用 printf()函數,並且會丟到buffer
Step 3. 告訴TinyOs,把buffer清掉,全部透過serial port傳到電腦中 printfflush()
Step 4. 在編譯時,make file 中第二行 加上
CFLAGS += -I$(TOSDIR)/lib/printf
即可
The_TinyOS_printf_Library
WSN之二三事:TinyOs and Others
這個網誌是由一個每天只會做研究和煮飯的人所維護
2010年12月23日 星期四
Tinyos 的MAC通訊
TinyOs中有一個容易令人忽略的介面,就是 PacketAcknowledgement。
主要的功能是提供設定的元件來使用者可以開關 彼此兩端的 Ack。
主要的命令有下列三個:
分別是 PacketAcknowledgement.noAck, PacketAcknowledgement.requestAck, PacketAcknowledgement.wasAcked.
前面兩個當然就是設定傳送時要不要有Ack回應。以一般的WSN網路設定來說,由於都有Cord來負責網路的建立和設定,自然這個Ack的傳送是必須的。所以
PacketAcknowledgement.requestAck 這個指令倒是就很重要了(設定需要Ack)。
主要的功能是提供設定的元件來使用者可以開關 彼此兩端的 Ack。
主要的命令有下列三個:
分別是 PacketAcknowledgement.noAck, PacketAcknowledgement.requestAck, PacketAcknowledgement.wasAcked.
前面兩個當然就是設定傳送時要不要有Ack回應。以一般的WSN網路設定來說,由於都有Cord來負責網路的建立和設定,自然這個Ack的傳送是必須的。所以
PacketAcknowledgement.requestAck 這個指令倒是就很重要了(設定需要Ack)。
command error_t noAck(message_t *msg)
command error_t requestAck(message_t *msg)
command bool wasAcked(message_t *msg)
2010年12月16日 星期四
OctopusX與OctopusII溝通之設
OctopusX與OctopusII如何溝通之設定
1.tinyos-2.x-contrib\diku\common\lib\simplemac目錄下中packet.h
加入”mac_addr_t pan;”
TOSSIM到底好不好用!!
相信每個開始學TinyOs的人,心中都會有一個懷疑,到底要不要學TOSSIM。
基本上,學了Nesc的programming已經過了一段很辛苦的日子,又要開始學TOSSIM又是一個苦日子。尤其是網路上的資料不多得時候,學(爬文)起來真的是要花不少時間。
以我上課的經驗來說,TOSSIM的學習要碩班的程度才比較吃的下來(進階的部份)。
另一方面,TOSSIM最大的麻煩應該就是沒有圖形化工具,沒辦法像是TinyViz那樣直覺(TinyViz只支援TinyOs 1.x)。
但是,如果Nesc的code寫完後,直接用TOSSIM來模擬,就我個人來說,真的是很方便,code直接就可以派上用場,就好像是硬體直接當成軟體來用(學會了硬體等於學會了軟體),不像是使用matlab或NS2等其他環境模擬工具,學生就算把環境模擬的程式寫的再好,對於整個WSN的使用和情境仍然是一知半解。
基本上,學了Nesc的programming已經過了一段很辛苦的日子,又要開始學TOSSIM又是一個苦日子。尤其是網路上的資料不多得時候,學(爬文)起來真的是要花不少時間。
以我上課的經驗來說,TOSSIM的學習要碩班的程度才比較吃的下來(進階的部份)。
另一方面,TOSSIM最大的麻煩應該就是沒有圖形化工具,沒辦法像是TinyViz那樣直覺(TinyViz只支援TinyOs 1.x)。
但是,如果Nesc的code寫完後,直接用TOSSIM來模擬,就我個人來說,真的是很方便,code直接就可以派上用場,就好像是硬體直接當成軟體來用(學會了硬體等於學會了軟體),不像是使用matlab或NS2等其他環境模擬工具,學生就算把環境模擬的程式寫的再好,對於整個WSN的使用和情境仍然是一知半解。
訂閱:
文章 (Atom)