版主好: 我最近用Keil+ulink2在STM32F101RB上开发的项目中用了ST提供的IAP作为Boot loader,应用程序放在0x8002000位置,但是我发现,我的应用程序不用Boot loader直接放在0x8000000位置时一点问题也没有,但是当我用Boot loader然后把程序烧至0x8002000位置时我通过计算机外接串口向开发板发送数据就会导至我程序一直在串口中断里跑不出来!我用Keil调试时发现串口2寄存器的IDLE中断标记位被置起来了(而我程序里面只打开三个串口的接收和发送中断),然后中断就周而复始的运行,一直没空闲执行别的程序,而程序在0x8000000时没有发现这种现象!在我不用计算机向串口2发送数据的时候,程序运行正常,所有的中断响应也正常!我都郁闷好久了,希望版主能给点建议! |