#程序员#
发现了一个有趣的Bug:freeRTOS中如果有使用软件定时器的话,一定要注意:如果没有创建定时器或者创建定时器不成功就去开启某个定时器的话,会出现导致cpu直接挂掉的问题,而且你在编译的时候还不会提示什么错误信息,不细心的话真的很难发现!
原本定时器我是创建好了的,启动前就已经创建了,但是因为遇到一点其他的bug,想着可能跟软件定时器的回调函数有关系,就先把定时器的创建屏蔽掉了,但是忘记了屏蔽启动定时器这个操作了。
所以在编译没有报出错误的情况下下载代码到MCU中运行,每次都是CPU跑着跑着就挂掉了,废了好一番功夫才查找到问题。
所以软件定时器使用一定要规范,必须要先创建甚至是要判断创建成功了再去启动,否则出现一些莫名其妙的问题你可能还不好找。
大家在项目开发中都出现过一些什么奇怪的Bug呢?