I am trying to debug a UART driver for the STM32F405. It does not work above a certain baud rate (about 50 kBd). I connected it to a logic analyzer with analog capability, and I saw that the signal is rounded; it takes time for the signal to rise. It seems that at higher baud rates the signal does not rise high enough for it to be read.
How can I allow the UART to function at higher speeds? I'm not sure if this is a hardware problem, or if it can be corrected in software.
Screenshot of logic analyzer, MCU transmitting at 38400 baud.
Screenshot of logic analyzer, MCU transmitting at 115200 baud.
More details:
- I am reading the serial connection with a FTDI chip connected to my desktop.
- I sniffed this connection with a Saleae Logic 8 connected to the same lines as the FTDI.
- In the screenshots shown, the board is sending "testing" over the serial.
- The MCU is part of an OpenPilot Revolution flight controller.