27 lines
504 B
C++
27 lines
504 B
C++
/*
|
|
* llmemcpydma.h
|
|
*
|
|
* Created on: Nov 4, 2019
|
|
* Author: abody
|
|
*/
|
|
#pragma once
|
|
|
|
#include <f4ll/dma_helper.h>
|
|
#include <f4ll/singleton.h>
|
|
|
|
namespace f4ll {
|
|
|
|
class memcpy_dma : public singleton<memcpy_dma>, private dma_helper
|
|
{
|
|
friend class singleton<memcpy_dma>;
|
|
|
|
public:
|
|
void *copy(void *dst, void const *src, uint16_t length);
|
|
void dma_transfer_completed();
|
|
|
|
private:
|
|
memcpy_dma(DMA_TypeDef *dma, uint32_t stream);
|
|
bool volatile m_busy = false;
|
|
};
|
|
|
|
} /* namespace f4ll */
|