From 0ca572bc7a0fbe26b216cab519d89187ae49a28b Mon Sep 17 00:00:00 2001 From: Vegard Storheil Eriksen Date: Sat, 22 Sep 2012 15:13:26 +0200 Subject: Added DMA register definition. --- dma/dma.h | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 dma/dma.h diff --git a/dma/dma.h b/dma/dma.h new file mode 100644 index 0000000..30d1346 --- /dev/null +++ b/dma/dma.h @@ -0,0 +1,37 @@ +#ifndef DMA_H +#define DMA_H + +#include + +struct DMA_stream_reg_t { + volatile uint32_t CR; + volatile uint32_t NDTR; + volatile uint32_t PAR; + volatile uint32_t M0AR; + volatile uint32_t M1AR; + volatile uint32_t FCR; +}; + +struct DMA_reg_t { + volatile uint32_t LISR; + volatile uint32_t HISR; + volatile uint32_t LIFCR; + volatile uint32_t HIFCR; + DMA_stream_reg_t S[8]; +}; + +class DMA_t { + public: + DMA_reg_t& reg; + + DMA_t(uint32_t reg_addr) : reg(*(DMA_reg_t*)reg_addr) {} +}; + +#if defined(STM32F1) + +#elif defined(STM32F4) +static DMA_t DMA1(0x40026000); +static DMA_t DMA2(0x40026400); +#endif + +#endif -- cgit v1.2.3