1 unstable release
0.0.0 | Dec 10, 2022 |
---|
#17 in #wch
1.5MB
31K
SLoC
ch32v1
This crate provides an autogenerated API for access to CH32V1 peripherals. The API is generated using svd2rust with patched svd files containing extensive type-safe support. For more information please see the main repo.
Refer to the documentation for full details.
Usage
Each device supported by this crate is behind a feature gate so that you only compile the device(s) you want. To use, in your Cargo.toml:
[dependencies.ch32v1]
version = "0.1.6"
features = ["ch32v103"]
The rt
feature is enabled by default and brings in support for riscv-rt
.
To disable, specify default-features = false
in Cargo.toml
.
In your code:
use ch32v1::ch32v103;
let mut peripherals = ch32v103::Peripherals::take().unwrap();
let gpioa = &peripherals.GPIOA;
gpioa.odr.modify(|_, w| w.odr0().set_bit());
For full details on the autogenerated API, please see: https://docs.rs/svd2rust/0.26.0/svd2rust/#peripheral-api
Supported Devices
Module | Devices | Links |
---|
Dependencies
~0.5–1MB
~20K SLoC