~ruther/avr-device

ref: 0cd695b43fa760282f221a3bfde3c8de3183e252 avr-device/README.md -rw-r--r-- 1.8 KiB
0cd695b4 — Rahix Add README and LICENSE files 6 years ago

#avr-device

Auto-generated wrappers around registers for avr chips.

#Usage

You need to have atdf2svd, svd2rust, form, and rustfmt installed:

rustup component add rustfmt
cargo install form
cargo install svd2rust
git clone https://github.com/Rahix/atdf2svd
cd atdf2svd
cargo install --path .

Next, clone this repo and build the device definitions:

git clone https://github.com/Rahix/avr-device
cd avr-device
make
# You can build for just one specific chip using
make src/devices/<chip>/mod.rs
# I suggest building documentation as well
cargo +nightly doc --features <chip> --open

In your project add the following lines to Cargo.toml:

[dependencies.avr-device]
path = "path/to/avr-device/"
features = ["atmega32u4"]

Via the feature you can select which chip you want the register specifications for. The following list is what is currently supported:

  • atmega32u4
  • attiny85

#Internals

avr-device is generated using atdf2svd and svd2rust. The vendor-provided atdf files can be found in vendor/. Later on, we intend to add support for patching the svd files because some information from the provided atdfs is not quite as good as it should be (mainly undescriptive names and missing descriptions).

#License

avr-device is licensed under either of

at your option.

The vendored atdf files are licensed under the Apache License, Version 2.0 (LICENSE-VENDOR).

Do not follow this link