2009年8月20日 星期四

Source Code 分析筆記-7 成品測試

繼上次撰寫出控制Coordinator LED指令後,我們在Router添加了DIO Interrupts指令,以Expansion Connector第10、11的Pin腳取代原來的switch1、switch2

系統的設計是Router板上按下switch2會使Coordinator板上的LED亮起,再添加DIO Interrupts指令後,將濕度sensor的延伸接線一端接至pin 11(switch2),另一端接至pin 40(GND)


圖一: sensor的延伸接線接至pin腳(pin11、pin40)


圖二: Router與sensor全貌


當sensor的感測端有所反應時,其延伸接線將會從斷路狀態轉為導通狀態,pin11與pin40也將會導通,等同接地,當電流流入地形成迴路時,此動作形同按下switch2、而Coordinator的LED將會亮起


圖三: sensor有所反應,Coordinator 之 LED3將會亮起



將Coordinator接至電腦端以檢測Router傳回來的資訊


圖四: Router回傳資訊,sensor未有反應時,switch行顯示 "Switch = 0"


圖五: Router回傳資訊,sensor有反應時,switch行顯示 "Switch = 1"



為了避免不必要的資訊,如其他未接上sensor的Router回傳值、以及多餘的溫度光感值等,修掉程式碼只留下接上sensor的Router會回傳數值外,其餘的Router僅做網路功用,如此一來,接收端只會顯示重要的資訊,顯示會較為簡潔


圖六: sensor未有反應時畫面顯示 "Response = 0"


圖七: sensor有反應時畫面顯示 "Response = 1"



目前為止,最重要的sensor資訊回傳總算是有一點小成果,但整體系統架構還需做修正,如sensor一但有所反應,接收端就會一直回傳"Response = 1",sensor反應中斷後,接收端並不會回傳"Response = 0",並須將系統重啟

Router與Coordinator的程式碼修改有空再補上其思考過程以及添加的指令

P.S上述問題已於剛剛修正完成,sensor中斷反應接收端即會回傳"Response = 0",在有反應時才會回傳"Response = 1"

期許我們能越做越好,共勉之

1 則留言:

  1. 太厲害了!!
    每次你們一直都能有新的進展
    一起加油^^

    回覆刪除