如何在 Arduino Nano Connect RP2040 上使用 MicroPython 发出 HTTP 请求
Posted
技术标签:
【中文标题】如何在 Arduino Nano Connect RP2040 上使用 MicroPython 发出 HTTP 请求【英文标题】:How to make HTTP request with MicroPython on Arduino Nano Connect RP2040 【发布时间】:2021-12-24 02:18:34 【问题描述】:我正在尝试将我的 Arduino Nano RP2040 与 MicroPython 连接到我的本地 WiFi 网络并发出 HTTP 请求。
板上的 Nina W102 uBlox 模块是一个 ESP32,通过 SPI 连接到 RP2040(我不确定这意味着什么,但我认为它可能是相关的)。
我发现这个代码 sn-p 似乎可以做我想做的事
def do_connect():
import network
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
if not wlan.isconnected():
print('connecting to network...')
wlan.connect('SKYNET', 'G1V31NT3RN3T')
while not wlan.isconnected():
pass
print('network config:', wlan.ifconfig())
do_connect()
但它打破了:
Traceback(最近一次调用最后一次):文件“”,第 1 行,in ImportError:没有名为“网络”的模块
我使用 Thonny 作为编辑器并尝试在他们的包中搜索名为“Network”的东西并找到匹配项。但这给了我以下错误/警告。
非常感谢任何帮助或提示。
更新 1:使用 CircuitPython 找到这个带有 WiFi 的示例。更喜欢使用 MicroPython,但如果一切都失败了,我可能不得不切换固件。 https://learn.adafruit.com/circuitpython-on-the-arduino-nano-rp2040-connect/wifi
更新 2:选择使用 CircuitPython。获得 WiFi 非常容易。
【问题讨论】:
【参考方案1】:Raspberry Pi Pico 没有任何网络功能。
您提供的代码看起来像是来自 micropython 的芯片,内部有 wifi(ESP 系列,其他一些)
看起来 Arduino RP2040 板有 wifi 选项,但通过 Nina W102 uBlox,使用 SPI,女巫是引擎盖下的 ESP32。大概,Nina的固件是提供WIFI/BLE,通过SPI控制的。
我假设,Adafruit 编写了 circuitpython 驱动程序来控制 Nina 芯片。我的猜测是 Nina 使用 AT+ 命令。有时 circuityphons 库适用于 micropython。如果这次不是这种情况 - 您需要网络驱动程序。快速搜索没有给我任何结果。
结论-使用 Circuipython 或在 Micropython 上为 Nina 编写/查找驱动程序
【讨论】:
是的,这就是我最终所做的。无法获得任何使用 MicroPython 的示例。以上是关于如何在 Arduino Nano Connect RP2040 上使用 MicroPython 发出 HTTP 请求的主要内容,如果未能解决你的问题,请参考以下文章
我通过蓝牙向 arduino nano ble 33 发送了一个值,并收到了树莓派的值。如何将此值转换为数字?
BPI-Nano arduino Nano 开发板和 BPI-UNO arduino UNO 开发板