如题,这是一个非常简要的配置错误。

错误触发原因

对普通的GPIO引脚进行初始化的时候错误配置了引脚:
正常的配置例子:

(void)GPIO_Init(LED_RED_PORT, LED_RED_PIN, &stcGpioInit);

错误的配置例子:

(void)GPIO_Init(LED_RED_PORT, LED_RED_PORT, &stcGpioInit);

该错误导致的现象

1、芯片延迟函数运行时间超大幅度拉长。
2、运行短时间的延迟函数可以跑出来,但是如果长时间,比如延迟1s,则会一直卡死在延迟。

DDL_DelayMS(1000);

3、由此(2中的现象)推断和测试发现是芯片频率没有跑上去

发现和处理

芯片频率一直跑不上去,debug半天,审查代码最终发现是GPIO配置写错。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