SlideShare a Scribd company logo
1 of 70
Download to read offline
物聯網開發板WF8266Rhttp://www.wf8266.com
Union U Inc.
AGENDA
➤ WF8266R.js 介紹
➤ 環境及連線
➤ 基礎課程
➤ 單元⼀ : 連上網路
➤ 單元⼆ : 點亮 LED
➤ 單元三 : 亮度調整
➤ 單元四 : PWM 調⾊
➤ 單元五 : 閃亮 LED
➤ 單元六 : 串列 Serial
➤ 單元七 : 事件 Event
AGENDA
➤ 元件
➤ DHT
➤ 超⾳波
➤ DS18B20
➤ IoT
➤ ThingSpeak
➤ IFTTT
物聯網
研習材料
WF8266Rhttp://www.wf8266.com
Union U Inc.
材料準備
WF8266R DHT11 DS18B20 HSR04 LED
RGB LED SW520D麵包板
Relay 公杜邦線
基礎課程
➤ 單元一 : 連上網路
➤ 單元二 : 點亮 LED
➤ 單元三 : 亮度調整
➤ 單元四 : PWM 調色
➤ 單元五 : 閃亮 LED
➤ 單元六 : 串列 Serial
➤ 單元七 : 事件 Event
物聯網
基礎課程
單元⼀ : 連接網路
WF8266Rhttp://www.wf8266.com
Union U Inc.
物聯雲 APP : 手機連接WF8266R AP
➤ 手機 Wi-Fi -> UNU-WF8266R-XXXX (XXXX為SN後4碼)
➤ 透過 APP 將 WF8266R 連上可連通 Internet 的AP基地台
UNU-WF8266R-XXXX
Wi-Fi
Access Point
物聯雲 APP : 加入裝置
物聯雲 APP : 查看設備IP
➤ 確認手機可連上 Internet ,打開物聯雲 APP 首頁的設備清單確定 IP 位址
物聯雲 APP : 網路連接概念
AP 192.168.4.1
Local x.x.x.x
IP x.x.x.x
Internet
WF8266Rhttp://www.wf8266.com
Union U Inc.
MQTT
Internet AP
物聯網
基礎課程
單元⼆ : 點亮 LED
WF8266Rhttp://www.wf8266.com
Union U Inc.
點亮 LED :材料
➤ 透過 LED 的亮滅來學習 GPIO 腳位輸出 高電位 和 低電位. 就像水往低處流, 當我們控
制 PIN5 腳輸出高電位時, 電流由 LED 正腳位(長;Pin5)流向負腳位(短;Gnd) LED 便會
亮起; 反之, 當 PIN5 輸出為低電位時, LED 二腳間是相等的低電位, 不會有流動產生, 所
以 LED 自然就不會亮.
點亮 LED : 配線
➤ LED 長的接 PIN5 短的接 GND
➤ 在 WF8266R 開發板中的下面有6的小圓孔, 由左到右分別是 GND 5 4 12 13 5V
點亮 LED : 程式解說
➤ API 類型 : WebComponent
➤ 目的 : 初學程式的人也可以輕鬆上手, 我們將 Web API 包裝成 <wf8266r-button> 標
籤, 只需要透過 標籤(TAG) 的定義就能使用. 而且可在任何裝置上瀏覽自行設計的控制
頁.
<wf8266r-button type="腳位類型" pin="編號" value="值">說明</wf8266r-button>
type
gpio : 數位輸出
pwm : 數位類比輸出
read : 讀取腳位
adc : 類比輸入
點亮 LED : 打開和關閉 LED 燈
➤ 打開 LED,將 5 號腳位設為 1
➤ 關閉LED,將5號腳位設為 0
➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/02_Light
<wf8266r-button type="gpio" pin="5" value="1">打開 LED</wf8266r-button>
<wf8266r-button type="gpio" pin="5" value="0">關閉</wf8266r-button>
物聯網
基礎課程
單元三 : 亮度調整 PWM
WF8266Rhttp://www.wf8266.com
Union U Inc.
亮度調整 PWM:材料
➤ 上個單元我們學會了如何控制電的流動, 這個單元要介紹如何控制電的流量, 就和開水
龍頭相同, 想要水大些你會把開關開大. 同樣的原理, 透過 PWM 可以控制這個流量, 當
PWM = 0 時最小, PWM = 1023 時最大.
亮度調整 PWM : 配線
➤ LED 長的接 PIN5 短的接 GND
➤ 在 WF8266R 開發板中的下面有6的小圓孔, 由左到右分別是 GND 5 4 12 13 5V
亮度調整 PWM : 程式解說
➤ API 類型 : WebComponent
➤ 目的 : 初學程式的人也可以輕鬆上手, 我們將 Web API 包裝成 <wf8266r-button> 標
籤, 只需要透過 標籤(TAG) 的定義就能使用. 而且可在任何裝置上瀏覽自行設計的控制
頁.
<wf8266r-button type="腳位類型" pin="編號" value="值">說明</wf8266r-button>
type
gpio : 數位輸出
pwm : 數位類比輸出
read : 讀取腳位
adc : 類比輸入
亮度調整 PWM : 調整 LED 光的亮度
➤ 調整 LED,將 5 號腳位設為 0 ∼ 1023
➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/03_LightPWM
<wf8266r-button type="pwm" pin="5" value="0">LED 亮度調整</wf8266r-button>
物聯網
基礎課程
單元四 : PWM 調⾊
WF8266Rhttp://www.wf8266.com
Union U Inc.
調色:材料
➤ 上個單元我們學會了控制流量, 這個單元我們把流量轉換為 RGB 調色控制, 就像 紅+綠
= 黃
➤ RGB LED 燈的腳位由圖片上左到右分別是 Blue(藍) Green(綠) Common(共陰極)
Red(紅)
調色 : 配線
➤ LED 最長的接 GND 短的由左到右接 12(B) 4(G) 5(R)
➤ 這顆 RGB LED 是共陰極的規格, 所以最長的腳位是接 GND, 因此 GPIO 5 4 12 需要輸
出高電位才可將LED點亮.
調色 : 程式解說
➤ API 類型 : WebComponent
➤ 目的 : 初學程式的人也可以輕鬆上手, 我們將 Web API 包裝成 <wf8266r-button> 標
籤, 只需要透過 標籤(TAG) 的定義就能使用. 而且可在任何裝置上瀏覽自行設計的控制
頁.
<wf8266r-button type="腳位類型" pin="編號" value="值">說明</wf8266r-button>
type
gpio : 數位輸出
pwm : 數位類比輸出
read : 讀取腳位
adc : 類比輸入
調色 : 調整 LED 光的色度
➤ 設定3個腳位分別控制 R G B 3 色的輸出量
➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/04_LightColor
<wf8266r-button id="ledR" type="pwm" pin="5" value="0">LED 紅⾊</wf8266r-button>
<wf8266r-button id="ledG" type="pwm" pin="4" value="0">LED 綠⾊</wf8266r-button>
<wf8266r-button id="ledB" type="pwm" pin="12" value="0">LED 藍⾊</wf8266r-button>
物聯網
基礎課程
單元五 : 閃亮 LED
WF8266Rhttp://www.wf8266.com
Union U Inc.
閃亮 LED:材料
➤ LED x 1
➤ WF8266R x 1
➤ 之前的單元都學會了嗎, 接下來要讓 LED 燈閃動起來, 這個需要一點點程式幫忙. 這個
單元你將學會如何透過程式來隨心控制 GPIO 而不必限制在前面的物件功能.
閃亮 LED : 配線
閃亮 LED : 程式解說
➤ API 類型 : WebComponent
➤ 目的 : 學習 GPIO 物件的使用和操作
document.addEventListener('wf8266r-ready', function (e) {
...
}, false);
setInterval(function(){
要做的事情寫在這裡
},毫秒);
GPIO.pin(5,pin5Value,function(){}); //將⽬前存在 pin5Value 裡的⾼或低電位送到 PIN5 腳
},1000);
閃亮 LED : 開始閃動
➤ 1秒要換一個狀態, 需要一個變數, 名字叫 pin5Value 存放 GPIO5 腳的電位值
➤ 然後要判斷 如果是高電位 就把 pin5Value 設成低, 反之設為高. 如此就會有 高低高低 ...
一直這樣變化下去, 而這個時間就是 1000 毫秒 也就是 1 秒鐘.
➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/05_LightShiny
物聯網
基礎課程
單元六 : UART
WF8266Rhttp://www.wf8266.com
Union U Inc.
UART : 概念
➤ 序列(串口) 傳輸
➤ WF8266R 可以透過 Tx(該裝置的輸出訊號腳位) 和 Rx(該裝置的接收訊號腳位) 二腳和
外部序列裝置進行資料互傳
Device 1 Device 2
Tx
Rx
Rx
Tx
BAUD
UART : 材料
➤ USB 轉 TTL 晶片 FTDI:用來和電腦溝通
➤ WF8266R
UART : 調整速度 BAUD
➤ WF8266R 預設的傳輸率是 115200
➤ 輸入 wf8266r.local 可查看 WF8266R 的內部資料
➤ 更改速率

