Trait stm32f3xx_hal::dma::Channel [−][src]
pub trait Channel: Channel {
Show 16 methods
fn is_event_triggered(&self, event: Event) -> bool;
fn clear_event(&mut self, event: Event);
fn clear_events(&mut self) { ... }
fn reset(&mut self) { ... }
unsafe fn set_peripheral_address(&mut self, address: u32, inc: Increment) { ... }
unsafe fn set_memory_address(&mut self, address: u32, inc: Increment) { ... }
fn set_transfer_length(&mut self, len: u16) { ... }
fn set_word_size<W>(&mut self) { ... }
fn set_priority_level(&mut self, priority: Priority) { ... }
fn set_direction(&mut self, direction: Direction) { ... }
fn configure_intterupt(&mut self, event: Event, enable: bool) { ... }
fn enable_interrupt(&mut self, event: Event) { ... }
fn disable_interrupt(&mut self, event: Event) { ... }
fn enable(&mut self) { ... }
fn disable(&mut self) { ... }
fn is_enabled(&self) -> bool { ... }
}Expand description
Trait implemented by all DMA channels
Required methods
fn is_event_triggered(&self, event: Event) -> bool
fn is_event_triggered(&self, event: Event) -> bool
Is the interrupt flag for the given event set?
fn clear_event(&mut self, event: Event)
fn clear_event(&mut self, event: Event)
Clear the interrupt flag for the given event.
Passing Event::Any clears all interrupt flags.
Note that the the global interrupt flag is not automatically cleared
even when all other flags are cleared. The only way to clear it is to
call this method with Event::Any.
Provided methods
fn clear_events(&mut self)
fn clear_events(&mut self)
Clear all interrupt event flags
Reset the control registers of this channel. This stops any ongoing transfers.
unsafe fn set_peripheral_address(&mut self, address: u32, inc: Increment)
unsafe fn set_peripheral_address(&mut self, address: u32, inc: Increment)
unsafe fn set_memory_address(&mut self, address: u32, inc: Increment)
unsafe fn set_memory_address(&mut self, address: u32, inc: Increment)
fn set_transfer_length(&mut self, len: u16)
fn set_transfer_length(&mut self, len: u16)
Set the number of words to transfer.
Only call this method on disabled channels.
Panics
Panics if this channel is enabled.
fn set_word_size<W>(&mut self)
fn set_word_size<W>(&mut self)
fn set_priority_level(&mut self, priority: Priority)
fn set_priority_level(&mut self, priority: Priority)
Set the priority level of this channel
fn set_direction(&mut self, direction: Direction)
fn set_direction(&mut self, direction: Direction)
Set the transfer direction
fn configure_intterupt(&mut self, event: Event, enable: bool)
fn configure_intterupt(&mut self, event: Event, enable: bool)
Enable or disable the interrupt for the specified Event.
fn enable_interrupt(&mut self, event: Event)
fn enable_interrupt(&mut self, event: Event)
Enable the interrupt for the given Event.
fn disable_interrupt(&mut self, event: Event)
fn disable_interrupt(&mut self, event: Event)
Disable the interrupt for the given Event.
fn is_enabled(&self) -> bool
fn is_enabled(&self) -> bool
Is there a transfer in progress on this channel?