8个版本 (5 个重大更改)

0.7.1 2023年7月15日
0.7.0 2022年1月11日
0.5.0 2021年9月27日
0.4.0 2020年12月31日
0.1.0 2020年7月7日

#2044 in 嵌入式开发

MIT/Apache

1.5MB
24K SLoC

Arduino Nano 33 IOT 开发板支持包

此包提供用于与Arduino nano 33 IOT 开发板交互的类型安全API。

需求

  1. 已安装Arduino IDE或arduino CLI
  2. samd软件包已安装。您可以通过转到“工具”->“板”->“板管理器”并搜索samd或运行arduino-cli core install arduino:samd来完成此操作。
  3. 现在,arduino发行版包含在ArduinoData/packages/arduino/tools/bossac/1.7.0[-arduino3]/中的bossac.exe,将其添加到您的路径中
  • linux: ArduinoData可能是类似~/.arduino15/的东西
  • OSX: ArduinoData可能是类似~/Library/Arduino15的东西
  1. 最好通过IDE安装一个示例草图,以确保一切正常工作。
  2. arm-none-eabi工具已安装,您需要gccobjcopy
  • 注意:或者,您可以使用cargo-binutils,它在OSX上安装可能更容易,并且使用起来也更容易,因为它会自动检测目标
  1. thumbv6m-none-eabi 使用 rustup target add thumbv6m-none-eabi 安装的 rust 目标。某些功能可能还需要 nightly rust。

步骤

cargo build --release --example blinky_basic
# If using cargo-binutils, you can `rust-objcopy` with the same flags, or combine these 2 steps with `cargo objcopy`
arm-none-eabi-objcopy -O binary target/thumbv6m-none-eabi/release/examples/blinky_basic target/blinky_basic.bin

# If using bossac
bossac -i -d -U true -i -e -w -v target/blinky_basic.bin -R

# If using arduino-cli
arduino-cli upload -i target/blinky_basic.bin -b arduino:samd:nano_33_iot -p /dev/ttyACM0

(您可能需要使用 --port 与类似 /dev/ttyACM0//dev/ttyACM1 或在 OSX 上的 /dev/tty.usbmodemNNNNN 的东西一起使用)

注意

  • 在重新烧录设备时,连续按中心按钮可以帮助重置。这将设备置于引导加载程序模式。
  • 对于 USB 示例,picocom 是一个很好的简单终端串行模拟器,可以使用您的操作系统包管理器或 brew 安装。
    • 在 OSX 上,闪烁用于串行通信的 tty 可能不同,例如 /dev/tty.usbmodemTEST1

依赖项

~5MB
~116K SLoC