B站視頻演示:https://www.bilibili.com/video/BV11t4y1m79r/?vd_source=089e9c9189991f80be4b4886098da65b#reply151108474896
代碼main.py,通過(guò)網(wǎng)頁(yè)把它傳入ESP8266 micropython固件中即可。如何傳輸自行查找資料吧。本人也忘記如何傳輸了。本文只是為了記錄一下曾經(jīng)寫(xiě)過(guò)的代碼案例。方便以后查找。
import usocket #導(dǎo)入socket包
import machine
import network
import time
LED=machine.Pin(2, machine.Pin.OUT)
LED.value(1)
WIFI_flag=1;
is_flag=0
ssid="CMCC-lin-----"
pwd="linjia@15120613059"
ap_ip=""
st_ip=""
while True:
if WIFI_flag == 1:
ap = network.WLAN(network.AP_IF)
ap.active(True)
ap.config(essid='ESP8266_WIFI')
ap.config(authmode=0)
print("ESP8266_IP:",ap.ifconfig()[0]+",Port:23")#獲取IP信息
s=usocket.socket()
s.bind(('',23)) #監(jiān)聽(tīng)本地端口23
s.listen(5)
'''
if WIFI_flag == 0:
#連接熱點(diǎn)WIFI
sta_if=network.WLAN(network.STA_IF)
sta_if.active(True)
#sta_if.scan()# 掃描當(dāng)前可連接的WiFi名稱(chēng)
sta_if.connect(ssid,pwd) # 設(shè)置要連接WiFi的名稱(chēng)和連接密碼
print("SSID:",ssid+"nPassword:",pwd)
print("Linking WIFI...")
while True:
if sta_if.isconnected()==True:
break
else :
time.sleep(10)
print("Linking WIFI error.Please reset device and input right SSID or PAWD again!n")
print("ESP8266 link WIFI status:",sta_if.isconnected())#檢查是否連接成功
print("ESP8266_IP:",sta_if.ifconfig()[0]+",Port:80")#獲取IP信息
s=usocket.socket()
s.bind(('',80)) #監(jiān)聽(tīng)本地端口23
s.listen(5)
'''
print("waiting...")
c,a=s.accept()
print("one device link!")
c.send("Hi,Welcome micropython of ESP8266n")
while True:
client_data=c.recv(1024)#接收到的是字節(jié)
print("client_data:",client_data)
if client_data==b"":
#s.listen(5)
print("waiting...")
c,a=s.accept()
print("one device link!")
c.send("Hi,Welcome micropython of ESP8266n")
print("client:",client_data) #輸出收到的消息
if client_data==b"ON":#判斷字節(jié)
LED.value(0)#開(kāi)燈
print("+++ LED OPEN +++")
c.send("+++ LED OPEN +++n")
if client_data==b"OFF":#判斷字節(jié),字符串前面加b為強(qiáng)制類(lèi)型轉(zhuǎn)換為字節(jié)
LED.value(1)#關(guān)燈
print("--- LED CLOSE ---")
c.send("Hi,Welcome ESP8266 micropythonn")
c.send("--- LED CLOSE ---n")
if client_data[0:5]==b"SSID:": #判斷 要連接的WIFI 名
ssid=client_data[5:]
ssid=bytes.decode(ssid)#字節(jié)轉(zhuǎn)換成字符串
print("ssid:",ssid)
if client_data[0:5]==b"PAWD:": #判斷WIFI密碼
pwd=client_data[5:]
pwd=bytes.decode(pwd)#字節(jié)轉(zhuǎn)換成字符串
print("password:",pwd)
if client_data==b"CXIP":
app = network.WLAN(network.AP_IF)
sta = network.WLAN(network.STA_IF)
print("STA_IP:",app.ifconfig()[0]+",Port:23n")
print("AP_IP:",sta.ifconfig()[0]+",Port:23n")
c.send("nPort:23,STA_IP:")
c.send(sta.ifconfig()[0])
c.send("nPort:23,AP_IP:")
c.send(app.ifconfig()[0])
if client_data==b"WIFI_AP":
WIFI_flag=1
print("--- WIFI_AP ---")
for i in range(1):
LED.value(0)#開(kāi)燈
time.sleep(0.5)
LED.value(1)#關(guān)燈
time.sleep(0.5)
ap = network.WLAN(network.AP_IF)
ap.active(True)
ap.config(essid='ESP8266_WIFI')
ap.config(authmode=0)
print("ESP8266_IP:",ap.ifconfig()[0]+",Port:23")#獲取IP信息
print("waiting...")
for i in range(2):
LED.value(0)#開(kāi)燈
time.sleep(0.5)
LED.value(1)#關(guān)燈
time.sleep(0.5)
c,a=s.accept()
print("one device link!")
c.send("Hi,Welcome micropython of ESP8266n")
for i in range(3):
LED.value(0)#開(kāi)燈
time.sleep(0.5)
LED.value(1)#關(guān)燈
time.sleep(0.5)
if client_data==b"WIFI_ST":
WIFI_flag=0
print("--- WIFI_ST ---")
for i in range(1):
LED.value(0)#開(kāi)燈
time.sleep(0.5)
LED.value(1)#關(guān)燈
time.sleep(0.5)
#連接熱點(diǎn)WIFI
sta_if=network.WLAN(network.STA_IF)
sta_if.active(True)
#sta_if.scan()# 掃描當(dāng)前可連接的WiFi名稱(chēng)
sta_if.connect(ssid,pwd) # 設(shè)置要連接WiFi的名稱(chēng)和連接密碼
print("SSID:",ssid+"nPassword:",pwd)
print("Linking WIFI...")
while True:
if sta_if.isconnected()==True:
is_flag=1
break
else :
time.sleep(10)
print("Linking WIFI error.Please reset device and input right SSID or PAWD again!n")
print("ESP8266 link WIFI status:",sta_if.isconnected())#檢查是否連接成功
print("ESP8266_IP:",sta_if.ifconfig()[0]+",Port:23")#獲取IP信息
print("waiting...")
for i in range(2):
LED.value(0)#開(kāi)燈
time.sleep(0.5)
LED.value(1)#關(guān)燈
time.sleep(0.5)
c,a=s.accept()
print("one device link!")
c.send("Hi,Welcome micropython of ESP8266n")
for i in range(3):
LED.value(0)#開(kāi)燈
time.sleep(0.5)
LED.value(1)#關(guān)燈
time.sleep(0.5)
-
led
+關(guān)注
關(guān)注
242文章
23362瀏覽量
663224 -
TCPIP
+關(guān)注
關(guān)注
1文章
56瀏覽量
22797 -
ESP8266
+關(guān)注
關(guān)注
50文章
962瀏覽量
45337 -
Micropython
+關(guān)注
關(guān)注
0文章
68瀏覽量
4788
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
CC2530采用ESP8266與手機(jī)APP通信
esp8266,tcp通信實(shí)例詳解
![<b class='flag-5'>esp8266</b>,<b class='flag-5'>tcp</b>通信實(shí)例詳解](https://file.elecfans.com/web1/M00/EA/5B/pIYBAGBw_UaAADldAABZGBpEW74537.jpg)
如何使用ESP8266和Android控制繼電器
![如何使用<b class='flag-5'>ESP8266</b>和Android<b class='flag-5'>控制</b>繼電器](https://file.elecfans.com/web1/M00/9E/8E/o4YBAF06t8SADTcOAAIrmS-B87w994.jpg)
怎樣使用ESP8266 Flasher和Programmer燒寫(xiě)ESP8266 AT固件
普中WIFI ESP8266模塊的詳細(xì)資料合集免費(fèi)下載
![普中<b class='flag-5'>WIFI</b> <b class='flag-5'>ESP8266</b>模塊的詳細(xì)資料合集免費(fèi)下載](https://file.elecfans.com/web1/M00/B4/D8/o4YBAF5eCdWAPAlTAACOdXXZgxM765.png)
ESP8266 wifi模塊開(kāi)發(fā)匯總
![<b class='flag-5'>ESP8266</b> <b class='flag-5'>wifi</b>模塊開(kāi)發(fā)匯總](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32-ESP8266wifi模塊實(shí)現(xiàn)
![STM32-<b class='flag-5'>ESP8266wifi</b>模塊<b class='flag-5'>實(shí)現(xiàn)</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
ESP8266之硬件機(jī)理
![<b class='flag-5'>ESP8266</b>之硬件機(jī)理](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用ESP8266-01制作WIFI遙控小車(chē)(一)
![使用<b class='flag-5'>ESP8266</b>-01制作<b class='flag-5'>WIFI</b>遙控小車(chē)(一)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用ESP8266 wifi DIY控制燈
![使用<b class='flag-5'>ESP8266</b> <b class='flag-5'>wifi</b> DIY<b class='flag-5'>控制</b>燈](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用ESP8266 Wifi模塊和iPhone/Android控制LED
![使用<b class='flag-5'>ESP8266</b> <b class='flag-5'>Wifi</b>模塊和iPhone/Android<b class='flag-5'>控制</b><b class='flag-5'>LED</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
基于ESP8266的WiFi車(chē)
ESP8266芯片WIFI模塊接入云平臺(tái)的方法教程
![<b class='flag-5'>ESP8266</b>芯片<b class='flag-5'>WIFI</b>模塊接入云平臺(tái)的方法教程](https://file.elecfans.com//web2/M00/99/88/poYBAGQZQV-Aez1QAACbp_ffK_c465.jpg)
評(píng)論