http://wf8266r.local/serial?baud=9600
範例
http://wf8266.com/wf8266r/Code?templateName=06_SerialBaud.html
UART : READ
➤ WF8266R 目前配置了 255 個字元讀取緩衝區, 所以一次發送的最大長度為 255. 這裡示
範由電腦端發送 Hello WF8266R 字串, 並透過 GPIO 物件的 serialRead 讀取.
➤ 讀取

》文字 : http://wf8266r.local/serial/read?text=

》HEX : http://wf8266r.local/serial/read?hex=
範例
http://wf8266.com/wf8266r/Code?templateName=06_SerialRead.html
UART : WRITE
➤ WF8266R 可透過 GPIO.serialWrite 或是加上 換行 GPIO.serialWriteln 這二個方法將
資料送到其他設備.
➤ 寫入

》文字 : http://wf8266r.local/write?text=

》HEX : http://wf8266r.local/write?hex=
範例
http://wf8266.com/wf8266r/Code?templateName=06_SerialWrite.html
物聯網
基礎課程
單元七 : EVENT 事件系統
WF8266Rhttp://www.wf8266.com
Union U Inc.
事件系統 : 概念
➤ 讓 WF8266R 自主處理一些簡易的控制,不需要長期開啟 APP 或 網頁監控。
監聽 觸發
腳位
時間
元件
腳位
GPIO
溫濕度
DHT11
溫濕度
DHT22
超音波
HSR
流明
BH1750
溫度
DS
PM2.5
G1 G3 G5
腳位
呼叫網址
傳送事件
Self Call
推送 Device Call
事件系統 : 服務
➤ 讀取事件清單

http://wf8266r.local/when
➤ 清空事件清單

http://wf8266r.local/when?=
➤ 將事件清單寫入 ROM

http://wf8266r.local/save
➤ 加入事件

