五月份的时候,我们尝试了在RP2040板上使用非官方的RaspberryPiPicoArduinoCore(包括RaspberryPiPico)。
鉴于所有东西都很早就设置好了,所以blink示例运行得很好。
不过,Arduino最近却在推特上发布了官方的版本,这个版本增加了RaspberryPiRP2040板,包括ArduinoNanoRP2040Connect和RaspberryPiPico板。
因为Arduino没有适用于NordicnRF52840Cortex-M4微控制器的官方Arduino内核,便在他们的ArduinoNano33BLE板上使用mbed。,值得一提是,他们似乎也为RaspberryPiRP2040做了同样的事情,其mbed实现本身依赖于CSDK。
我们一起来试试看,到底有多难?
首先,在Github上找到发布和更新日志的说明。
其次,在sketchbook目录中克隆repo(参见下图ArduinoIDE的首选项),在我的例子中是~/Arduino:
mkdir-p~/Arduino/hardware/arduino-git
cd~/Arduino/hardware/arduino-git/
gitclone
接着需要克隆ArduinoCoreAPI:
gitclone
ln-s~/ArduinoCore-API/apimbed/cores/arduino/api
然后,去BoardsManager中,查找mbed,然后安装“ArduinombedOSRP2040Boards”

ArduinoIDE安装库文件
接下来选择RaspberryPiPico板,以及它所连接的端口:/dev/ttyACM0。
ArduinoIDE选择烧录端口
尝试中,我发现blink示例可以构建,但无法下载到板上。
ArduinoIDE烧录程序失败
我试过用两块RaspberryPiPico板,但都以同样的方式失败告终,而它们在非官方的ArduinoCore端口上却可以正常工作。连接到板上后,可以查看的日志如下:
前往“CNXSoftware中文站”官网,查看完整信息
也能正确地检测到ttyACM0设备:
前往“CNXSoftware中文站”官网,查看完整信息
我尝试将固件烧录到主板上,并在boot模式下重启。但操在安装Pico分区(RPI-RP2)的时候,串口就断开了:
前往“CNXSoftware中文站”官网,查看完整信息
正常情况下来说,这种情况下,ArduinoIDE应该将UF2文件复制到分区,但这没有发生。于是,我在树莓派论坛上发现了解决方法,我找到了在/tmp/arduino*中uf2文件:
前往“CNXSoftware中文站”官网,查看完整信息
并将其复制到驱动中:
前往“CNXSoftware中文站”官网,查看完整信息
这个时候,我发现板上的LED灯在闪烁。所以这只是一个初步的端口,也许这也就可以解释为什么Arduino只是在推特上发布了这个消息,而不是专门写一篇博客来宣布RP2040板的发布了。
更多优质文章推荐:
1.HomeAssistantAmber,基于树莓派CM4的自动化网关-CNXSoftware中文站
2.ClusBerry机架外壳,最多可容纳四个可热插拔的树莓派CM4模块-CNXSoftware中文站
3.TuringPiV2mini-ITX集群板,支持四个树莓派CM4或NVIDIAJetsonSoM-CNXSoftware中文站