Is there any reason why I should miss received bytes when using HAL_SPI_TransmitReceive_IT()?
I'm sending and trying to receive 5 bytes. If I run the peripheral at 3MHz all is well. If I run at 6MHz I miss receive bytes.
If I break and inspect hspi4.RxXferSize I can see this will be stuck at 2. The TxXferCount has counted down to 0, and so there are no more clocks being sent to collect any further received bytes. So we become stuck with hspi->State = HAL_SPI_STATE_BUSY_TX_RX
I've looked at the errata and can't find details of an issue like this. The datasheet claims 50Mb/s and obviously I'm nowhere near this.
This is reliable and repeatable. Run at 3MHz and all works, 6MHz and it doesn't. Is this a bug in the libraries or just me? I'm conscious I am a little sparse on details but I was wondering if anyone had some insight?
