2017-01-23 05:57 AM
Hello,
i want a baud rate of 5 mbps on UART1/UART6 on STM32F207 Nucleo Board (As per reference Manual UART1 & UART6 can have baud rate up to 7.5 Mbps). However when i am configuring in STM Cube MX i am getting baud rate of 3.7 mbps max for both UART1 & UART6. I have checked clock configuration many times.
HCLK= 120 MHz, APB1= 30MHz, APB2=60 MHz exactly. In Addition to this i also tried to give Input frequency of 25MHz (26 MHz max).
Still i am unable to cross 3.7 Mbps (max possible value as per Cube Mx)
So can anybody suggest me possible solution??.
#stm32f207-uart2017-01-23 06:02 AM
Hi
Kale.Sumit
,Could you precise in which CUBEMX versionyou have found the issue. So, we can verify it.
-Nesrine-
2017-01-23 06:46 AM
Hi
Kale.Sumit
,Just an idea ...
Highest baud rates values require to have Oversampling set to 8 (not 16).
Using an APB2 clock at 60 Mhz, with an USART oversampling set to 16, max baud rate that could be achieved is corresponding to 60/16 = 3.75 Mhz, so more or less what you experienced. Could you check Oversampling setting value when configuring your USART in Cube MX (8 or 16) ? If 16, could you try 8 instead?Best regards
Guenael2017-01-23 07:06 AM
STM32Cube MX 4.16.1
2017-01-23 07:08 AM
Hi
Kale.Sumit
,as it is already said by
Cadier.Guenael
try to setOversampling to 8 ,to have
Highest baud rates value.
Common programmable transmit and receive baud rate of up to 7.5 Mbit/s whenthe APB frequency is 60 MHz and oversampling is by 8
-Nesrine-
Ifmy suggestanswers your question, please mark it as correct.
2017-01-23 07:10 AM
Just some pics to highlight what i meant :
Here is CubeMx configuration window when trying to apply 5Mhz baudrate using OverSampling rate set to 16 samples :
Now, selecting oversampling 8, extends possible baudrate range and allow reaching 5Mhz :
Regards
Guenael
2017-01-23 07:18 AM
Hi
Kale.Sumit
,please try to update MX to the latest version 4.19 , then late me know if the issue persist again
-Nesrine-
2017-01-23 07:48 AM
Hello,
In new Version (4.19) same issue. Baud rate is 3.75 Mbps for UART1
2017-01-23 07:57 AM
60 MHz / 16 = 3.75 MHz
OVER8 mode will get you higher
For high baud rates of specific value you'd likely want to start will a close multiple as the granularity of the clock becomes more dominant. High asynchronous rates aren't particularly robust/reliable, consider synchronous methods, and ones with integrity checking designed in.
2017-01-23 08:15 AM
Thank you so much..I got the Point..