http://wf8266r.local/listen
事件系統 : APP 小幫手
➤ 事件系統參數較多,如果一時無法掌握也沒關係。
➤ 使用物聯雲 APP 快速建立事件行為。
案例 1 : 按下 WF8266R(GPIO0) 白色按鍵後關閉 GPIO5 上的 LED 燈
➤ 這裡有個關念要說明, 在按鍵電路上 WF8266R 的 GPIO 0 4 5 12 13 都是輸出高電位, 所
以判別條件都是以低電位做為依據. 將上述目的轉換為 Event 參數如下:
eventType=1 //預設值可不填
eventValue=0,0 //GPIO0 = 0 時成⽴
trigerType=1 //使⽤腳位觸發動作
trigerValue=5,0 //觸發腳為 GPIO5 輸出低電位
http://wf8266r.local/when/listen?eventValue=0,0&trigerType=1&trigerValue=5,0
案例 2 : 按下 WF8266R(GPIO0) 白色按鍵後關閉 GPIO5 上的 LED 燈, 5秒後再亮起
➤ 現在 LED 燈是熄滅的狀態, 但希望 5 秒後再亮起, 我們可以使用 timer 來控制
eventType=1 //預設值可不填
eventValue=0,0 //GPIO0 = 0 時成⽴
trigerType=1 //使⽤腳位觸發動作
trigerValue=5,1 //觸發腳為 GPIO5 輸出低電位
timer=5000 //成⽴後5秒觸發
http://wf8266r.local/when/listen?eventValue=0,0&trigerType=1&trigerValue=5,1&timer=5000
案例 3 : 按下 WF8266R(GPIO0) 白色按鍵後關閉另一塊 WF8266R GPIO5 上的 LED 燈
➤ 另一塊 WF8266R 的 IP為 192.168.0.21 使用 WebAPIs 方式控制 GPIO, 我們可以這樣使
用 :
➤ 在了解之後, 轉換為事件參數如下 :
http://192.168.0.21/gpio?5=0
eventType=1 //預設值可不填
eventValue=0,0 //GPIO0 = 0 時成⽴
trigerType=2 //使⽤ Request 觸發動作, 位址⼀定要最後做
trigerValue=192.168.0.21:80,gpio?5=0 //觸發另⼀塊 WF8266R 腳為 GPIO5 輸出低電位
http://wf8266r.local/when/listen?eventValue=0,0&trigerType=2&trigerValue=192.168.0.21:80,gpio?5=0
案例 5 : 按下 WF8266R(GPIO0) 白色按鍵後通知網頁端訂閱者 PIN0_CLICK
➤ 事件訂閱會需要使用到 WF8266R.js 的 GPIO 物件. 透過 e.Action 獲得目前通知的事件
名
➤ 在了解之後, 轉換為事件參數如下 :
GPIO.events(function(e){
$("#message").text(e.Action).fadeIn().delay(100).fadeOut();
});
eventType=1 //預設值可不填
eventValue=0,0 //GPIO0 = 0 時成⽴
trigerType=3 //使⽤ WebSocket 通知訂閱者
trigerValue=PIN0_Click //⾃訂事件名稱 傳送到 GPIO.events 裡的 e.Action
http://wf8266r.local/when/listen?eventValue=0,0&trigerType=3&trigerValue=PIN0_Click
案例 6 : 每個小時的 0 分 關閉 LED, 5 分 打開 LED
➤ 時間的監控是使用 eventType=2
➤ 在了解之後, 轉換為事件參數如下 :
eventType=2 //時間監控
eventValue=:0 //時間的分鐘數 = 0 時成⽴
trigerType=1 //使⽤腳位輸出
trigerValue=5,0 //將 GPIO5 輸出低電位
// 0 分時關閉
http://wf8266r.local/when/listen?eventType=2&eventValue=:0&trigerType=1&trigerValue=5,0
// 5 分時打開
http://wf8266r.local/when/listen?eventType=2&eventValue=:5&trigerType=1&trigerValue=5,1
// 晚上 8 點 使⽤ WebSocket 訂閱通知
http://wf8266r.local/when/listen?eventType=2&eventValue=20:0&trigerType=3&trigerValue=PM8
元件
➤ DHT
➤ 超音波
➤ DS18B20
物聯網
元件
DHT11/DHT22
WF8266Rhttp://www.wf8266.com
Union U Inc.
DHT :材料
➤ 型號:DHT11
➤ 濕度 : 20% ~ 95%
➤ 溫度 : 0 ~ 50 度C
➤ 誤差 : 濕度 5% 溫度
2%
➤ VCC : 3~5V
DHT : 配線
DHT : 程式解說
➤ 要透過 DHT11 讀取目前的溫濕度時需要使用 GPIO.dht11 功能, 並指定 DHT11 的
Data 腳接在 WF8266R 的哪個腳位. 這個範例我們將 Data 接在 Pin 14. 所以我希望 5 秒
取一次目前的環境 溫度 和 濕度 時就需要用到 setInterval 幫手.
➤ 除了 DHT11 以為, 同樣可以使用 GPIO.dht 方式自訂感測器型別 11(DHT11),
22(DHT22), 21(DHT21,AM2301)
GPIO.dht(12,11,function(dht){
$("#Humidity").text(dht.Humidity + " %");
$("#C").text(dht.C);
$("#F").text(dht.F);
});
DHT : 實做
➤ 教學網站 : http://wf8266.com/wf8266r/Code?templateName=31_DHT.html
物聯網
元件
超⾳波測距 HSR04
WF8266Rhttp://www.wf8266.com
Union U Inc.
超音波測距 :材料
➤ 型號:HC-SR04
➤ 探測的距離 : 2cm-400cm
➤ 精度 : 0.3 cm
➤ 感應角度 : 15 度
➤ VCC : 5V
DHT : 配線
DHT : 程式解說
➤ 利用 setInterval 這個幫手來每秒鐘取一次目前的距離. 其中會透過 GPIO.distance 這個
功能向 WF8266R 發出請求, 當資料回傳時便會儲存在 data 物件中, 只需透過
data.distance 就可以拿到距離值了. 在使用 distance 時會傳入2個參數, 分別是 Echo 和
Trig, 這個範例我們是將 Echo 接在 Pin 13 所以第一個參數代 13, Trig 則是 12.
setInterval(function(){
GPIO.distance(13,12,function(data){ // Echo, Trig
$("#distanceValue").text(data.distance);
});
},1000); //試著改改時間 1 秒 = 1000
}, false);
DHT : 實做
➤ 教學網站 : http://wf8266.com/wf8266r/Code?templateName=32_Distance.html
物聯網
元件
溫度 DS18B20
WF8266Rhttp://www.wf8266.com
Union U Inc.
DS18B20 溫度感測 :材料
➤ DS 系列是一款數位式高精度的
溫度感測器, 數位化的好處是受
距離影響較低, 使用 One-Wire
方式通訊, 這種方式只需要一個
IO 就可以串接多個感測器。 在
市面上比較常看到2種型式, 一種
是本章介絕的, 另一種是帶金屬
探頭做液態量測的, 都是同一個
晶片。
➤ 規格 : -55度 ~ 125度
DS18B20 : 配線
DS18B20 : 實作
DS18B20 : 配合事件控制繼電器開關
➤ 希望繼電器第1路(GPIO5)在 第1顆溫度 > 32 度時關閉(GPIO5=1), 第1顆溫度 < 30 度時
打開(GPIO5=0), 可以下達以下2組事件定義 :
➤
➤ APP 教學資料

http://wf8266.com/wf8266r/tutorials/35_DS
關閉 http://wf8266r.local/when/listen?
eventType=3&eventValue=4:1:32^2,14:1&trigerType=1&trigerValue=5,1&timer=1000
打開 http://wf8266r.local/when/listen?
eventType=3&eventValue=4:1:30^1,14:1&trigerType=1&trigerValue=5,0&timer=1000
IOT 平台
➤ IFTTT
➤ THINGSPEAK
物聯網
IOT 平台
IFTTT
WF8266Rhttp://www.wf8266.com
Union U Inc.
IFTTT :註冊
➤ 註冊 IFTTT 的好處是他目前完全免費, 並且可以讓 WF8266R 跨界使用更多熱門服務.
IFTTT 簡單來說就是 當 什麼 發生時 就做 什麼 事, 這 2 個 什麼 就是服務, 並且可以交
互訂閱.
IFTTT : EMAIL 通知
➤ 繼電器或腳位觸發時發送 EMail 通知
➤ 教學

http://wf8266.com/wf8266r/tutorials/52_GPIO_MAIL
物聯網
IOT 平台
thingspeak.com
WF8266Rhttp://www.wf8266.com
Union U Inc.
THINGSPEAK :註冊
➤ https://thingspeak.com/
THINGSPEAK : 資料上傳
➤ 將資料存放在雲端平台
➤ 教學

http://wf8266.com/wf8266r/tutorials/0A_WT
WF8266Rhttp://www.wf8266.com
Union U Inc.

More Related Content

What's hot

Deployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnDeployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnahnlabchina
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnahnlabchina
 
Sy03091说明书
Sy03091说明书Sy03091说明书
Sy03091说明书guest8f3690
 
Arduino 與 s4 a
Arduino 與 s4 aArduino 與 s4 a
Arduino 與 s4 aWayne Huang
 
艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗艾鍗科技
 
嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統艾鍗科技
 
