掌控板制作可访问网页
本帖最后由 yywudao 于 2019-6-25 21:41 编辑掌控板主芯片ESP32自带WiFi功能,利用micropython的socket模块,可以进行TCP通讯。
掌控板连接已知的WiFi,分配到一个ip地址,用浏览器进入这个ip地址,可以打开一个预制在主程序里的网页。
import socket
import network, time
from mpython import *
SSID = "输入WiFi名称"
PASSWORD = "输入密码"
mywifi = wifi()
mywifi.connectWiFi(SSID, PASSWORD)
# 制作网页内容
CONTENT = """<!DOCTYPE HTML>
<html>
<head><meta charset = "utf-8">
<title>掌控Demo</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
"""
addr_info = socket.getaddrinfo(mywifi.sta.ifconfig(), 80)
print("Bind address info: ", addr_info)
addr = addr_info[-1]
# 上面的代码可组合为:
# addr = socket.getaddrinfo(mywifi.sta.ifconfig(), 80)[-1]
# 提取掌控板分配到的ip地址,端口号定义为80
s = socket.socket()
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind(addr) # 绑定ip和端口号
s.listen(5)# 开启监听并设置最大连接数
print("Listening, connect to http://%s:80/" %addr)
oled.fill(0)
oled.DispChar('Connect on', 0, 0)
oled.DispChar('http://%s'%addr, 0, 16)# 掌控板显示分配到的ip地址
oled.show()
while True:
res = s.accept()
client_s = res
client_addr = res
print("Client address: ", client_addr)
print("Client socket: ", client_s)
req = client_s.recv(4096)
print("Request: ")
print(req)
client_s.send(CONTENT) # 当访问掌控板分配到的ip地址时,显示预制作的网页
client_s.close()
效果如下:
哇哦,小豪老师很棒棒哦。
掌控新玩法 yywudao 发表于 2019-6-25 21:36
掌控板主芯片ESP32自带WiFi功能,利用micropython的socket模块,可以进行TCP通讯。
掌控板连接已知的WiFi, ...
很棒,希望指导下开关控制方法! laai 发表于 2019-6-27 11:16
很棒,希望指导下开关控制方法!
你可以参考这个帖子。https://mc.dfrobot.com.cn/thread-289909-1-1.html 新玩法哦 怎么用Mind+玩http 哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 我哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇 怎么用mind+做? 厉害厉害
页:
[1]