Arduino Core mbed 2.0支持树莓派Pico和Arduino Nano RP2040连接

原文链接:Arduino Core mbed 2.0 supports Raspberry Pi Pico & Arduino Nano RP2040 Connect 由Jean-Luc Aufranc撰写。

上周,我们尝试了在RP2040板上使用非官方的Raspberry Pi Pico Arduino Core包括Raspberry Pi Pico)。

鉴于所有东西都很早就设置好了,所以blink示例运行得很好。

不过,Arduino最近却在推特上发布了官方的Arduino Core mbed 2.0版本,这个版本增加了Raspberry Pi RP2040板,包括Arduino Nano RP2040 Connect和Raspberry Pi Pico板。

因为Arduino没有适用于Nordic nRF52840 Cortex-M4微控制器的官方Arduino内核,便在他们的Arduino Nano 33 BLE板上使用mbed。,值得一提是,他们似乎也为Raspberry Pi RP2040做了同样的事情,其mbed实现本身依赖于C SDK。

我们一起来试试看,到底有多难?

首先,在Github上找到发布和更新日志的说明。

其次,在sketchbook目录中克隆repo(参见下图Arduino IDE的首选项),在我的例子中是~/Arduino:

mkdir -p ~/Arduino/hardware/arduino-git

cd ~/Arduino/hardware/arduino-git/

git clone https://github.com/arduino/ArduinoCore-mbed mbed
接着需要克隆ArduinoCore API:

git clone https://github.com/arduino/ArduinoCore-API

ln -s ~/ArduinoCore-API/api mbed/cores/arduino/api
然后,去Boards Manager中,查找mbed,然后安装“Arduino mbed OS RP2040 Boards”

Arduino IDE安装库文件
Arduino IDE安装库文件

接下来选择Raspberry Pi Pico 板,以及它所连接的端口:/dev/ttyACM0。

Arduino IDE选择烧录端口
Arduino IDE选择烧录端口

尝试中,我发现blink示例可以构建,但无法下载到板上。

Arduino IDE烧录程序失败
Arduino IDE烧录程序失败

我试过用两块Raspberry Pi Pico板,但都以同样的方式失败告终,而它们在非官方的Arduino Core端口上却可以正常工作。连接到板上后,可以查看Ubuntu 20.04的日志如下:


也能正确地检测到ttyACM0设备:


我尝试将固件烧录到主板上,并在boot模式下重启。但操在安装Pico分区(RPI-RP2)的时候,串口就断开了:


正常情况下来说,这种情况下,Arduino IDE应该将UF2文件复制到分区,但这没有发生。于是,我在树莓派论坛上发现了解决方法,我找到了在 /tmp/arduino*中uf2文件:


并将其复制到驱动中:


这个时候,我发现板上的LED灯在闪烁。所以这只是一个初步的端口,也许这也就可以解释为什么Arduino只是在推特上发布了这个消息,而不是专门写一篇博客来宣布RP2040板Arduino Core Mbed 2.0的发布了。

分享这篇文章
订阅评论
提醒
0 评论
内联反馈
查看所有评论