0 前言
如果我们只是使用MCU控制LED的亮灭,完全可以不关心GPIO的速度配置。但如果我们使用到了SPI、MII、RMII、FSMC等这些高速总线就必须要清楚每种GPIO速度配置对应的最高速度,避免因为GPIO速度配置过低导致总线速度提不上去。
既然如此,那么GPIO速度是不是越高越好呢?GPIO速度并不是越高越好,越高的速率意味着更大的噪声,会造成EMC方面的问题。通常在满足通讯速度要求下,选择略高于通讯速度要求的那一档GPIO速度即可。
1 STM32F103/F407/H743不同GPIO速度配置对应的最高速度
首先要说明一下最高频率的定义:
满足tr+tf ≤ (2/3)T、占空比在45-55%之间,则认为这是能达到的最高频率。
1.1 STM32F103不同GPIO速度配置对应的最高速度
STM32F103共支持3种GPIO速度,在HAL库的定义如下: