2019-07-31 15:44发布
zhangmangui 发表于 2014-4-29 21:28 你说的跳针是干什么的 要么启动要么不启动还可以理解 启动时挂仿真器 会不会是代码在RAM中跑了 ...
最多设置5个标签!
关于自己的板子有时不启动的问题已经找到了,应该是晶振过大的问题。
过程是这样的,我拉了一个做硬件的老师傅帮我找问题,用示波器测量启动时刻的数据线、地址线,发现正常启动时复位后的读信号和片选信号都是正常的;一旦启动不起来,在复位后读信号、片选信号也是有的,但是紧跟着会出现一个3.1M的时钟信号(不知道如何产生的),而且这个信号一直有,就像死循环,所以代码就跑不起来了,启动失败。
老师傅耐心的把开发板和我们自己的板子做对比,发现启动阶段,我们读写周期是7.9ns,开发板是3.9ns,(忘了是us还是ns了,反正是2倍关系哈)。然后我就反应过来我们的晶振是50M,开发板是25M,刚好是它的两倍,老师傅就干脆换个小点的晶振试试。于是换了个16M的,奇迹发生了,哈哈:lol,断电连续试验100次全部启动成功,按复位键重复试验100次也全部启动成功,总算解决了问题。
然后老师傅就说可能启动对时序有要求,外部晶振不能太大啊!
和老师傅一起干活就是爽,有耐心,抓得住关键啊,问题一找一个准,可惜他今年就要退休了,以后麻烦了啊,出问题都不知道找谁!:'(
这个问题得到解决哈,把原因给大家分享,也谢谢各位大侠的指点!还望各位继续在其他问题上多多指点我这个菜鸟哈!:loveliness:
一周热门 更多>