智慧家庭 簡報
智慧家庭 簡報智慧家庭 簡報
智慧家庭 簡報艾鍗科技
 
HC 05藍芽模組連線
HC 05藍芽模組連線HC 05藍芽模組連線
HC 05藍芽模組連線Chen-Hung Hu
 
How to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMCHow to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMCBo-Yi Wu
 
MS 7095 - P4MAM2-V2
MS 7095 - P4MAM2-V2MS 7095 - P4MAM2-V2
MS 7095 - P4MAM2-V2JORGE SCHLEE
 
Arduino Yun 物聯網 Lesson 1
Arduino Yun 物聯網 Lesson 1Arduino Yun 物聯網 Lesson 1
Arduino Yun 物聯網 Lesson 1CAVEDU Education
 
S3 cev40getting startv2.1 cn
S3 cev40getting startv2.1 cnS3 cev40getting startv2.1 cn
S3 cev40getting startv2.1 cnVidur Garg
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术jugn
 

What's hot (20)

Deployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnDeployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cn
 
Arduino overview
Arduino overviewArduino overview
Arduino overview
 
Arduino基礎IO控制
Arduino基礎IO控制Arduino基礎IO控制
Arduino基礎IO控制
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cn
 
Sy03091说明书
Sy03091说明书Sy03091说明书
Sy03091说明书
 
Arduino藍牙傳輸應用
Arduino藍牙傳輸應用Arduino藍牙傳輸應用
Arduino藍牙傳輸應用
 
Microbit 1 introduction
Microbit 1 introductionMicrobit 1 introduction
Microbit 1 introduction
 
Arduino 與 s4 a
Arduino 與 s4 aArduino 與 s4 a
Arduino 與 s4 a
 
Arduino導論
Arduino導論Arduino導論
Arduino導論
 
艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗
 
嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統
 
智慧家庭 簡報
智慧家庭 簡報智慧家庭 簡報
智慧家庭 簡報
 
HC 05藍芽模組連線
HC 05藍芽模組連線HC 05藍芽模組連線
HC 05藍芽模組連線
 
How to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMCHow to write Platform Devices and Drivers with FPGA via GPMC
How to write Platform Devices and Drivers with FPGA via GPMC
 
MS 7095 - P4MAM2-V2
MS 7095 - P4MAM2-V2MS 7095 - P4MAM2-V2
MS 7095 - P4MAM2-V2
 
Arduino相關型錄
Arduino相關型錄Arduino相關型錄
Arduino相關型錄
 
Arduino Yun 物聯網 Lesson 1
Arduino Yun 物聯網 Lesson 1Arduino Yun 物聯網 Lesson 1
Arduino Yun 物聯網 Lesson 1
 
Translation
TranslationTranslation
Translation
 
S3 cev40getting startv2.1 cn
S3 cev40getting startv2.1 cnS3 cev40getting startv2.1 cn
S3 cev40getting startv2.1 cn
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术
 

Viewers also liked

由死到生
由死到生由死到生
由死到生Steve Sue
 
Introduction_To_IoT
Introduction_To_IoTIntroduction_To_IoT
Introduction_To_IoTBarry Wang
 
行動廣告演算法探討
行動廣告演算法探討行動廣告演算法探討
行動廣告演算法探討FEG
 
物聯網與工業4.0情境分析
物聯網與工業4.0情境分析物聯網與工業4.0情境分析
物聯網與工業4.0情境分析Kenny Huang Ph.D.
 
粒子系統 Particle system
粒子系統 Particle system粒子系統 Particle system
粒子系統 Particle systemPower Wu
 
開放硬體認知學習指引
開放硬體認知學習指引開放硬體認知學習指引
開放硬體認知學習指引MAKERPRO.cc
 
105 8-17 易智工廠自動化服務系統(richman)
105 8-17 易智工廠自動化服務系統(richman)105 8-17 易智工廠自動化服務系統(richman)
105 8-17 易智工廠自動化服務系統(richman)Rich Man
 
06 io t 聯網商務新創團隊實務分享_icheck
06 io t 聯網商務新創團隊實務分享_icheck06 io t 聯網商務新創團隊實務分享_icheck
06 io t 聯網商務新創團隊實務分享_icheckKuan Chung Chang
 
優網通2016年 - 技術產品與服務
優網通2016年 - 技術產品與服務 優網通2016年 - 技術產品與服務
優網通2016年 - 技術產品與服務 HermesDDS2015
 
iot 聯網商務新創團隊實務分享_瑞德感知
 iot 聯網商務新創團隊實務分享_瑞德感知 iot 聯網商務新創團隊實務分享_瑞德感知
iot 聯網商務新創團隊實務分享_瑞德感知Kuan Chung Chang
 
ICPDAS - 從雲到端 談泓格在物聯網的布局
ICPDAS - 從雲到端 談泓格在物聯網的布局ICPDAS - 從雲到端 談泓格在物聯網的布局
ICPDAS - 從雲到端 談泓格在物聯網的布局ICPDAS
 
Azure Data Lake 簡介
Azure Data Lake 簡介Azure Data Lake 簡介
Azure Data Lake 簡介Herman Wu
 
ICT領域創新模式與商機
ICT領域創新模式與商機ICT領域創新模式與商機
ICT領域創新模式與商機William Shyu
 
前端工程師的告白: 親愛的,開源的物聯網好好玩呀!
前端工程師的告白: 親愛的,開源的物聯網好好玩呀!前端工程師的告白: 親愛的,開源的物聯網好好玩呀!
前端工程師的告白: 親愛的,開源的物聯網好好玩呀!Web Arduino
 
AWS re:Invent Recap 2016 Taiwan part 1
AWS re:Invent Recap 2016 Taiwan part 1AWS re:Invent Recap 2016 Taiwan part 1
AWS re:Invent Recap 2016 Taiwan part 1Amazon Web Services
 
20160721 經濟部:「智慧機械產業行動計畫方案」報告
20160721 經濟部:「智慧機械產業行動計畫方案」報告20160721 經濟部:「智慧機械產業行動計畫方案」報告
20160721 經濟部:「智慧機械產業行動計畫方案」報告R.O.C.Executive Yuan
 
使用 AWS Step Functions 開發 Serverless 服務
使用 AWS Step Functions 開發 Serverless 服務使用 AWS Step Functions 開發 Serverless 服務
使用 AWS Step Functions 開發 Serverless 服務Amazon Web Services
 
Tutorial1: mbed開發快速上手
Tutorial1: mbed開發快速上手Tutorial1: mbed開發快速上手
Tutorial1: mbed開發快速上手艾鍗科技
 

Viewers also liked (20)

由死到生
由死到生由死到生
由死到生
 
Introduction_To_IoT
Introduction_To_IoTIntroduction_To_IoT
Introduction_To_IoT
 
