|
本帖最后由 zqf441775525 于 2014-6-25 11:03 编辑
以前一直用STM32用着很顺手,从来没有遇到过不能仿真的问题。
这次一个项目要求使用STM32F207 + FPGA,FPGA用于高速信号采集。
考虑到FPGA也可以拿出来一部分作为STM32F207的外部硬件看门狗,就把STM32F207的RST引脚接入到了FPGA的一个普通IO,FPGA的这个IO推挽输出,最大电流12mA。这下问题来了:
FPGA的此IO输出高,STM32F207的时钟正常,电源正常,使用SWD接口,编译软件keil-MDK,但是STM32F207死活无法仿真,即使勉强进去了仿真页面,PC指针也是乱的。
然后退出调试模式,再次量电源,正常,纹波正常;晶振正常,RST引脚正常……
然后进入调试模式,不行……
然后退出调试模式,再次量电源,正常,纹波正常;晶振正常,RST引脚正常……
然后进入调试模式,不行……
然后郁闷中……
……
昨天一个下午一直干这个循环了……
今天早上再次上电,进入调试模式,量电源,正常,纹波正常;晶振正常,RST电压2.1V左右……
好像发现了问题,肯定是RST有问题。看了以前的原理图,RST引脚是通过一个电阻上拉到VCC的,也许是这个电阻的问题?
然后去割线,串电阻,再上电,debug,OK!心中大喜!原来确实是RST引脚惹的祸。
问题解决后,用示波器观察STM32F207的RST脚,在MDK进入debug模式的时候RST会有一个30uS的低电平,估计之前直接接FPGA就是这个低电平没有被正常拉低造成的。
猜想:如果STM32使用外部复位芯片,最好也不要直连,串上一个电阻为好。
现在正在Ctrl+C,Ctrl+V程序中……
编辑原因:刚才还写完就失手发布了,继续写完。 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|