無(wú)線傳感器網(wǎng)絡(luò)練習(xí)利用Task控制PPT課件_第1頁(yè)
無(wú)線傳感器網(wǎng)絡(luò)練習(xí)利用Task控制PPT課件_第2頁(yè)
無(wú)線傳感器網(wǎng)絡(luò)練習(xí)利用Task控制PPT課件_第3頁(yè)
無(wú)線傳感器網(wǎng)絡(luò)練習(xí)利用Task控制PPT課件_第4頁(yè)
無(wú)線傳感器網(wǎng)絡(luò)練習(xí)利用Task控制PPT課件_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、5.2 培訓(xùn)目標(biāo) 理解節(jié)點(diǎn)的LED控制,嘗試通過(guò)創(chuàng)建例題程序,使節(jié)點(diǎn)的LED直接運(yùn)行。 理解TinyOS提供的LedsC組件結(jié)構(gòu)。 理解Blink例題中使用的多個(gè)下層組件。第1頁(yè)/共17頁(yè)5.3 基本知識(shí) 節(jié)點(diǎn)LED的一般用途 LED主要用于確認(rèn)感應(yīng)器節(jié)點(diǎn)的狀態(tài)及是否執(zhí)行特定操作 即使不用其他的調(diào)試方法,也可以通過(guò)LED的狀態(tài)輕松確認(rèn)節(jié)點(diǎn)的運(yùn)行狀態(tài) LedsC 組件 LedsC是一個(gè)組件,用來(lái)控制LED. LedsC 組件通過(guò)使用Leds的,為了控制節(jié)點(diǎn)中的三種LED,提供了如下的Command函數(shù).第2頁(yè)/共17頁(yè)5.3 基本知識(shí) LedsLeds 組組件中提供的函件中提供的函數(shù)數(shù)整體LED

2、控制Leds.getLeds.get()()提取提取當(dāng)當(dāng)前前LedLed的的狀態(tài)狀態(tài)。(bit0=led0, bit1=led1, bit2=led2)(bit0=led0, bit1=led1, bit2=led2)Leds.setLeds.set(uint8_t) (uint8_t) 將將LedLed的的狀態(tài)設(shè)狀態(tài)設(shè)定定為輸為輸入的入的值值。 (bit0=led0, bit1=led1, (bit0=led0, bit1=led1, bit2=led2)bit2=led2)紅紅色色 LED LEDLeds.led0On() Leds.led0On() 打打開(kāi)開(kāi)紅紅色色 LEDLED。Led

3、s.led0Off() Leds.led0Off() 關(guān)閉關(guān)閉紅紅色色 LEDLED。Leds.led0Toggle() Leds.led0Toggle() 將將紅紅色色 LEDLED變變更更為與當(dāng)為與當(dāng)前前狀態(tài)狀態(tài)相反的相反的狀態(tài)狀態(tài)。( (通常用于通常用于L LEDED閃爍時(shí)閃爍時(shí)) ) 綠綠色色 LED LEDLeds.led1On() Leds.led1On() 打打開(kāi)開(kāi)綠綠色色 LED LED。Leds.led1Off() Leds.led1Off() 關(guān)閉關(guān)閉綠綠色色 LEDLED。Leds.led1Toggle() Leds.led1Toggle() 將將綠綠色色 LEDLED變

4、變更更為與當(dāng)為與當(dāng)前前狀態(tài)狀態(tài)相反的相反的狀態(tài)狀態(tài)。( (通常用于通常用于L LEDED閃爍時(shí)閃爍時(shí)) )黃黃色色 LED LEDLeds.led2On() Leds.led2On() 打打開(kāi)開(kāi)黃黃色色 LED LED。Leds.led2Off() Leds.led2Off() 關(guān)閉關(guān)閉黃黃色色 LED LED。Leds.led2Toggle() Leds.led2Toggle() 將將Y Y黃黃色色 LED LED變變更更為與當(dāng)為與當(dāng)前前狀態(tài)狀態(tài)相反的相反的狀態(tài)狀態(tài)。( (通常用于通常用于LEDLED閃爍時(shí)閃爍時(shí)) )第3頁(yè)/共17頁(yè)5.4.1 Blink 例題的構(gòu)成 Blink 程序文件

