From 49012588461f1a43e9e476f676d946d91c3df9e7 Mon Sep 17 00:00:00 2001 From: Vegard Storheil Eriksen Date: Sun, 29 Mar 2015 21:37:03 +0200 Subject: Added STM32L0 support. --- usb/l0_usb_def.h | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 usb/l0_usb_def.h (limited to 'usb/l0_usb_def.h') diff --git a/usb/l0_usb_def.h b/usb/l0_usb_def.h new file mode 100644 index 0000000..b9d8d10 --- /dev/null +++ b/usb/l0_usb_def.h @@ -0,0 +1,37 @@ +#ifndef L0_USB_DEF_H +#define L0_USB_DEF_H + +#include + +class L0_USB_t { + private: + struct L0_USB_reg_t { + volatile uint32_t EPR[16]; + volatile uint32_t CNTR; + volatile uint32_t ISTR; + volatile uint32_t FNR; + volatile uint32_t DADDR; + volatile uint32_t BTABLE; + volatile uint32_t LPMCSR; + volatile uint32_t BCDR; + }; + + struct L0_USB_bufd_t { + volatile uint16_t ADDR_TX; + volatile uint16_t COUNT_TX; + volatile uint16_t ADDR_RX; + volatile uint16_t COUNT_RX; + }; + + public: + L0_USB_reg_t& reg; + L0_USB_bufd_t* bufd; + volatile uint16_t* buf; + + L0_USB_t(uint32_t reg_addr, uint32_t buf_addr) : + reg(*(L0_USB_reg_t*)reg_addr), + bufd((L0_USB_bufd_t*)buf_addr), + buf((volatile uint16_t*)buf_addr) {} +}; + +#endif -- cgit v1.2.3