我遇到了spi_master: check_trans_valid(777): rxdata transfer > host maximum这个报错。这个问题的解法是你初始化spi_transaction_t t;后需要清理内部的数据具体原因不明。
memset(&t, 0, sizeof(t));
另外rxdata transfer > host maximum类似于这种报错我也遇到过,在ESP32技术手册中明确说明,如果传输的字节大于64字节(即64*8位),需要开启DMA传输,否则无法传输。
E (3106) spi_master: check_trans_valid(706): trans tx_buffer should be NULL and SPI_TRANS_USE_TXDATA should be cleared to skip MOSI phase.
如果遇到这种报错,可以看看t.length的值是否为0
spi_transaction_t t;
t.length = ;