【得捷电子Follow me第2期】任务2:wifi联网
[复制链接]
wifi联网
其实CircuitPython的联网非常简单,只要setting.toml配置里添加相关配置即可。
-
- CIRCUITPY_WIFI_SSID = "你家的wifiid"
-
- CIRCUITPY_WIFI_PASSWORD = "你家的wifi密码"
-
- CIRCUITPY_WEB_API_PASSWORD = "ilfree"
-
- CIRCUITPY_WEB_API_PORT = 80
-
是的,简单配置一下这个文件,就能联网了,也可以使用网络工作流来编辑和调试代码,详细教程可以查看下面的教程 链接。
配置完,重启后,可以看到板子上已正常显示IP地址,如下图所示。
在该状态下,其实可以不显式调用 wifi.connect函数联网,也一样能连接网络。
- import os
- import time
- import ssl
- import wifi
- import socketpool
- import microcontroller
- import adafruit_requests
-
-
- quotes_url = "https://www.bing.com"
-
-
-
-
- pool = socketpool.SocketPool(wifi.radio)
- requests = adafruit_requests.Session(pool, ssl.create_default_context())
-
- while True:
- try:
-
- print("Fetching text from %s" % quotes_url)
-
- response = requests.get(quotes_url)
- print("-" * 40)
-
- print("Text Response: ", response.text)
- print("-" * 40)
- response.close()
-
- time.sleep(60)
-
- except Exception as e:
- print("Error:\n", str(e))
- print("Resetting microcontroller in 10 seconds")
- time.sleep(10)
- microcontroller.reset()
可以看到,以上代码已注释掉连接wifi部分,但是一样可以运行,一样可以从bing.com上获取资源 ,结果如下图。
创建WIFI热点
使用以下代码可以轻松创建一个名称为cpy_wifi,密码是temppasswd的热点,连接后可以获取到ip地址,但是无法连接互联网。
- import os
- import time
- import ssl
- import wifi
- import socketpool
- import microcontroller
- import adafruit_requests
-
- wifi.radio.start_ap("cpy_wifi", "temppasswd")
- print(f"SSID: cpy_wifi")
- print(f"PASSWORD: temppasswd")
-
- while True:
- pass
|