Crate daisy

Source
Expand description

Rust no_std, embedded_hal board support package for the Electro-Smith Daisy platform.

§Supported boards

Currently this library supports following boards:

Select the board by using its respective feature.

§Sampling rate

By default, the audio sampling rate is set to 48 kHz. This can be increased to 96 kHz by enabling the sampling_rate_96khz feature.

§Block length

By default, the audio block length is 32 frames. This can be increased to 64 by enabling the block_length_64 feature.

§API stability

I am still trying to figure out a good API for the project. Expect it to change. To mitigate breakage of your code on library update, use macros defined under board.rs to initialize resources whenever possible.

§HAL compatibility

This library is closely tied to stm32h7xx-hal. Make sure to use compatible versions in your Cargo.toml.

DaisyHAL
0.100.16
0.90.15
0.80.14
0.2-0.70.12
0.10.11

§Usage

See the examples/ directory to find usage examples:

make flash-dfu WHAT=blinky BOARD=seed_1_1

Re-exports§

pub use board::Board;
pub use stm32h7xx_hal as hal;

Modules§

audio
Interrupt-driven access to the audio interface.
board
Top-level abstraction of the board used to split out its sub-interfaces.
clocks
Configuration of the onboard clock to accomodate for typical usage focused on high-performance audio processing.
flash
Basic driver for IS25LP064 providing access to the on-board flash storage.
led
Simple abstraction of the on-board status LED.
pac
Peripheral access API for STM32H743 microcontrollers (generated using svd2rust v0.24.1 ( ))
pins
Mapping of both internal and external pins.
sdram
Configuration of and access to the on-board SDRAM memory.

Macros§

board_freeze_clocks
Configure clocks and retrieve a CCDR handle.
board_split_audio
Configure audio codec and return its handle.
board_split_flash
Configure flash storage and retrieve a handle to it.
board_split_gpios
Retrieve access to all GPIO for external pins and on-board peripherals.
board_split_leds
Allow access to the on-board LED.
board_split_sdram
Configure SDRAM memory and retrieve its handle.