硬件SPI与软件模拟SPI速度区别实测

硬件SPI与软件模拟SPI速度区别实测

目前为了程序移植方便,许多以SPI接口的芯片所提供的参考代码大多都使用的是软件SPI,比如笔者用过的存储芯片W25Q16,SPI接口驱动的OLED显示屏,LORA芯片SX1278等。
最近为了驱动彩色OLED显示屏,为了提高显示刷新率,需要对程序代码进行优化。于是,将相关SPI驱动从软件模拟转换为硬件控制,就势在必行了。
然而,到底软件模拟SPI和硬件SPI有多大的速度区别呢/p>

1.系统配置

为了测试的公平性,选用同样的ARM(STM32L151C8T6)以及系统时钟(32M),配置如下图所示:

4.总结

通过对比我们可以很明显的看出,硬件控制SPI比起软件模拟SPI,在相同系统时钟的情况下,速度要快上32倍。故而,有SPI总线高速需求的环境下,应当使用硬件控制方式来进行SPI通信。

5.补充

高速SPI固然让人收益巨大,但也有一定弊端,比如电路走线易受干扰,以及部分芯片对SPI总线速度有约束,不能设置得过高。在上升时间与下降时间有特别要求的SPI外设下,需要特别注意总线寄生容感。
为了提升SPI速率,在程序优化上需要下功夫,减少字节间的传输延迟。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年5月15日
下一篇 2020年5月15日

相关推荐