Expand description
§Abstractions to setup and use the DMA controller
§Initializing
The DMAC should be initialized using the
DmaController::init
method. It will consume the
DMAC object generated by the PAC. By default, all four priority levels
will be enabled, but can be selectively enabled/disabled through the
DmaController::enable_levels
ansd DmaController::disable_levels
methods.
§Splitting Channels
Using the DmaController::split
method will return
a struct containing handles to individual channels.
§Releasing the DMAC
Using the free
method will
deinitialize the DMAC and return the underlying PAC object.
Structs§
- Struct generating individual handles to each DMA channel
- Initialized DMA Controller
- Struct generating individual handles to each DMA channel for
async
operation - Mask representing which priority levels should be enabled/disabled
- Mask representing which priority levels should be configured as round-robin
Enums§
- Type alias for a channel number
- Type alias for a channel number
- Type alias for a channel number
- Channel Arbitration Level
- Trigger Action
- Trigger Source
Traits§
- Trait representing a DMA channel ID