1.书写中断函数的时候,比如在stm32f10x_it.c中,voidEXTI15_10_IRQHandler(void),名字一定不能写错,不然虽然编译的过程中不会出错,实际运行起来该函数还是不会执行!!!!
2.在填写Options for Target 选项卡C/C++过程中,Preprocessor Symbols的define一栏中,要根据芯片来填写,否则编译会出错。比如STM32F103VET6这款是high density,应该填写的是STM32F10X_HD,而当芯片换成STM32F103C8T6的时候,就应该改成STM32F10X_MD了!完整的,后面还应该加上USE_STDPERIPH_DRIVER
3.串口通信的时候,如果要使用printf重定向,记得把微库的√勾上!!
4.使用3.5的标准库的时候,SystemInt()函数不需要在初始化的时候写上,因为3.5的库在Options for Target选项中填写驱动的时候,里面已经将该初始化调用了。。。但是在使用HAL库的时候要注意,这一项还是要写上。
5.某个函数按F12不跳到对应的地方,一个可能是没有编译,另外一个可能就是不止在一个地方定义了该函数,一定要注意。
6.KEIL里面自带的逻辑分析仪打开的正确方式:只有在debug里面仿真的情况下才可以使用逻辑分析仪。
再来补充。