一、问题出现:
用MDK编译“LED工程——定时器中断延时”实验代码时,出现了这错误!它困扰了我好几天,不能再拖了,今天,我希望能攻下它! identifier “LED0_OFF” is undefined 翻译:标识符“LED0_OFF”未定义
二、解决过程:
今天早上,利用32课堂时间(约1.5h)一次性看了二十篇类似问题的帖子,试了操作较简单快速的方法,不行,剩下的几个操作复杂的方法还没试用,而且我还没法定位我的问题所在,这时我猜想估计这bug得耗掉我这一整天的时间了,得做好攻坚战的准备。此时,32老师的课讲的天花乱坠、铿锵有力,但我要攻城掠地、忙得不可开交。接近下课时,CSDN上还有很多相关问题帖子,我感觉看不完,那就先试着挑几个方法试试先,不行再找帖子总结其它方法!
临近下课,我冷静下来想理清一下可行的解决方案,发现这个bug的定义跟我几天前解决过的bug有相似之处:都是未定义! Undefined symbol TIM3_PWM_Init (referred from main.o) 意为:TIM3_PWM_Init 在 main.c文件里被调用,但未被定义!
好家伙,我试试那时的解决方法咯,在这个尝试的过程中,当然是无果! 但是,就在此时,我想起了解决Bug:Undefined symbol TIM3_PWM_Init (referred from main.o)过程中网友提到的一个方法:直接把TIM3_PWM_Init函数的定义写在main.c中! 那么,虽然当时此法没能解决那时的bug,但是这次的遇到的标识符“LED0_OFF”未定义bug用此法会怎么样?运行结果证明,可以解决!
三、解决方法:
直接把LED的函数的定义写在main.c中 !
1.剪切函数void TIM3_IRQHandler(void)到main.c中! 运行通过,nice!
|