文檔教程06 network_第1頁(yè)
文檔教程06 network_第2頁(yè)
文檔教程06 network_第3頁(yè)
文檔教程06 network_第4頁(yè)
文檔教程06 network_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、Micropython ESP8266 TPYBoard V202之Network1. 實(shí)驗(yàn)?zāi)康?1. 學(xué)習(xí)在PC機(jī)系統(tǒng)中網(wǎng)絡(luò)(network)的使用方法。 2. 學(xué)習(xí)TPYBoard V202連接網(wǎng)絡(luò)的使用。2.準(zhǔn)備工作 1.所需元器件 TPYBoard V202一塊 數(shù)據(jù)線一條 電腦 1臺(tái)(本次實(shí)驗(yàn)以win7為例) 2.所需軟件 ESPlorer 下載地址:/download/tool3. Network庫(kù)的使用方法 網(wǎng)絡(luò)模塊用于配置WiFi連接。有兩個(gè)WiFi接口,一個(gè)用于站(當(dāng)ESP8266連接到路由器時(shí)),一個(gè)用于接入點(diǎn)(其他設(shè)備連接到ES

2、P8266)。使用以下命令創(chuàng)建這些對(duì)象的實(shí)例:1.當(dāng)ESP8266連接到路由器時(shí):import networkwlan = network.WLAN(network.STA_IF) # 創(chuàng)建一個(gè)站(當(dāng)ESP8266連接到路由器時(shí))接口wlan.active(True) # 激活接口wlan.scan() # 掃描接入點(diǎn)wlan.isconnected() # 檢查站點(diǎn)是否連接到路由器wlan.connect(essid, password) # 連接到路由器wlan.config(mac) # 獲取接口的MAC地址wlan.ifconfig() # 獲取接口的IP / netmask / gw

3、 / DNS地址檢查是否連接是否建立: wlan.isconnected()檢查接口是否活動(dòng):wlan.active()檢查接口的網(wǎng)絡(luò)設(shè)置:wlan.ifconfig()2.當(dāng)其他設(shè)備連接到ESP8266時(shí):import networkap = network.WLAN(network.AP_IF) 創(chuàng)建接入點(diǎn)接口ap.active(True) # 激活接口ap.config(essid=ESP-AP) # 設(shè)計(jì)接入點(diǎn)的ESSID這里是可以運(yùn)行(放在你的boot.py文件中)自動(dòng)連接到你網(wǎng)絡(luò)的方法:def do_connect(): import network sta_if = networ

4、k.WLAN(network.STA_IF) if not sta_if.isconnected(): print(connecting to network.) sta_if.active(True) sta_if.connect(, ) while not sta_if.isconnected(): pass print(network config:, sta_if.ifconfig()向指定地址發(fā)送數(shù)據(jù)的方法:def http_get(url): _, _, host, path = url.split(/, 3) addr = socket.getaddrinfo(host, 80)

5、0-1 s = socket.socket() s.connect(addr) s.send(bytes(GET /%s HTTP/1.0rnHost: %srnrn % (path, host), utf8) while True: data = s.recv(100) if data: print(str(data, utf8), end=) else: break s.close() 4. 實(shí)驗(yàn)一(1)實(shí)驗(yàn)要求 當(dāng)TPYBoard v202未連接到網(wǎng)絡(luò)時(shí),led亮起警示,當(dāng)連接成功后,熄滅。(2)程序代碼 import networkfrom machine import Pinsta_

6、if = network.WLAN(network.STA_IF)p2 = Pin(2, Pin.OUT)#我們?cè)谶@里把接入點(diǎn)接口禁用,方便觀看實(shí)驗(yàn)效果,非實(shí)驗(yàn)可以去掉sta_if.active(False)if not sta_if.isconnected(): p2.low() print(connecting to network.) sta_if.active(True) sta_if.connect(TurnipSmart, turnip2016) while not sta_if.isconnected(): passif sta_if.isconnected(): print(c

7、onnect success) p2.high() print(network config:, sta_if.ifconfig() (三)實(shí)驗(yàn)效果 當(dāng)我們復(fù)位,把程序?qū)戇M(jìn)去的時(shí)候會(huì)看到TPYBoard V202板載的藍(lán)燈亮起來(lái),當(dāng)連接成功后藍(lán)燈熄滅,控制臺(tái)打印connect success。5. 實(shí)驗(yàn)二(1)實(shí)驗(yàn)要求 當(dāng)TPYBoard v202連接網(wǎng)絡(luò)成功后,通過(guò)get方式向網(wǎng)址/esp8266/test.php?val=A發(fā)送字符A,網(wǎng)站接到后,頁(yè)面顯示begin,并返回bigin,TPYBoard V202收到bigin,LED快閃2次。(2

8、)程序代碼 import networkfrom machine import Pinimport socketimport urllibimport timedef led_state(): p2 = Pin(2, Pin.OUT) p2.value(0) time.sleep_ms(500) p2.value(1) time.sleep_ms(500) p2.value(0) time.sleep_ms(500) p2.value(1)def do_connect(): sta_if = network.WLAN(network.STA_IF) p2 = Pin(2, Pin.OUT) s

9、ta_if.active(False) if not sta_if.isconnected(): p2.low() print(connecting to network.) sta_if.active(True) sta_if.connect(TurnipSmart, turnip2016) while not sta_if.isconnected(): pass if sta_if.isconnected(): print(connect success) p2.high() print(network config:, sta_if.ifconfig()def http_get(url)

10、: _, _, host, path = url.split(/, 3) addr = socket.getaddrinfo(host, 80)0-1 s = socket.socket() s.connect(addr) s.send(bytes(GET /%s HTTP/1.0rnHost: %srnrn % (path, host), utf8) while True: data = s.recv(50) if data: recive=str(data, utf8) #print(recive:,recive) print(str(data, utf8), end=) if(recive.find(begin)-1): led_state() else: break s.close()do_connect()http_get(/esp82

溫馨提示

  • 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)論