|
enum | Channel {
Channel0 = 0,
Channel1,
Channel2,
Channel3,
Channel4,
Channel5,
Channel6,
Channel7
} |
|
enum | CircularMode : uint32_t { Disabled = 0,
CircularMode::Enabled = BDMA_CCR_CIRC
} |
|
enum | DataTransferDirection : uint32_t { DataTransferDirection::PeripheralToMemory = 0,
DataTransferDirection::MemoryToPeripheral = BDMA_CCR_DIR,
DataTransferDirection::MemoryToMemory = BDMA_CCR_MEM2MEM
} |
|
enum | InterruptEnable : uint32_t { TransferComplete = BDMA_CCR_TCIE,
HalfTransfer = BDMA_CCR_HTIE,
TransferError = BDMA_CCR_TEIE
} |
|
enum | InterruptFlags : uint8_t {
Global = 0b0001,
TransferComplete = 0b0010,
HalfTransferComplete = 0b0100,
Error = 0b1000,
All = 0b1111
} |
|
enum | MemoryDataSize : uint32_t {
Byte = 0,
Bit8 = Byte,
HalfWord = BDMA_CCR_MSIZE_0,
Bit16 = HalfWord,
Word = BDMA_CCR_MSIZE_1,
Bit32 = Word
} |
|
enum | MemoryIncrementMode : uint32_t { Fixed = 0,
MemoryIncrementMode::Increment = BDMA_CCR_MINC
} |
|
enum | PeripheralDataSize : uint32_t {
Byte = 0,
Bit8 = Byte,
HalfWord = BDMA_CCR_PSIZE_0,
Bit16 = HalfWord,
Word = BDMA_CCR_PSIZE_1,
Bit32 = Word
} |
|
enum | PeripheralIncrementMode : uint32_t { Fixed = 0,
PeripheralIncrementMode::Increment = BDMA_CCR_PINC
} |
|
enum | Priority : uint32_t { Low = 0,
Medium = BDMA_CCR_PL_0,
High = BDMA_CCR_PL_1,
VeryHigh = BDMA_CCR_PL_1 | BDMA_CCR_PL_0
} |
|
enum | Request {
None = 0,
Request1,
Request2,
Request3,
Request4,
Request5,
Request6,
Request7,
Request8,
Request9,
Request10,
Request11,
Request12,
Request13,
Request14,
Request15,
Request16,
Request17
} |
|
enum | Signal : uint8_t {
NoSignal,
A,
B,
Generator0,
Generator1,
Generator2,
Generator3,
Generator4,
Generator5,
Generator6,
Generator7,
Rx,
Tx
} |
|
template<uintptr_t base_addr>
class modm::platform::BdmaChannelHal< base_addr >
BDMA channel low-level register abstraction
- Template Parameters
-
base_addr | base address of the channel registers |
template<uintptr_t base_addr>
static void modm::platform::BdmaChannelHal< base_addr >::setMemoryIncrementMode |
( |
bool |
increment | ) |
|
|
inlinestatic |
Enable/disable memory increment
When enabled, the memory address is incremented by the size of the data (e.g. 1 for byte transfers, 4 for word transfers) after the transfer completed.
- Parameters
-
[in] | increment | Enable/disable |
template<uintptr_t base_addr>
static void modm::platform::BdmaChannelHal< base_addr >::setPeripheralIncrementMode |
( |
bool |
increment | ) |
|
|
inlinestatic |
Enable/disable peripheral increment
When enabled, the peripheral address is incremented by the size of the data (e.g. 1 for byte transfers, 4 for word transfers) after the transfer completed.
- Parameters
-
[in] | increment | Enable/disable |