#api-access #embedded-devices #svd2rust #wch

no-std ch58x

Device support crates for CH58X devices

4 releases (2 breaking)

0.3.0 Jan 1, 2024
0.2.0 Oct 23, 2023
0.1.6 Feb 13, 2023
0.1.4 Nov 13, 2022

#1619 in Embedded development

Download history 15/week @ 2024-01-01 9/week @ 2024-02-19 10/week @ 2024-02-26 1/week @ 2024-03-11 61/week @ 2024-04-01

62 downloads per month
Used in ch58x-hal

MIT/Apache

1.5MB
21K SLoC

ch58x

This crate provides an autogenerated API for access to CH58X 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.ch58x]
version = "0.3.0"
features = ["ch58x", "critical-section"]

[dependencies.riscv]
version = "0.10.1"
features = ["critical-section-single-hart"]

In your code:

use ch58x::ch58x;

let mut peripherals = ch58x::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.31.3/svd2rust/#peripheral-api

Supported Devices

Module Devices Links

Dependencies

~225KB