有没有esp32s2的例程DMA实现的SPI传输
Posted: Mon Dec 07, 2020 5:45 am
有没有esp32s2的例程DMA实现的SPI传输,IDF中有SPI的例程,哪个例程是实现中断的,哪个例程是实现DMA的?
还有SPI支持乒乓操作吗?
我预期的应用是SPI每收到512B就发一个中断,在现有的SPI_SLAVE例程中,是在循环中调用spi_slave_transmit(),什么时候收到了512B,我不知道啊,
1,如果这个是阻塞语句,由于配置的bus_size是512*8,当运行完成的时候是不是就是512B传输完成的时候?
当然就算答案是肯定的,显然这种实现也是不现实的,因为这会占用大量资源,我别的程序还跑不跑了?
2,如果用spi_slave_queue_trans(),再一直查询,可能比上面这个好一点,但我觉得也很不好啊,有中断吗?收到预定数量的数据发一个中断!!
还有SPI支持乒乓操作吗?
我预期的应用是SPI每收到512B就发一个中断,在现有的SPI_SLAVE例程中,是在循环中调用spi_slave_transmit(),什么时候收到了512B,我不知道啊,
1,如果这个是阻塞语句,由于配置的bus_size是512*8,当运行完成的时候是不是就是512B传输完成的时候?
当然就算答案是肯定的,显然这种实现也是不现实的,因为这会占用大量资源,我别的程序还跑不跑了?
2,如果用spi_slave_queue_trans(),再一直查询,可能比上面这个好一点,但我觉得也很不好啊,有中断吗?收到预定数量的数据发一个中断!!