前段时间论坛有朋友提议用STM32F429这个芯片,刚好有个项目有这样的使用需求,于是做了个这方面的样板测试,当然,在做样板前买了一个别人的开发板,感觉性能不错,开发方便。这个项目分为核心板和底板,核心板使用4层板,底板两层就好了。
PCB的设计只要原理图正确,加上合理的布线,剩下的事情就是PCB厂了。至于在这个布线的时候,也参考了网上的一些说法,一个是SDRAM要等长线,实验证明这个并不是必然需要,当然前提是我现在使用主频是180M,SDRAM大概是90,线的长度差异不太大,基本没有问题的。另外要注意的是你的PCB生产长的工艺,我这次部分板子的问题估计是出在没有完全满足他们的工业。
先上个测试成功的图片。
从图中可以看出,基本上连线等方面的地方都没有太严谨的要求都可以正常工作,就好像LCD的连接是通过一条30cm左右的硬盘线连接。底板和核心板直接通过过孔相连,后面估计是会做成邮票孔的,因为现在焊接很不方便,只是为了先验证原理和4层板的性能。
跑了几个DEMO来测试性能,感觉都是没有问题的。心里的大石头终于可以放下,因为在这个成功之前却是排除了不少可能的问题。
焊接第一个样机后,上电测试,发现屏幕有图像显示,但是不停闪烁,相当郁闷,以为是网上说的SDRAM没有使用等长线,心中后悔不已,当不言败,把DEMO的时钟降低,在观察LCD,感觉还是一样,按照经验,觉得这个跟SDRAM的布线关系不大了,再对比了一下别人的开发板,我的就是SDRAM的时钟不一样,但觉得应该不是问题所在,无奈之下还是换了一个一样参数的SDRAM,结果还是一样。
心中觉得问题难道真实败在这个等长线上吗?还是板子问题,没有焊接好,于是在焊接了一个,焊接好后,上电,眼前一亮,问题没有了。跟别人的板子一样的效果。一个字“爽”。
于是去分析问题:
(1)估计板子的工业没有完全按照厂家要求,导致个别差异。
(2)SDRAM等长不是必须,但是较高的时钟线要处理好,因为我发现有问题的那个板子闪烁的节奏跟时钟有点关系。
(3)STM32F429这个芯片的核心板在使用SDRAM和FLASH的时候,基板上都要用4层板,按照我这个板子的做法,应该没有太多的要求,当然信号和电源等的地方遵守一下4层板的规范就好了。
(4)429跟LCD的连接之间并没有很大要求,我的板子经过几个转接板和延长线,出来的结果就是看不错差异。其实这个跟我们电脑显示器的延长线相当。