How to best use SPI (master/slave)?
Making the Arduino the Master, and poll to the STM32 (resulting in my useless poll events likely)


Perhaps you can have an extra "interrupt" line from the STM32 to the Arduino to signal when data is available. It could directly trigger an interrupt on the Arduino.







simulate this circuit &ndash; Schematic created using CircuitLab

If you have fixed size data packets, the STM32 SPI+DMA peripherals can handle SPI slave traffic autonomously, without any CPU intervention after the interrupt line is triggered  (OK, the signal must be reset eventually, a DMA transfer complete interrupt, or a one-shot timer can do that).