行動廣告演算法探討
行動廣告演算法探討行動廣告演算法探討
行動廣告演算法探討
 
物聯網與工業4.0情境分析
物聯網與工業4.0情境分析物聯網與工業4.0情境分析
物聯網與工業4.0情境分析
 
粒子系統 Particle system
粒子系統 Particle system粒子系統 Particle system
粒子系統 Particle system
 
新興智慧無人載具的創新發展與機會
新興智慧無人載具的創新發展與機會新興智慧無人載具的創新發展與機會
新興智慧無人載具的創新發展與機會
 
開放硬體認知學習指引
開放硬體認知學習指引開放硬體認知學習指引
開放硬體認知學習指引
 
105 8-17 易智工廠自動化服務系統(richman)
105 8-17 易智工廠自動化服務系統(richman)105 8-17 易智工廠自動化服務系統(richman)
105 8-17 易智工廠自動化服務系統(richman)
 
06 io t 聯網商務新創團隊實務分享_icheck
06 io t 聯網商務新創團隊實務分享_icheck06 io t 聯網商務新創團隊實務分享_icheck
06 io t 聯網商務新創團隊實務分享_icheck
 
優網通2016年 - 技術產品與服務
優網通2016年 - 技術產品與服務 優網通2016年 - 技術產品與服務
優網通2016年 - 技術產品與服務
 
iot 聯網商務新創團隊實務分享_瑞德感知
 iot 聯網商務新創團隊實務分享_瑞德感知 iot 聯網商務新創團隊實務分享_瑞德感知
iot 聯網商務新創團隊實務分享_瑞德感知
 
ICPDAS - 從雲到端 談泓格在物聯網的布局
ICPDAS - 從雲到端 談泓格在物聯網的布局ICPDAS - 從雲到端 談泓格在物聯網的布局
ICPDAS - 從雲到端 談泓格在物聯網的布局
 
當科技遇到設計-科技人才布局新洞察
當科技遇到設計-科技人才布局新洞察當科技遇到設計-科技人才布局新洞察
當科技遇到設計-科技人才布局新洞察
 
Azure Data Lake 簡介
Azure Data Lake 簡介Azure Data Lake 簡介
Azure Data Lake 簡介
 
ICT領域創新模式與商機
ICT領域創新模式與商機ICT領域創新模式與商機
ICT領域創新模式與商機
 
前端工程師的告白: 親愛的,開源的物聯網好好玩呀!
前端工程師的告白: 親愛的,開源的物聯網好好玩呀!前端工程師的告白: 親愛的,開源的物聯網好好玩呀!
前端工程師的告白: 親愛的,開源的物聯網好好玩呀!
 
AWS re:Invent Recap 2016 Taiwan part 1
AWS re:Invent Recap 2016 Taiwan part 1AWS re:Invent Recap 2016 Taiwan part 1
AWS re:Invent Recap 2016 Taiwan part 1
 
20160721 經濟部:「智慧機械產業行動計畫方案」報告
20160721 經濟部:「智慧機械產業行動計畫方案」報告20160721 經濟部:「智慧機械產業行動計畫方案」報告
20160721 經濟部:「智慧機械產業行動計畫方案」報告
 
使用 AWS Step Functions 開發 Serverless 服務
使用 AWS Step Functions 開發 Serverless 服務使用 AWS Step Functions 開發 Serverless 服務
使用 AWS Step Functions 開發 Serverless 服務
 
Tutorial1: mbed開發快速上手
Tutorial1: mbed開發快速上手Tutorial1: mbed開發快速上手
Tutorial1: mbed開發快速上手
 

Similar to WF8266R IoT DEV Board 物聯網開發版

LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發Wei-Tsung Su
 
LinkIt Smart 7688 Duo and MCS basics
LinkIt Smart 7688 Duo and MCS basicsLinkIt Smart 7688 Duo and MCS basics
LinkIt Smart 7688 Duo and MCS basicsCAVEDU Education
 
認識 RoBoard 硬體
認識 RoBoard 硬體認識 RoBoard 硬體
認識 RoBoard 硬體roboard
 
181201_CoAP_coding365
181201_CoAP_coding365181201_CoAP_coding365
181201_CoAP_coding365Peter Yi
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)FLASH开发者交流会
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)Shanda innovation institute
 
IoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbed
IoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbedIoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbed
IoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbedBang Min Shiue
 
Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)
Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)
Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)志弘 李
 
Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得roboard
 
路由器配置手册
路由器配置手册路由器配置手册
路由器配置手册cpcfan
 
Arduino Basic
Arduino BasicArduino Basic
Arduino Basicmmiwwcom
 
Corega CG-WLAPGMN Manual
Corega CG-WLAPGMN ManualCorega CG-WLAPGMN Manual
Corega CG-WLAPGMN Manualtag taglife
 
网络基础知识(经典)
网络基础知识(经典)网络基础知识(经典)
网络基础知识(经典)littlesujin
 
基于Innodb开发的最佳实践
基于Innodb开发的最佳实践基于Innodb开发的最佳实践
基于Innodb开发的最佳实践wubx
 
MyPBX_Standard_UserManual_tw
MyPBX_Standard_UserManual_twMyPBX_Standard_UserManual_tw
MyPBX_Standard_UserManual_twdiymyweb
 
藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)
藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)
藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)GoGoPrivateRyan
 
Fiddler使用技巧
Fiddler使用技巧Fiddler使用技巧
Fiddler使用技巧明 李
 
Cogent Ate D100 Presentation
Cogent Ate D100 PresentationCogent Ate D100 Presentation
Cogent Ate D100 PresentationWilliam Huo
 

Similar to WF8266R IoT DEV Board 物聯網開發版 (20)

LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發
 
LinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorialLinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorial
 
LinkIt Smart 7688 Duo and MCS basics
LinkIt Smart 7688 Duo and MCS basicsLinkIt Smart 7688 Duo and MCS basics
LinkIt Smart 7688 Duo and MCS basics
 
認識 RoBoard 硬體
認識 RoBoard 硬體認識 RoBoard 硬體
認識 RoBoard 硬體
 
nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論
 
181201_CoAP_coding365
181201_CoAP_coding365181201_CoAP_coding365
181201_CoAP_coding365
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
 
IoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbed
IoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbedIoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbed
IoT 與 WoT 物聯網裝置實作:使用 Arch Pro 與 mbed
 
Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)
Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)
Fortinet Fortigate 60D 中文安裝手冊 ( Ver 5.2.3)
 
Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得Arduino 底層原始碼解析心得
Arduino 底層原始碼解析心得
 
路由器配置手册
路由器配置手册路由器配置手册
路由器配置手册
 
Arduino Basic
Arduino BasicArduino Basic
Arduino Basic
 
Corega CG-WLAPGMN Manual
Corega CG-WLAPGMN ManualCorega CG-WLAPGMN Manual
Corega CG-WLAPGMN Manual
 
