keil调试问题记录
1、错误类型:L6218E:Underfined symbol &&&&&&&&& (referred form &&&&&.o).
现象说明:明明已经定义了&&&&&&&&&函数,也有&&&&&&&&&函数的实现,也包含头文件了,可就是在连接时提error,goto define 跳转不过去。
解决:总之是函数实现部分的代码没有包含,从这方面找原因:宏定义开关未打开、实现的代码中有未实例化的部分、头文件与宏开关的顺序,等等。
2、进入不可屏蔽中断NMI,查找定位从哪句代码导致的。
让程序进入不可屏蔽中断NMI,打开寄存器窗口,找到下图中SP的内容,此为程序地址;
复制此地址到memory窗口中,然后把内存中的数据以无符号int显示:
找到第7个位置的内存单元,把该地址内容记下来,然后在disassembly窗口中查找到该地址的位置,对应的代码就是导致进入不可屏蔽中断NMI的地方。
3、