3 个不稳定版本

0.2.1 2023 年 7 月 15 日
0.2.0 2022 年 1 月 11 日
0.1.0 2021 年 10 月 18 日

#2152 in 嵌入式开发

MIT/Apache

1.5MB
24K SLoC

Adafruit Neokey Trinkey 板支持包

此软件包提供了一套类型安全的 API,用于操作 Adafruit Neokey Trinkey 板

先决条件

上传示例

查看仓库中的示例

https://github.com/atsamd-rs/atsamd/tree/master/boards/neokey_trinkey/examples

  • 在此目录下 cd boards/neokey_trinkey
  • 将您的设备置于引导加载程序模式,通常通过连续按两次复位按钮。
  • 一步构建和上传
$ cargo hf2 --release --example <example-name> --features <any-required-features> --vid 0x239a --pid 0x00ff

注意:如果您有 cargo-hf2 的新版本,您不需要 pid 和 vid,它将自动识别设备

您应该看到以下输出

Finished release [optimized] target(s) in 5.55s
Trying  Ok(Some("Adafruit Industries")) Ok(Some("NeoKey Trinkey M0"))
Flashing "/Users/atsamd/boards/neo_trinkey/target/thumbv6m-none-eabi/release/examples/button"
Finished in 0.042s

注意:如果 hf2 找不到您的 Neokey Trinkey,您应检查系统设置中的产品 ID (pid) 和供应商 ID (vid)。

示例

闪烁基本

$ cargo hf2 --release --example blinky --features leds --vid 0x239a --pid 0x00ff

Neokey Trinkey 重新启动后,您将看到 led 闪烁。

警告尽管灯光调得很低,但仍然非常明亮。

彩虹

$ cargo hf2 --release --example rainbow --features leds --vid 0x239a --pid 0x00ff

一个更令人满意的闪烁版本,其中灯光将循环遍历颜色光谱。

警告尽管灯光调得很低,但仍然非常明亮。

USB 回显

$ cargo hf2 --release --example usb_echo --features usb --vid 0x239a --pid 0x00ff

设备重置后,所有灯光都将关闭。然后您需要找到计算机上的 USB 设备。

通常位于 /dev/cu.usbmodemTRINKEY_ECHO1,但如果您插入了多个 trinkeys 并运行此示例,末尾的数字可能已更改。

然后您可以发送 USB 设备字节。设备每次接收到数据时,都会以 "Received: X" 响应,其中 X 是它接收到的数据。要测试此功能,有多种方式,但最简单的方法可能是使用 screen。

以这种方式连接到设备(9600 是波特率)

$ screen /dev/cu.usbmodemTRINKEY_ECHO1 9600

现在您可以开始输入了,您输入的字符将显示在屏幕上,但这里的魔法在于您的按键实际上被发送到了设备,设备以相同的数据做出响应,这就是您在屏幕上看到的内容。

要退出屏幕,请使用 ctrl-a 然后按 crtl-\ 最后按 y

USB 确认

$ cargo hf2 --release --example usb_ack --features usb --vid 0x239a --pid 0x00ff

这和上面的 USB 回显示例类似,但是每次设备收到数据时,它会以 "Received: X" 的形式做出响应,其中 X 是它接收到的数据。这使得所发生的事情更加清晰。

以这种方式连接到设备(9600 是波特率)

$ screen /dev/cu.usbmodemTRINKEY_ECHO1 9600

然后您可以按键盘按键,应该会得到响应,例如

Received: h
Received: e
Received: l
Received: l
Received: o
Received:
Received: w
Received: o
Received: r
Received: l
Received: d

要退出屏幕,请使用 ctrl-a 然后按 crtl-\ 最后按 y

依赖关系

~5MB
~112K SLoC