Module stm32_hal2::dma[][src]

Expand description

Direct Memory Access (DMA). This module handles initialization, and transfer configuration for DMA. The Dma::cfg_channel method is called by modules that use DMA.

Structs

ChannelCfg

This struct is used to pass common (non-peripheral and non-use-specific) data when configuring a channel.

Dma

Enums

Circular

Set in CCR. Can only be set when channel is disabled.

DataSize

Peripheral and memory increment mode. (CCR PSIZE and MSIZE bits) Can only be set when channel is disabled.

Direction

Set in CCR. Can only be set when channel is disabled.

DmaChannel

Represents a DMA channel to select, eg when configuring for use with a peripheral.

DmaInput

A list of DMA input sources. The integer values represent their DMAMUX register value, on MCUs that use this. G4 RM, Table 91: DMAMUX: Assignment of multiplexer inputs to resources.

DmaInterrupt

Interrupt type. Set in CCR using TEIE, HTIE, and TCIE bits. Can only be set when channel is disabled.

IncrMode

Peripheral and memory increment mode. (CCR PINC and MINC bits) Can only be set when channel is disabled.

Priority

L4 RM, 11.4.3, “DMA arbitration”: The priorities are managed in two stages: • software: priority of each channel is configured in the DMA_CCRx register, to one of the four different levels: – very high – high – medium – low • hardware: if two requests have the same software priority level, the channel with the lowest index gets priority. For example, channel 2 gets priority over channel 4. Only write to this when the channel is disabled.