From 8363cf1d72076f95f27a8ab2119225b21ce856f9 Mon Sep 17 00:00:00 2001
From: pio <pio@server.local>
Date: Wed, 2 Aug 2023 16:00:30 +0200
Subject: [PATCH] fix uart fractional baudrate calc

---
 ch32v003fun/ch32v003fun.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/ch32v003fun/ch32v003fun.h b/ch32v003fun/ch32v003fun.h
index 3e07c24..147ba0d 100644
--- a/ch32v003fun/ch32v003fun.h
+++ b/ch32v003fun/ch32v003fun.h
@@ -5109,10 +5109,10 @@ void SystemInit(void);
 #else
 	#define UART_BAUD_RATE 115200
 #endif
-#define OVER8DIV 4
-#define INTEGER_DIVIDER (((25 * (FUNCONF_SYSTEM_CORE_CLOCK)) / ((OVER8DIV) * (UART_BAUD_RATE))))
+#define OVER4DIV 4
+#define INTEGER_DIVIDER (((25 * (FUNCONF_SYSTEM_CORE_CLOCK)) / ((OVER4DIV) * (UART_BAUD_RATE))))
 #define FRACTIONAL_DIVIDER ((INTEGER_DIVIDER)%100)
-#define UART_BRR ((((INTEGER_DIVIDER) / 100) << 4) | (((((FRACTIONAL_DIVIDER) * ((OVER8DIV)*2)) + 50)/100)&7))
+#define UART_BRR ((((INTEGER_DIVIDER) / 100) << 4) | (((((FRACTIONAL_DIVIDER) * ((OVER4DIV)*4)) + 50)/100)&15))
 // Put an output debug UART on Pin D5.
 // You can write to this with printf(...) or puts(...)
 
-- 
GitLab