u/AutoSidearm

Hi all,

Working on a personal project and trying to squeeze more transmission speed out of my STM32C0 USARTs. According to the data sheet the max USART baud rate is 6Mb/s:

"The devices embed two universal synchronous/asynchronous receivers/transmitters that

communicate at speeds of up to 6 Mbit/s."

Through CubeIDE I'm able to setup the USARTs in synchronous mode to 3Mb/s and verify the speed is correct with my logic analyzer. I'm using synchronous mode because I was under the impression it would help with the signal integrity at higher speeds. However I'm unable to increase the baud rate past 3Mb/s. I am certain my USART1 clock mux is correctly set to the sys clock at 48Mhz. With 16x oversampling I understand how the USART would be limited to 3MB/s. However I can't figure out how to change the oversampling to 8. Is this not possible in the CubeIDE? Is this an issue with running them in synchronous mode? Why would synchronous mode decrease the baud rate? Am I interpreting the data sheet wrong? Thank you for any help, still learning my way around the embedded world.

u/AutoSidearm — 25 days ago