Skyward boardcore
|
This class is responsible for streams acquisition, streams release and interrupt handling. More...
#include <DMA.h>
Public Member Functions | |
void | IRQhandleInterrupt (DMADefs::DMAStreamId id) |
bool | tryStream (DMADefs::DMAStreamId id) |
DMAStreamGuard | acquireStream (DMADefs::DMAStreamId id, DMADefs::Channel channel, std::chrono::nanoseconds timeout=std::chrono::nanoseconds::zero()) |
Try to acquire the specified stream and initialize it with the correct channel. | |
DMAStreamGuard | acquireStreamForPeripheral (DMADefs::Peripherals peripheral, std::chrono::nanoseconds timeout=std::chrono::nanoseconds::zero()) |
Try to acquire a stream that is connected to the specified peripheral. | |
void | releaseStream (DMADefs::DMAStreamId id) |
DMADriver (const DMADriver &)=delete | |
DMADriver & | operator= (const DMADriver &)=delete |
Static Public Member Functions | |
static DMADriver & | instance () |
This class is responsible for streams acquisition, streams release and interrupt handling.
|
delete |
DMAStreamGuard Boardcore::DMADriver::acquireStream | ( | DMADefs::DMAStreamId | id, |
DMADefs::Channel | channel, | ||
std::chrono::nanoseconds | timeout = std::chrono::nanoseconds::zero() ) |
Try to acquire the specified stream and initialize it with the correct channel.
id | The id of the stream to be acquired. |
channel | The channel used to initialize the stream. |
timeout | The maximum time that will be waited, defaults to waiting forever. |
DMAStreamGuard Boardcore::DMADriver::acquireStreamForPeripheral | ( | DMADefs::Peripherals | peripheral, |
std::chrono::nanoseconds | timeout = std::chrono::nanoseconds::zero() ) |
Try to acquire a stream that is connected to the specified peripheral.
peripheral | The wanted peripheral. |
timeout | The maximum time that will be waited, defaults to waiting forever. |
void Boardcore::DMADriver::IRQhandleInterrupt | ( | DMADefs::DMAStreamId | id | ) |
void Boardcore::DMADriver::releaseStream | ( | DMADefs::DMAStreamId | id | ) |
bool Boardcore::DMADriver::tryStream | ( | DMADefs::DMAStreamId | id | ) |