STM32CubeMX USART2 peripheral configuration set to asynchronous mode
at 57600 baud, 8 data bits, no parity, and 1 stop bit (8N1).
STM32CubeMX clock configuration showing the system clock running at
168 MHz via PLL, with APB1 and APB2 buses properly configured for
UART operation.
RT-Spark STM32F407 development board with logic analyzer probes connected
to PA2 (TX), PA3 (RX), and a shared GND pin on the GPIO header for
UART signal capture.
Logic analyzer capture of UART transmission at 57600 baud (8N1) on the
USART2 TX line (PA2), showing the serial frames produced when the MCU
transmits a square root result back to the terminal.
Answers to Lab Questions
Q1. What is the minimum pulse duration? How does it relate to 57600 baud?
At 57600 baud, each bit period (minimum pulse) is:
T = 1 / 57600 ≈ 17.36 µs
Q2. How long does it take to transmit a 5-digit number + carriage return?
A 5-digit number plus a carriage return = 6 characters total.
Each character = 10 bits (8N1 with start/stop bits).
Total bits = 6 × 10 = 60 bits
Time = 60 / 57600 ≈ 1.042 ms
Q3. How long is the processing delay between receiving the last character and transmitting the first character back?
On an STM32F407 at 168 MHz with FPU: sqrt() takes ~14 clock cycles ≈ 0.08 µs.
Q4. What is the highest baud rate your system can communicate at?
10.5 Mbaud




Comments