一):添加的库文件,在删除之后,同样需要进行在工程中remove相应的文件
二):stm外部端口中断的编写事项:在对外部中断寄存器EXTI_CR1进行设置的时候,不要如下一位一位的设置
EXTI_CR1&=~(1<<7);
EXTI_CR1|=(1<<6);
这样可能会触发意外的中断响应,很不安全。本意是想对上升沿进行中断响应,而在第一条语句后,会使低电平和下降沿都会触发中断。正确的书写方式如下:
unsigned char temp=EXTI_CR1;
temp&=~(1<<7);
temp|=(1<<6);
EXTI_CR1=temp;
三):MCU 与外围高低电平相匹配.对于多个独立电源连接时,要确保地共地,VCC共VCC
不一致的话,可能会导致逻辑错误,不能正确工作、转换,甚至烧毁芯片等。
四):MCU与外围芯片异步时,不要进行耗时操作。如用stm串口完成printf输出到电脑,而实际串口速度是很慢的,在射频收发中已经影响了判断的时序了,可以保存在一个数组中,不要做出立马传输。要有很明确的微观时间观念,在MCU与外界串口通信时的一个位时间间隔内,内部能做系列的中断判断等操作。MCU与外设交互的时候,需要外设完成一些操作的话,那么MCU 要做相应的延时操作。一般可加一些延时函数,或者在while循环条件中看值是合发生了变化。
五):①使用IAR编译下载时出现can't find the following file,可能为用的是移植过来的之前编译好的.o和.pbi等文件,里面存有路径信息,而现在发生了变化。将Obj目录下的文件删除,重新进行编译链接即可。
②选择工程中的某一个.c文件,生成的是对应的.o和.pbi文件等
③选择Make会对整个工程.c文件进行重新编译链接
...................................会持续更新的