From b20d0ff1fbec06d8fb23e4651bbde9379fc39e40 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Wed, 25 Oct 2017 22:50:46 +0000 Subject: [PATCH] stm32: usart-v2: pull up CR2 register values from f0/f3 Just small pieces at a time to make it easy to see what's happening. Taking definitions currently implemented in both f0/f3 headers and making combined, documented versions in the -v2 header. --- .../libopencm3/stm32/common/usart_common_v2.h | 18 ++++++++++++++++++ include/libopencm3/stm32/f0/usart.h | 11 ----------- include/libopencm3/stm32/f3/usart.h | 16 ---------------- 3 files changed, 18 insertions(+), 27 deletions(-) diff --git a/include/libopencm3/stm32/common/usart_common_v2.h b/include/libopencm3/stm32/common/usart_common_v2.h index 113126dd..64f43fe0 100644 --- a/include/libopencm3/stm32/common/usart_common_v2.h +++ b/include/libopencm3/stm32/common/usart_common_v2.h @@ -291,6 +291,24 @@ @ingroup usart_defines @{*/ +/** ADD[7:0]: Address of the USART node. */ +#define USART_CR2_ADD_SHIFT 24 +#define USART_CR2_ADD (0xFF << USART_CR2_ADD_SHIFT) +#define USART_CR2_ADD_VAL(x) ((x) << USART_CR2_ADD_SHIFT) + +#define USART_CR2_ABRMOD_MASK 3 +#define USART_CR2_ABRMOD_SHIFT 21 +/** ABRMOD[1:0]: Auto baud rate mode + * @defgroup usart_cr2_abrmod Auto baud rate mode + * @ingroup usart_defines + * @{ + */ +#define USART_CR2_ABRMOD_STARTBIT (0x0 << USART_CR2_ABRMOD_SHIFT) +#define USART_CR2_ABRMOD_FALL_EDGE (0x1 << USART_CR2_ABRMOD_SHIFT) +#define USART_CR2_ABRMOD_FRAME_0x7F (0x2 << USART_CR2_ABRMOD_SHIFT) +#define USART_CR2_ABRMOD_FRAME_0x55 (0x3 << USART_CR2_ABRMOD_SHIFT) +/**@}*/ + /** RTOEN: Receiver timeout enable */ #define USART_CR2_RTOEN (1 << 23) diff --git a/include/libopencm3/stm32/f0/usart.h b/include/libopencm3/stm32/f0/usart.h index 611b13a4..1e0d71fa 100644 --- a/include/libopencm3/stm32/f0/usart.h +++ b/include/libopencm3/stm32/f0/usart.h @@ -57,17 +57,6 @@ #define USART_CR1_DEDT (0x1F << USART_CR1_DEDT_SHIFT) #define USART_CR1_DEDT_VAL(x) ((x) << USART_CR1_DEDT_SHIFT) -/* USART_CR2 Values ---------------------------------------------------------*/ - -#define USART_CR2_ADD_SHIFT 24 -#define USART_CR2_ADD (0xFF << USART_CR2_ADD_SHIFT) -#define USART_CR2_ADD_VAL(x) ((x) << USART_CR2_ADD_SHIFT) - -#define USART_CR2_ABRMOD_SHIFT 21 -#define USART_CR2_ABRMOD (3 << USART_CR2_ABRMOD_SHIFT) -#define USART_CR2_ABRMOD_STARTBIT (0 << USART_CR2_ABRMOD_SHIFT) -#define USART_CR2_ABRMOD_FALLTOFALL (1 << USART_CR2_ABRMOD_SHIFT) - /* USART_CR3 Values ---------------------------------------------------------*/ #define USART_CR3_SCARCNT_SHIFT 17 diff --git a/include/libopencm3/stm32/f3/usart.h b/include/libopencm3/stm32/f3/usart.h index 34cc9933..087a207d 100644 --- a/include/libopencm3/stm32/f3/usart.h +++ b/include/libopencm3/stm32/f3/usart.h @@ -47,22 +47,6 @@ #define UART5 UART5_BASE /**@}*/ -/* --- USART_CR2 values ---------------------------------------------------- */ - -/* ADD[7:4]: Address of the USART node (31,28) */ -#define USART_CR2_ADD1_MASK (0xF << 28) - -/* ADD[3:0]: Address of the USART node (27,24) */ -#define USART_CR2_ADD2_MASK (0xF << 24) - -/* ABRMOD[1:0]: Auto baud rate mode */ -#define USART_CR2_ABRMOD_BAUD (0x0 << 21) -#define USART_CR2_ABRMOD_FALL_EDGE (0x1 << 21) -#define USART_CR2_ABRMOD_FRAME_0x7F (0x2 << 21) -#define USART_CR2_ABRMOD_FRAME_0x55 (0x3 << 21) - -/* ADD[3:0]: Address of the usart node -#define USART_CR2_ADD_MASK 0xF */ /* --- USART_CR3 values ---------------------------------------------------- */