Conveyor

STM32 UART DMA Transmit Exercise

Task

Once after reset, send HELLO to USART1 through DMA2 Stream 7 (channel 4), then print STATUS:OK. The registers and bit fields are on the Datasheet tab.

Circuit

Block diagram: inside the STM32F4 the six bytes HELLO and a newline sit in RAM, DMA2 Stream 7 on channel 4, the USART1_TX request, carries them into the USART1 data register, the CPU writes the same register through the given uart_puts, and PA9 carries both to the host serial console with a TP1 capture on the net

Pass condition

The capture must read HELLO, sent by the stream in one transfer, then STATUS:OK.

Expected output: the serial capture holds two lines in order, HELLO carried by DMA2 Stream 7 in one six-byte transfer, then STATUS:OK written by the CPU

Notes

USART1 and uart_puts are given. DMA2 ignores every access until RCC_AHB1ENR bit 22 is set.

Related challenges

Loading the interactive arena.