summaryrefslogtreecommitdiff
path: root/timer/stm32_timer.h
diff options
context:
space:
mode:
Diffstat (limited to 'timer/stm32_timer.h')
-rw-r--r--timer/stm32_timer.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/timer/stm32_timer.h b/timer/stm32_timer.h
new file mode 100644
index 0000000..cbc966d
--- /dev/null
+++ b/timer/stm32_timer.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include <mmio/mmio.h>
+
+struct STM32_TIMER_reg_v1_t {
+ volatile uint32_t CR1;
+ volatile uint32_t CR2;
+ volatile uint32_t SMCR;
+ volatile uint32_t DIER;
+ volatile uint32_t SR;
+ volatile uint32_t EGR;
+ volatile uint32_t CCMR1;
+ volatile uint32_t CCMR2;
+ volatile uint32_t CCER;
+ volatile uint32_t CNT;
+ volatile uint32_t PSC;
+ volatile uint32_t ARR;
+ volatile uint32_t RCR;
+ volatile uint32_t CCR1;
+ volatile uint32_t CCR2;
+ volatile uint32_t CCR3;
+ volatile uint32_t CCR4;
+ volatile uint32_t BDTR;
+ volatile uint32_t DCR;
+ volatile uint32_t DMAR;
+};
+
+template <typename T>
+class STM32_TIMER_t : public mmio_ptr<T> {
+ public:
+ using mmio_ptr<T>::ptr;
+};
+