评估STM32 SPI读写速度的方法及结果分析

目的:测试STM32H7 系列芯片的SPI读写速度。

测试环境:使用STM32H743, 逻辑分析仪, cubeIDE;

测试方法:使用了3种方法:软件IO模拟SPI, 软件控制CS+MCU的SPI模块,完全使用SPI模块;

结论:

STM32 SPI读写速度评估:

  1. 软件IO模拟SPI,system clock 100M的情况下,1个读/写周期(3byte),大约90-120uS;
  2. 软件IO控制CS,system clock 100M的情况下,1个读/写周期(3byte),大约25-35uS;
  3. 硬件模块SPI,SPI波特率4M的情况下,1个读/写周期(3byte),大约15-20uS;

测试过程:

1. 软件IO模拟实现SPI

2. 软件控制CS,MCU的SPI模块控制CLK MOSI MISO

  CS的延时比较大,写3byte(24bit)的数据大约需要30微秒。

3. 使用MCU SPI模块实现CS CLK MOSI MISO操作

在SPI baudrate=2M , 写3byte(24bit)的数据大约需要20微秒。上图测量结果可以看到,CS是低电平有效,不对SPI进行操作,该电平为低电平,对外设不友好。

将CS 采用Pull-up mode,CS 使用完毕处于高电平。

 

 

物联沃分享整理
物联沃-IOTWORD物联网 » 评估STM32 SPI读写速度的方法及结果分析

发表评论