5、Blink.nc Blink 例程的配置文件. BlinkM.nc Blink 例程的模塊文件 Blink 文件的位置cygwin安裝目錄/opt/tinyos-2.x/contrib/cc2431/Blink/ 請(qǐng)參閱 Bink.nc 和 BlinkM.nc 文件夾中的文件。第4頁(yè)/共17頁(yè)5.4.1 Blink.nc Blink.nc Blink 例題中的各組件配置關(guān)系第5頁(yè)/共17頁(yè)5.4.1 Blink.nc4:components 后是使用的模塊,有MainC、BlinkM以及用于控制LED的組件LedsC及提供延遲功能的BusyWaitMicroC5:在TinyOS2.X中通過(guò)Bo

6、ot接口與MainC模塊連接。MainC組件及TinyOS的相關(guān)設(shè)點(diǎn)結(jié)束后,通過(guò)Boot的Booted事件開(kāi)始程序6: 連接模塊BlinkM的接口Leds和下層組件LedsC的接口Leds7: 為了提供以u(píng)s為單位延遲時(shí)間的BusyWait接口,連接BusyWaitMicroC組件1: configuration Blink 2: 3: implementation 4: components MainC, BlinkM, LedsC, BusyWaitMicroC; 5: BlinkM.Boot - MainC;6: BlinkM.Leds - LedsC;7: BlinkM.BusyWai

7、t -BusyWaitMicroC;8: 第6頁(yè)/共17頁(yè)5.4.2 BlinkM.nc1: module BlinkM 2: uses 3: interface Boot;4: interface Leds;5: interface BusyWait;6: 7: 8: implementation 9: task void led_task(); 10: event void Boot.booted() 11: post led_task(); 12: 26:Module文件中,通過(guò)uses聲明的接口,有通知程序開(kāi)始的Boot接口,控制LED的Leds接口,提供延遲時(shí)間的BusyWait接口

8、。BusyWait的內(nèi)的內(nèi)容中,TMicro意味著時(shí)間單位以u(píng)s為單位,設(shè)定的時(shí)間變量類型為uint16_t。9:為了聲明想要通過(guò)Task運(yùn)行的特征函數(shù),需在函數(shù)前添加關(guān)鍵詞task,第9行中的led_task在第13行被定義。1012 :如果TinyOS初始化完畢,根據(jù)MainC 組件,Boot.booted()函數(shù)被調(diào)用。在該函數(shù)中,為了調(diào)用第9行的Task函數(shù),而使用了關(guān)鍵詞post。如果booted函數(shù)結(jié)束,依靠調(diào)度程序,led_task() Task函數(shù)被調(diào)用。第7頁(yè)/共17頁(yè)5.4.2 BlinkM.nc13: task void led_task()14: int i;15: f

9、or(i=0; i程序-Texas Instruments-SmartRF Flash Programmer 1.5.0- SmartRF Flash Programmer)。使要下載的HBE-Ubi-CC2431節(jié)點(diǎn)的USB MCU開(kāi)關(guān)移向MCU后。第11頁(yè)/共17頁(yè)5.5 Blink下載 Flash Programmer啟動(dòng)運(yùn)行 如果已與PC連接好,則在Flash Programmer運(yùn)行后,畫面將如下圖所示。第12頁(yè)/共17頁(yè)5.5 Blink下載 Flash Programmer的初始畫面上將如上圖所示以藍(lán)色行顯示哪個(gè)節(jié)點(diǎn)與PC連接?,F(xiàn)在,在“Flash”路徑輸入行中單擊 按鈕,選擇剛才編譯的例題的app.hex文件。第13頁(yè)/共17頁(yè)5.5 Blink下載 如果設(shè)定了要下載的hex文件,接下來(lái)單擊Flash Programmer下端的“Perform action”按鈕。如果單擊該按鈕,所選的hex文件會(huì)通過(guò)C8051F320被下載到cc2431芯片中。第14頁(yè)/共17頁(yè)5.5 Blink下載 zigbex 及 ZigbeX2 節(jié)點(diǎn)) ZigbeX及ZigbeX2 通過(guò)AVR Studio的下載方法12345第15頁(yè)/共17頁(yè)5.6 Blink 練習(xí) 結(jié)果 結(jié)果 如果完成了按上述順序進(jìn)行的實(shí)習(xí),將會(huì)看到韓伯節(jié)點(diǎn)的Yellow LED被

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論