偶然发现spi dma如果在单个字节速度会比spi模式慢很多, 因此做一个对比
SPI速度设置为16M
1 单个字节收发
SPI模式
可以看到每个字节的数据之间有不是连续的, 中间会有一段时间没有数据
SPI DMA模式
如果每次收发1个字节, 会慢很多 达到8us, 远远超过了SPI模式
2 SPI DMA大量数据读写
因为SPI模式间隔和单字节是一样的,这里就只测试SPI DMA模式
可以看到SPI DMA数据和数据之间是连续的
3 SPI模式和SPI DMA模式读FLASH 4096字节数据时间
SPI模式13ms
SPI DMA模式2MS
4 SPI DMA不同速度下读4096字节时间对比
1 16M -2ms
2 32M-1ms
3 50M -600us
4 100m-350us
5 总结
1 如果是单个字节, 那么SPI模式速度比SPI DMA模式块
2 如果是大量数据传输, 还是DMA速度快很多倍
3 SPI时钟速度越快, 大量数据传输的优势越明显
版权声明:本文为a2267542848原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。