网络基础知识(经典)
网络基础知识(经典)网络基础知识(经典)
网络基础知识(经典)
 
基于Innodb开发的最佳实践
基于Innodb开发的最佳实践基于Innodb开发的最佳实践
基于Innodb开发的最佳实践
 
MyPBX_Standard_UserManual_tw
MyPBX_Standard_UserManual_twMyPBX_Standard_UserManual_tw
MyPBX_Standard_UserManual_tw
 
藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)
藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)
藍色小鋪, 數字管時鐘, 作品進化分享 (by 黃偉峻)
 
Fiddler使用技巧
Fiddler使用技巧Fiddler使用技巧
Fiddler使用技巧
 
Cogent Ate D100 Presentation
Cogent Ate D100 PresentationCogent Ate D100 Presentation
Cogent Ate D100 Presentation
 

WF8266R IoT DEV Board 物聯網開發版

  • 2. AGENDA ➤ WF8266R.js 介紹 ➤ 環境及連線 ➤ 基礎課程 ➤ 單元⼀ : 連上網路 ➤ 單元⼆ : 點亮 LED ➤ 單元三 : 亮度調整 ➤ 單元四 : PWM 調⾊ ➤ 單元五 : 閃亮 LED ➤ 單元六 : 串列 Serial ➤ 單元七 : 事件 Event
  • 3. AGENDA ➤ 元件 ➤ DHT ➤ 超⾳波 ➤ DS18B20 ➤ IoT ➤ ThingSpeak ➤ IFTTT
  • 5. 材料準備 WF8266R DHT11 DS18B20 HSR04 LED RGB LED SW520D麵包板 Relay 公杜邦線
  • 6. 基礎課程 ➤ 單元一 : 連上網路 ➤ 單元二 : 點亮 LED ➤ 單元三 : 亮度調整 ➤ 單元四 : PWM 調色 ➤ 單元五 : 閃亮 LED ➤ 單元六 : 串列 Serial ➤ 單元七 : 事件 Event
  • 8. 物聯雲 APP : 手機連接WF8266R AP ➤ 手機 Wi-Fi -> UNU-WF8266R-XXXX (XXXX為SN後4碼) ➤ 透過 APP 將 WF8266R 連上可連通 Internet 的AP基地台 UNU-WF8266R-XXXX Wi-Fi Access Point
  • 9. 物聯雲 APP : 加入裝置
  • 10. 物聯雲 APP : 查看設備IP ➤ 確認手機可連上 Internet ,打開物聯雲 APP 首頁的設備清單確定 IP 位址
  • 11. 物聯雲 APP : 網路連接概念 AP 192.168.4.1 Local x.x.x.x IP x.x.x.x Internet WF8266Rhttp://www.wf8266.com Union U Inc. MQTT Internet AP
  • 12. 物聯網 基礎課程 單元⼆ : 點亮 LED WF8266Rhttp://www.wf8266.com Union U Inc.
  • 13. 點亮 LED :材料 ➤ 透過 LED 的亮滅來學習 GPIO 腳位輸出 高電位 和 低電位. 就像水往低處流, 當我們控 制 PIN5 腳輸出高電位時, 電流由 LED 正腳位(長;Pin5)流向負腳位(短;Gnd) LED 便會 亮起; 反之, 當 PIN5 輸出為低電位時, LED 二腳間是相等的低電位, 不會有流動產生, 所 以 LED 自然就不會亮.
  • 14. 點亮 LED : 配線 ➤ LED 長的接 PIN5 短的接 GND ➤ 在 WF8266R 開發板中的下面有6的小圓孔, 由左到右分別是 GND 5 4 12 13 5V
  • 15. 點亮 LED : 程式解說 ➤ API 類型 : WebComponent ➤ 目的 : 初學程式的人也可以輕鬆上手, 我們將 Web API 包裝成 <wf8266r-button> 標 籤, 只需要透過 標籤(TAG) 的定義就能使用. 而且可在任何裝置上瀏覽自行設計的控制 頁. <wf8266r-button type="腳位類型" pin="編號" value="值">說明</wf8266r-button> type gpio : 數位輸出 pwm : 數位類比輸出 read : 讀取腳位 adc : 類比輸入
  • 16. 點亮 LED : 打開和關閉 LED 燈 ➤ 打開 LED,將 5 號腳位設為 1 ➤ 關閉LED,將5號腳位設為 0 ➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/02_Light <wf8266r-button type="gpio" pin="5" value="1">打開 LED</wf8266r-button> <wf8266r-button type="gpio" pin="5" value="0">關閉</wf8266r-button>
  • 17. 物聯網 基礎課程 單元三 : 亮度調整 PWM WF8266Rhttp://www.wf8266.com Union U Inc.
  • 18. 亮度調整 PWM:材料 ➤ 上個單元我們學會了如何控制電的流動, 這個單元要介紹如何控制電的流量, 就和開水 龍頭相同, 想要水大些你會把開關開大. 同樣的原理, 透過 PWM 可以控制這個流量, 當 PWM = 0 時最小, PWM = 1023 時最大.
  • 19. 亮度調整 PWM : 配線 ➤ LED 長的接 PIN5 短的接 GND ➤ 在 WF8266R 開發板中的下面有6的小圓孔, 由左到右分別是 GND 5 4 12 13 5V
  • 20. 亮度調整 PWM : 程式解說 ➤ API 類型 : WebComponent ➤ 目的 : 初學程式的人也可以輕鬆上手, 我們將 Web API 包裝成 <wf8266r-button> 標 籤, 只需要透過 標籤(TAG) 的定義就能使用. 而且可在任何裝置上瀏覽自行設計的控制 頁. <wf8266r-button type="腳位類型" pin="編號" value="值">說明</wf8266r-button> type gpio : 數位輸出 pwm : 數位類比輸出 read : 讀取腳位 adc : 類比輸入
  • 21. 亮度調整 PWM : 調整 LED 光的亮度 ➤ 調整 LED,將 5 號腳位設為 0 ∼ 1023 ➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/03_LightPWM <wf8266r-button type="pwm" pin="5" value="0">LED 亮度調整</wf8266r-button>
  • 22. 物聯網 基礎課程 單元四 : PWM 調⾊ WF8266Rhttp://www.wf8266.com Union U Inc.
  • 23. 調色:材料 ➤ 上個單元我們學會了控制流量, 這個單元我們把流量轉換為 RGB 調色控制, 就像 紅+綠 = 黃 ➤ RGB LED 燈的腳位由圖片上左到右分別是 Blue(藍) Green(綠) Common(共陰極) Red(紅)
  • 24. 調色 : 配線 ➤ LED 最長的接 GND 短的由左到右接 12(B) 4(G) 5(R) ➤ 這顆 RGB LED 是共陰極的規格, 所以最長的腳位是接 GND, 因此 GPIO 5 4 12 需要輸 出高電位才可將LED點亮.
  • 25. 調色 : 程式解說 ➤ API 類型 : WebComponent ➤ 目的 : 初學程式的人也可以輕鬆上手, 我們將 Web API 包裝成 <wf8266r-button> 標 籤, 只需要透過 標籤(TAG) 的定義就能使用. 而且可在任何裝置上瀏覽自行設計的控制 頁. <wf8266r-button type="腳位類型" pin="編號" value="值">說明</wf8266r-button> type gpio : 數位輸出 pwm : 數位類比輸出 read : 讀取腳位 adc : 類比輸入
  • 26. 調色 : 調整 LED 光的色度 ➤ 設定3個腳位分別控制 R G B 3 色的輸出量 ➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/04_LightColor <wf8266r-button id="ledR" type="pwm" pin="5" value="0">LED 紅⾊</wf8266r-button> <wf8266r-button id="ledG" type="pwm" pin="4" value="0">LED 綠⾊</wf8266r-button> <wf8266r-button id="ledB" type="pwm" pin="12" value="0">LED 藍⾊</wf8266r-button>
  • 27. 物聯網 基礎課程 單元五 : 閃亮 LED WF8266Rhttp://www.wf8266.com Union U Inc.
  • 28. 閃亮 LED:材料 ➤ LED x 1 ➤ WF8266R x 1 ➤ 之前的單元都學會了嗎, 接下來要讓 LED 燈閃動起來, 這個需要一點點程式幫忙. 這個 單元你將學會如何透過程式來隨心控制 GPIO 而不必限制在前面的物件功能.
  • 29. 閃亮 LED : 配線
  • 30. 閃亮 LED : 程式解說 ➤ API 類型 : WebComponent ➤ 目的 : 學習 GPIO 物件的使用和操作 document.addEventListener('wf8266r-ready', function (e) { ... }, false); setInterval(function(){ 要做的事情寫在這裡 },毫秒); GPIO.pin(5,pin5Value,function(){}); //將⽬前存在 pin5Value 裡的⾼或低電位送到 PIN5 腳 },1000);
  • 31. 閃亮 LED : 開始閃動 ➤ 1秒要換一個狀態, 需要一個變數, 名字叫 pin5Value 存放 GPIO5 腳的電位值 ➤ 然後要判斷 如果是高電位 就把 pin5Value 設成低, 反之設為高. 如此就會有 高低高低 ... 一直這樣變化下去, 而這個時間就是 1000 毫秒 也就是 1 秒鐘. ➤ 教學網站 : http://wf8266.com/wf8266r/tutorials/05_LightShiny
  • 33. UART : 概念 ➤ 序列(串口) 傳輸 ➤ WF8266R 可以透過 Tx(該裝置的輸出訊號腳位) 和 Rx(該裝置的接收訊號腳位) 二腳和 外部序列裝置進行資料互傳 Device 1 Device 2 Tx Rx Rx Tx BAUD
  • 34. UART : 材料 ➤ USB 轉 TTL 晶片 FTDI:用來和電腦溝通 ➤ WF8266R
  • 35. UART : 調整速度 BAUD ➤ WF8266R 預設的傳輸率是 115200 ➤ 輸入 wf8266r.local 可查看 WF8266R 的內部資料 ➤ 更改速率
 http://wf8266r.local/serial?baud=9600 範例 http://wf8266.com/wf8266r/Code?templateName=06_SerialBaud.html
  • 36. UART : READ ➤ WF8266R 目前配置了 255 個字元讀取緩衝區, 所以一次發送的最大長度為 255. 這裡示 範由電腦端發送 Hello WF8266R 字串, 並透過 GPIO 物件的 serialRead 讀取. ➤ 讀取
 》文字 : http://wf8266r.local/serial/read?text=
 》HEX : http://wf8266r.local/serial/read?hex= 範例 http://wf8266.com/wf8266r/Code?templateName=06_SerialRead.html
  • 37. UART : WRITE ➤ WF8266R 可透過 GPIO.serialWrite 或是加上 換行 GPIO.serialWriteln 這二個方法將 資料送到其他設備. ➤ 寫入
 》文字 : http://wf8266r.local/write?text=
 》HEX : http://wf8266r.local/write?hex= 範例 http://wf8266.com/wf8266r/Code?templateName=06_SerialWrite.html
  • 38. 物聯網 基礎課程 單元七 : EVENT 事件系統 WF8266Rhttp://www.wf8266.com Union U Inc.
  • 39. 事件系統 : 概念 ➤ 讓 WF8266R 自主處理一些簡易的控制,不需要長期開啟 APP 或 網頁監控。 監聽 觸發 腳位 時間 元件 腳位 GPIO 溫濕度 DHT11 溫濕度 DHT22 超音波 HSR 流明 BH1750 溫度 DS PM2.5 G1 G3 G5 腳位 呼叫網址 傳送事件 Self Call 推送 Device Call
  • 40. 事件系統 : 服務 ➤ 讀取事件清單
 http://wf8266r.local/when ➤ 清空事件清單
 http://wf8266r.local/when?= ➤ 將事件清單寫入 ROM
 http://wf8266r.local/save ➤ 加入事件
 http://wf8266r.local/listen
  • 41. 事件系統 : APP 小幫手 ➤ 事件系統參數較多,如果一時無法掌握也沒關係。 ➤ 使用物聯雲 APP 快速建立事件行為。
  • 42. 案例 1 : 按下 WF8266R(GPIO0) 白色按鍵後關閉 GPIO5 上的 LED 燈 ➤ 這裡有個關念要說明, 在按鍵電路上 WF8266R 的 GPIO 0 4 5 12 13 都是輸出高電位, 所 以判別條件都是以低電位做為依據. 將上述目的轉換為 Event 參數如下: eventType=1 //預設值可不填 eventValue=0,0 //GPIO0 = 0 時成⽴ trigerType=1 //使⽤腳位觸發動作 trigerValue=5,0 //觸發腳為 GPIO5 輸出低電位 http://wf8266r.local/when/listen?eventValue=0,0&trigerType=1&trigerValue=5,0
  • 43. 案例 2 : 按下 WF8266R(GPIO0) 白色按鍵後關閉 GPIO5 上的 LED 燈, 5秒後再亮起 ➤ 現在 LED 燈是熄滅的狀態, 但希望 5 秒後再亮起, 我們可以使用 timer 來控制 eventType=1 //預設值可不填 eventValue=0,0 //GPIO0 = 0 時成⽴ trigerType=1 //使⽤腳位觸發動作 trigerValue=5,1 //觸發腳為 GPIO5 輸出低電位 timer=5000 //成⽴後5秒觸發 http://wf8266r.local/when/listen?eventValue=0,0&trigerType=1&trigerValue=5,1&timer=5000
  • 44. 案例 3 : 按下 WF8266R(GPIO0) 白色按鍵後關閉另一塊 WF8266R GPIO5 上的 LED 燈 ➤ 另一塊 WF8266R 的 IP為 192.168.0.21 使用 WebAPIs 方式控制 GPIO, 我們可以這樣使 用 : ➤ 在了解之後, 轉換為事件參數如下 : http://192.168.0.21/gpio?5=0 eventType=1 //預設值可不填 eventValue=0,0 //GPIO0 = 0 時成⽴ trigerType=2 //使⽤ Request 觸發動作, 位址⼀定要最後做 trigerValue=192.168.0.21:80,gpio?5=0 //觸發另⼀塊 WF8266R 腳為 GPIO5 輸出低電位 http://wf8266r.local/when/listen?eventValue=0,0&trigerType=2&trigerValue=192.168.0.21:80,gpio?5=0
  • 45. 案例 5 : 按下 WF8266R(GPIO0) 白色按鍵後通知網頁端訂閱者 PIN0_CLICK ➤ 事件訂閱會需要使用到 WF8266R.js 的 GPIO 物件. 透過 e.Action 獲得目前通知的事件 名 ➤ 在了解之後, 轉換為事件參數如下 : GPIO.events(function(e){ $("#message").text(e.Action).fadeIn().delay(100).fadeOut(); }); eventType=1 //預設值可不填 eventValue=0,0 //GPIO0 = 0 時成⽴ trigerType=3 //使⽤ WebSocket 通知訂閱者 trigerValue=PIN0_Click //⾃訂事件名稱 傳送到 GPIO.events 裡的 e.Action http://wf8266r.local/when/listen?eventValue=0,0&trigerType=3&trigerValue=PIN0_Click
  • 46. 案例 6 : 每個小時的 0 分 關閉 LED, 5 分 打開 LED ➤ 時間的監控是使用 eventType=2 ➤ 在了解之後, 轉換為事件參數如下 : eventType=2 //時間監控 eventValue=:0 //時間的分鐘數 = 0 時成⽴ trigerType=1 //使⽤腳位輸出 trigerValue=5,0 //將 GPIO5 輸出低電位 // 0 分時關閉 http://wf8266r.local/when/listen?eventType=2&eventValue=:0&trigerType=1&trigerValue=5,0 // 5 分時打開 http://wf8266r.local/when/listen?eventType=2&eventValue=:5&trigerType=1&trigerValue=5,1 // 晚上 8 點 使⽤ WebSocket 訂閱通知 http://wf8266r.local/when/listen?eventType=2&eventValue=20:0&trigerType=3&trigerValue=PM8
  • 49. DHT :材料 ➤ 型號:DHT11 ➤ 濕度 : 20% ~ 95% ➤ 溫度 : 0 ~ 50 度C ➤ 誤差 : 濕度 5% 溫度 2% ➤ VCC : 3~5V
  • 51. DHT : 程式解說 ➤ 要透過 DHT11 讀取目前的溫濕度時需要使用 GPIO.dht11 功能, 並指定 DHT11 的 Data 腳接在 WF8266R 的哪個腳位. 這個範例我們將 Data 接在 Pin 14. 所以我希望 5 秒 取一次目前的環境 溫度 和 濕度 時就需要用到 setInterval 幫手. ➤ 除了 DHT11 以為, 同樣可以使用 GPIO.dht 方式自訂感測器型別 11(DHT11), 22(DHT22), 21(DHT21,AM2301) GPIO.dht(12,11,function(dht){ $("#Humidity").text(dht.Humidity + " %"); $("#C").text(dht.C); $("#F").text(dht.F); });
  • 52. DHT : 實做 ➤ 教學網站 : http://wf8266.com/wf8266r/Code?templateName=31_DHT.html
  • 54. 超音波測距 :材料 ➤ 型號:HC-SR04 ➤ 探測的距離 : 2cm-400cm ➤ 精度 : 0.3 cm ➤ 感應角度 : 15 度 ➤ VCC : 5V
  • 56. DHT : 程式解說 ➤ 利用 setInterval 這個幫手來每秒鐘取一次目前的距離. 其中會透過 GPIO.distance 這個 功能向 WF8266R 發出請求, 當資料回傳時便會儲存在 data 物件中, 只需透過 data.distance 就可以拿到距離值了. 在使用 distance 時會傳入2個參數, 分別是 Echo 和 Trig, 這個範例我們是將 Echo 接在 Pin 13 所以第一個參數代 13, Trig 則是 12. setInterval(function(){ GPIO.distance(13,12,function(data){ // Echo, Trig $("#distanceValue").text(data.distance); }); },1000); //試著改改時間 1 秒 = 1000 }, false);
  • 57. DHT : 實做 ➤ 教學網站 : http://wf8266.com/wf8266r/Code?templateName=32_Distance.html
  • 59. DS18B20 溫度感測 :材料 ➤ DS 系列是一款數位式高精度的 溫度感測器, 數位化的好處是受 距離影響較低, 使用 One-Wire 方式通訊, 這種方式只需要一個 IO 就可以串接多個感測器。 在 市面上比較常看到2種型式, 一種 是本章介絕的, 另一種是帶金屬 探頭做液態量測的, 都是同一個 晶片。 ➤ 規格 : -55度 ~ 125度
  • 62. DS18B20 : 配合事件控制繼電器開關 ➤ 希望繼電器第1路(GPIO5)在 第1顆溫度 > 32 度時關閉(GPIO5=1), 第1顆溫度 < 30 度時 打開(GPIO5=0), 可以下達以下2組事件定義 : ➤ ➤ APP 教學資料
 http://wf8266.com/wf8266r/tutorials/35_DS 關閉 http://wf8266r.local/when/listen? eventType=3&eventValue=4:1:32^2,14:1&trigerType=1&trigerValue=5,1&timer=1000 打開 http://wf8266r.local/when/listen? eventType=3&eventValue=4:1:30^1,14:1&trigerType=1&trigerValue=5,0&timer=1000
  • 65. IFTTT :註冊 ➤ 註冊 IFTTT 的好處是他目前完全免費, 並且可以讓 WF8266R 跨界使用更多熱門服務. IFTTT 簡單來說就是 當 什麼 發生時 就做 什麼 事, 這 2 個 什麼 就是服務, 並且可以交 互訂閱.
  • 66. IFTTT : EMAIL 通知 ➤ 繼電器或腳位觸發時發送 EMail 通知 ➤ 教學
 http://wf8266.com/wf8266r/tutorials/52_GPIO_MAIL
  • 69. THINGSPEAK : 資料上傳 ➤ 將資料存放在雲端平台 ➤ 教學
 http://wf8266.com/wf8266r/tutorials/0A_WT