CW32饭盒派开发板 测试IO速度_环球报道
对CW32饭盒派开发板的GPIO进行速度测试
2023-05-26 14:10:18
(资料图片)
测试不同情况下IO翻转的速度
int main(){uint32_t i;RCC_Configuration(); //时钟配置64MGPIO_Configuration();//LED初始化while(1){ PA08_TOG();}}
速率为4MHz:
使用直接写高BSRR/BRRint main(){uint32_t i;RCC_Configuration(); //时钟配置64MGPIO_Configuration();//LED初始化while(1){PA08_SETHIGH();PA08_SETLOW();}}
所示频率为6.41MHz
我们看到上面的波形占空比好象不是50%,是因为跳转也需要点用时间,所以我修改了一下代码进行测试:int main(){uint32_t i;RCC_Configuration(); //时钟配置64MGPIO_Configuration();//LED初始化loop:PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();PA08_SETHIGH();PA08_SETLOW();goto loop;}
测得波形如下:
从上图我们得知频率可以达到15.9MHz。
经查看数据手册,GPIO有两种速度模式一种高速,一种是低速,但是我配置高低速都是一样。【总结】经测试,对GPIO进行了原子的操作,最高速度可以达到15.9MHz。对寄存器直接写BSRR、BRR,相比TOG速度还是要快很多。当于提供了TOG这个寄存器,对于需要翻转电平,还是非常方便的。审核编辑:汤梓红
标签: