由我亲自试行Altium Designer 22与STM32F103C8T6最小系统板,经历过原理图库跟PCB封装不相匹配的难处。
1. 原理图绘制,别让连线变成一团乱麻
启动Altium Designer,创建新项目,进入原理图库,一定使用官方或者已经验证过的库文件,针对STM32F103C8T6,建议直接搜索“STMicroelectronics”官方库,免去手工描画错误的引脚定义,放置元件之后,运用“Place » Wire”开展连线,留意分辨“Wire”与“Bus”,信号线路使用Wire,数据总线使用Bus。
【新手避坑】:存在常见报错情况:在原理图进行编译时,会有提示表明“Net has no driving source”。其核心原因在于,电源网络或者地网络,未曾得到正确的命名,或者连接存在问题。具备的解决办法是:要把电源网络一致地命名为“VCC”或者“+3.3V”,地网络统一设定为“GND”,并且运用“Place » Power Port”来放置电源以及地的符号,千万不可使用Wire去连接电源引脚。
2. PCB布局,摆得对才是成功的一半
在完成原理图之后,必须要执行“Design » Update PCB Document”去进行同步。在PCB文件当中,第一步是对层叠结构加以设置。针对于双层板而言,推荐的关键参数是:顶层信号加上底层GND覆铜。其设置的理由为:底层完整覆铜能够提供最低阻抗回路,针对电磁干扰(EMI)能够起到有效的抑制作用,而且还能够显著提升焊接时的散热均匀性。
【新手避坑】 存在比较常见的报错情况:当进行DRC检测时,会出现“Clearance Constraint Violation”这个情况。其最为关键的原因是,元件之间的间距明显过小。对应的解决此类问题的办法是:在范围是“Design » Rules”里范畴中,要把“Clearance”里的“Minimum Clearance”设定成为0.254mm(也就是10mil)数据值,而这一数值刚好明确是大多数打样工厂所遵循的常规工艺的极限范围。同时对“Diff Pair Routing”规则展开检查,特别是针对USB、CAN等这类差分信号,一定要设置等长约束。
3. 布线跑通,参数设置决定成败
当进行手动布线时,电源线以及地线的宽度起码要设置成30mil,而信号线10mil就行。针对于高频信号(像是8M晶振),一定要使走线短且直,并且要远离板边。在实际操作当中,存在两种方案:方案A,是全部进行自动布线;方案B,是关键信号给予手动布线方式,其余的采用自动布线。方案进行取舍时所依据的逻辑是:对于那种情况,要是你的板子层数超出了4层,并且信号频率是低于50MHz的,那么方案A就已然足够;然而,对于有像这样双面板,还有晶振以及包括USB线的项目而言,是强烈推荐使用方案B的,要手动去处理晶振、差分对以及电源主干这些部分,对于普通IO线则是自动处理。
【新手避坑】:高频呈现完整报错情况为:晶振没办法启动振荡,使用示波器测量得出输出是直流电平。完整的解决流程是这样的:先要去检查晶振负载电容的容值,看它是不是与数据手册相匹配, STM32F103常常配备的是18pF或者22pF;接着,检查晶振的走线,看其是否过长,规定必须要小于10mm;然后,检查晶振的底部,看它是否跨分割平面,要确保其下方有完整的GND参考;要是以上这些情况都是正常的,那就去检查芯片的RTC模块供电以及初始化代码。
由于那时还得将特征阻抗、串扰以及传输线效应纳入考量范围,所以这个方法并不适用于那种多层位于4层以上且信号速率超出500MHz的高频板卡设计。替代方案并非仅仅依靠肉眼以及经验去布线,而是采用HyperLynx或者SIwave展开信号完整性仿真。










