2025-11-18 1:16 AM
I would like to use the STM32WL33 as a radio receiver and continuously transfer all I/Q samples to my computer for further processing.
Also, I want to use the highest possible IQ sampling rate (CHF_E = 0, 500k IQ samples per second = 64 Mbit/s).
I've managed to configure it to IQ receiver mode, have it write samples to the databuffers in RAM and output the buffers via USART once both are full.
However, I want to record more samples than would fit in the RAM and thus I have to somehow output the buffers faster than they are filled (or equally fast)
This is where I've encountered a bottleneck. None of the STM32WL33's interfaces (SPI/USART/I2C/...) can transfer data fast enough, the highest I found is SPI with 32 Mbit/s. So how can I output 64 Mbit/s worth of samples?
My idea would be bitbang a parallel interface on the GPIO ports and use another MCU (with a higher clock rate) to convert it to USB or some other serial interface. However, I'd like to know if theres a better way to achieve this.