You should include this crate if you are writing code that you want to run on an [Adafruit Trinkey QT2040] - a 3x4 keyboard and OLED combo board from Adafruit.
This crate includes the [rp2040-hal], but also configures each pin of the RP2040 chip according to how it is connected up on the Trinkey.
To use this crate, your Cargo.toml
file should contain:
toml
adafruit-trinkey-qt2040 = "0.1.0"
In your program, you will need to call adafruit-trinkey-qt2040::Pins::new
to create
a new Pins
structure. This will set up all the GPIOs for any on-board
devices. See the examples folder for more details.
To compile an example, clone the rp-hal repository and run:
console
rp-hal/boards/adafruit-trinkey-qt2040 $ cargo build --release --example <name>
You will get an ELF file called
./target/thumbv6m-none-eabi/release/examples/<name>
, where the target
folder is located at the top of the rp-hal repository checkout. Normally
you would also need to specify --target=thumbv6m-none-eabi
but when
building examples from this git repository, that is set as the default.
If you want to convert the ELF file to a UF2 and automatically copy it to the USB drive exported by the RP2040 bootloader, simply boot your board into bootloader mode and run:
console
rp-hal/boards/adafruit-trinkey-qt2040 $ cargo run --release --example <name>
If you get an error about not being able to find elf2uf2-rs
, try:
console
$ cargo install elf2uf2-rs, then repeating the `cargo run` command above.
This example will display a colour-wheel rainbow effect on the on-board LED.
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
The steps are:
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
)Contribution to this crate is organized under the terms of the Rust Code of Conduct, and the maintainer of this crate, the [rp-rs team], promises to intervene to uphold that code of conduct.
The contents of this repository are dual-licensed under the MIT OR Apache
2.0 License. That means you can choose either the MIT license or the
Apache-2.0 license when you re-use this code. See MIT
or APACHE2.0
for more
information on each specific license.
Any submissions to this project (e.g. as Pull Requests) must be made available under these terms.