1、FPGA肯定没有问题。 理由: 你先跑ARM后跑FPGA的测试问题依旧。DEMO板的测试也说明同样的问题。
2、关于晶振的问题,晶振温飘太高,随着ARM温度的升高频率在改变,导致SPI——clk漂移。 但是,不可能每次都是10分钟出问题。比如刚过10分钟,reset一下,时间很短,arm的温度还没有降下来,在运行很短时间就可能达到同样的温度。 如果看不到对应的结果,则不会是晶体的原因。(其实从SPI机制和速率来看,这个可能性也不大) 。 当然,也可以用温补的有源晶体振荡器替换测试。
3、串扰: SPI总线串扰,其他信号串扰SPI,伴随温度的影响, 但是现象必然和上一条一致。 示波器就能监视到串扰现象。
4、程序问题:居然相同的测试程序在两个板子上跑的结果不同,说明程序配置并没有问题。 当然,测试程序和你自己的程序并不是一回事儿。也不能排除你自己程序没有问题。但是说明你自己的ARM板硬件肯定有问题。
5、如果以上测试都严格无误,我觉得可能的问题有:ARM芯片本身的问题、422芯片的问题。layout问题,焊接质量问题。
你所说10分钟的间隔,重点观察一下,每次都是10分钟,和每次不一样是完全不一样的。这一点可以排除很多可能性。
|