基于Wio RP2040无线迷你WiFi开发板的无线局域网MicroPython编程实践

Wio RP2040无线迷你WiFi开发板(以下简称Wio RP2040开发板)是Seeed Studio公司于2021年5月推出的一款迷你无线WiFi开发板,它集成了Wio RP2040无线WiFi模块(见图1),该模块包括133MHz的树莓派双核RP2040 MCU芯片和ESP8285无线WiFi芯片,支持当今流行的嵌入式微控制器编程语言MicroPython。
在这里插入图片描述
图1 Wio RP2040模块 (RP2040+ESP8285 Chips)
由于树莓派Pico采用的是双核RP2040 MCU芯片,因此,Wio RP2040开发板除了网络通信功能外,该开发板的基本用法与树莓派Pico开发板没有区别。
Wio RP2040模块的网络通信集成了乐鑫(Espressif)公司的ESP8285无线WiFi,因此Wio RP2040模块的通信能力完全取决于ESP8285芯片的通信性能。从Espressif公布的资料知:ESP8285 芯片内部集成有增强版Tensilica’s L106 钻石系列 32 位内核处理器,并内封 1MB Flash;同 ESP8266 一样,ESP8285芯片提供了高度集成的 WiFi 系统级芯片解决方案,可满足可穿戴式设备、物联网等用户对低功耗、紧凑设计和可靠性的需求。
Wio RP2040开发板设备端通过WiFi无线局域网连接到电脑服务器端MicroPython程序清单如下:

Filename:lan_com.py
import time
import network  #导入network模块
# MicroPython的network模块有两个WiFi接口:
# 一个用于station接口(当Wio RP2040开发板连接到路由器时), 一个用于热点(Access Point)(当其他设备连接到与Wio RP2040开发板时)
import usocket   #导入usocket模块, usocket模块提供对BSD套接字接口的访问
from machine import Pin
station = network.WLAN_SPI(network.STA_IF)  #创建一个WLAN station对象,create station interface 
station.active(True)  # 激活station对象,activate the interface
time.sleep(2) 

station.connect("H3C_202","abcde12345")  # 替换成自己的WiFi名称及WiFi 密码连接到WiFi, connect to an AP
time.sleep(10)
if station.isconnected():     # 判断station对象是否连接到WiFi
    print("    IP               Netmask            Gateway            MAC            SSID")
    print(station.ifconfig())   # 获取station对象的网络信息
    #IP:Wio RP2040开发板IP地址, Netmask:子网掩码, Gateway:网关,MAC:MAC物理地址,SSID:WiFi名称
    skt=usocket.socket()
    ip_and_port=['192.168.124.4',5000] # 本人电脑服务器IP地址和端口号
    skt.connect(ip_and_port) # ip_and_port:服务器IP地址和端口号的元组或列表
    time.sleep(5)
while True:
    skt.send("Greetings from Wio RP2040 mini Dev. board!") # 发送数据,并返回成功发送的字节数
    time.sleep(2)

以上lan_com.py程序都添加了注释,这里不再多做解释。将Wio RP2040开发板连接到电脑。启动Thonny并设置开发环境,在Thonny输入以上录入以上程序,具体可参见本人博文< “基于Wio RP2040迷你无线WiFi开发板的硬件接口技术及MicroPython控制编程基础”>
按下来,安装Net Assistant网络调试助手,并运行网络调试助手程序,将窗口左上角“协议类型”设置为[TCP Server],下方的“本地主机地址”设置为用作电脑服务器的IP地址(这里设置为本人电脑所在WLAN环境的IP地址),“本地主机端口”设置为5000。所有设置完成后,单击[打开]按钮启动服务器(见图2)。
在这里插入图片描述
图2
下面执行Thonny IDE中文件名为lan_com.py的MicroPython程序,当Wio RP2040开发板成功连接WLAN后,在Thonny的Shell窗口将显示(IP, Netmask, Gateway, MAC, SSID)五元组信息,其中IP为Wio RP2040开发板的IP地址, Netmask为子网掩码, Gateway为网关,MAC为Wio RP2040开发板的MAC物理地址,SSID为WiFi名称;Wio RP2040开发板将每隔2秒钟向网络调试助手发送字符串"Greetings from Wio RP2040 mini Dev. board!"(见图3)。
在这里插入图片描述
图3
要说明的是,在调试Wio RP2040开发板设备端网络通信程序过程中,如果出现电脑和开发板之间通信的问题,可以按下Wio RP2040开发板上的[RUN]按钮重启并恢复正常通信功能。另外,除了使用网络调试助手作为电脑服务器端程序外,我们还可采用Python、C、Java等语言编写专用的电脑服务器端应用程序。
发布日期:2022年02月17日

版权声明:本文为CSDN博主「袁易学」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yuanzywhu/article/details/122992730

袁易学

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