最近在做一個產品升級改造的項目,需要把老產品的51換成STM32。在更改電路設計時遇到一個奇怪的報錯現象。採用的繪圖軟件是最新版的Altium Designer16.1。在更改完善原理圖後,把原理圖的更改導入到PCB文件中後,把生成的ROOM刪除後, PCB中幾乎所有焊盤、過孔和導線還是呈現報錯的亮綠色。如下圖所示,一個焊盤竟然還顯示ClearanceConstraint的錯誤。這太匪夷所思了。
剛開始以爲是佈線的影響,把所有的佈線全部Un-Route之後,還是滿屏綠油油。接着進行規則檢查,嚇了一跳,一點佈線都沒有,竟然出現10839處Short-Circuit以及12528處ClearanceConstraint。真是太奇怪了。
把鼠標靜置在一個固定孔上,竟然出現滿屏的錯誤。
直覺告訴我,這些焊盤、過孔全部都粉身碎骨然後還上下層全部黏連在一起,不然僅僅一個沒佈線的固定孔能夠出現這麼多錯誤。而造成這一現象的原因很可能是文件內容損壞,或者文件格式衝突。由於之前PCB採用protel 99se設計,而我採用的是Altium Designer16.1,之間隔着N多版本,以前的PCB文件就像穿越一樣,和現在的版本格格不入。
針對上邊的分析,新建了一個PCB文件。由於個人比較懶,不想完全重新設計,於是把老版本PCB文件全選之後複製粘貼到新建的PCB文件裏。然後上邊的報錯問題就解決了。
按道理講新版本軟件應該兼容老版本軟件設計的文件,以前採用的 DXP2004以及Altium Designer 6.9等均能很好的支持protel 99se版本的文件。但是這次卻出現了了這樣的問題,不知道是偶然現象,還是說Altium Designer16.1和protel 99se確實相差太多版本,導致兼容性不好。