rp-hal-boards/rp2040-hal/src/pwm/dyn_slice.rs

31 lines
738 B
Rust
Raw Normal View History

//! Semi-internal enums mostly used in typelevel magic
/// Value-level `struct` representing slice IDs
#[derive(PartialEq, Clone, Copy)]
pub struct DynSliceId {
/// Slice id
pub num: u8,
}
/// Slice modes
#[derive(PartialEq, Clone, Copy)]
pub enum DynSliceMode {
/// Count continuously whenever the slice is enabled
FreeRunning,
/// Count continuously when a high level is detected on the B pin
InputHighRunning,
/// Count once with each rising edge detected on the B pin
CountRisingEdge,
/// Count once with each falling edge detected on the B pin
CountFallingEdge,
}
/// Channel ids
#[derive(PartialEq, Clone, Copy)]
pub enum DynChannelId {
/// Channel A
A,
/// Channel B
B,
}