basic uart functionality (not tested)
[cortex-from-scratch] / include / mmap.h
index 7caee1d..604579b 100644 (file)
 
 
 /* SYSTEM CONTROL REGISTER */
-#define SYSCTRL_RCC ((volatile unsigned long *)(0x400FE060))
+#define SYSCTRL_RCC ((volatile unsigned long *)(0x40021000))
+#define RCC_APB2ENR ((volatile unsigned long *)(0x40021018)) // register to enable USART1
+
 #define SYSCTRL_RIS ((volatile unsigned long *)(0x400FE050))
 #define SYSCTRL_RCGC1 ((volatile unsigned long *)(0x400FE104))
 #define SYSCTRL_RCGC2 ((volatile unsigned long *)(0x400FE108))
 #define GPIOPA_AFSEL ((volatile unsigned long *)(0x40004420))
 
-/* USART REGISTERS */
-#define UART0_DATA ((volatile unsigned long *)(0x4000C000))
-#define UART0_FLAG ((volatile unsigned long *)(0x4000C018))
-#define UART0_IBRD ((volatile unsigned long *)(0x4000C024))
-#define UART0_FBRD ((volatile unsigned long *)(0x4000C028))
-#define UART0_LCRH ((volatile unsigned long *)(0x4000C02C))
-#define UART0_CTRL ((volatile unsigned long *)(0x4000C030))
-#define UART0_RIS ((volatile unsigned long *)(0x4000C03C))
-
-#define UART1_DATA ((volatile unsigned long *)(0x4000D000))
-#define UART1_FLAG ((volatile unsigned long *)(0x4000D018))
-#define UART1_IBRD ((volatile unsigned long *)(0x4000D024))
-#define UART1_FBRD ((volatile unsigned long *)(0x4000D028))
-#define UART1_LCRH ((volatile unsigned long *)(0x4000D02C))
-#define UART1_CTRL ((volatile unsigned long *)(0x4000D030))
-#define UART1_RIS ((volatile unsigned long *)(0x4000D03C))
+#define GPIOA_CRH ((volatile unsigned long *)(0x40010804))
+#define AFIO_EVCR ((volatile unsigned long *)(0x40010000))
+
+#define USART1_SR ((volatile unsigned long *)(0x40013800))
+#define USART1_DR ((volatile unsigned long *)(0x40013804))
+#define USART1_BRR ((volatile unsigned long *)(0x40013808))
+#define USART1_CR1 ((volatile unsigned long *)(0x4001380C))
+#define USART1_CR3 ((volatile unsigned long *)(0x40013814))