為微控制器選擇調試/編程連接器

TL;DR 摘要:對於 ARM SWD、TI Spy-Bi-Wire 或 Microchip ICD,使用無腳 Tag-Connect 腳印與標準針/墊分配,並獲得 Tag-Connect 電纜。

在設計使用微控制器的設備時,需要提供一個調試和編程連接器。這可能僅用於開發時,當編寫和調試軟件時,或也可以留在生產單位中,用於工廠內編程。

製造商和工具製造商確保我們生活在一個充滿了調試連接器和圍繞它們的混亂的世界。這就是為什麼我們最終得到這個:

那麼,對於新設計來說,應該選擇哪種連接器?

本文主要關注具有SWD(單線調試)接口的ARM設備,但也適用於其他零件,如使用Spy Bi-Wire(2線JTAG)協議的德州儀器MSP430,Microchip ICD,或甚至需要更完整的JTAG引腳集的零件。

流行的調試連接器

常見的一些選擇經常被考慮:

  • 0.1英寸IDC頭的10針JTAG。通常使用公頭。缺點:它很大,且頭部需要花錢。
  • 使用0.05英寸微型頭(10針或20針,Samtec FTSH-110和FTSH-105)的Cortex調試連接器。10針連接器體積合理且可作為SMD零件使用,但比IDC連接器更昂貴。
  • 0.1英寸20針IDC連接器。你不是認真考慮那個恐龍吧?它比我設計的一些板還大。
  • 自定義的4針或6針(或通孔,或銅墊)。這裡的問題是“自定義”部分。這最終會在未來某一天咬你一口,當你的自定義連接器在工廠地板上斷裂,你必須從海外運送新的連接器,同時生產被迫停止。
  • Tag-Connect 6針腳印中的一種(帶腿或不帶腿)。注意這裡沒有連接器:只是PCB上的一個標準化腳印。
  • Tag-Connect 6針+ Tag-Connect 10針(用於ETM信號):對於這種組合,甚至有一條預製的電纜可用,帶有20針IDC連接器和標準ARM Cortex 20針分配。

一個立即的觀察是,這些連接器大多數需要,嗯,連接器。這是您需要在板上放置的額外元件,這會花錢。對於生產單位或較大的原型運行,該連接器在產品的整個壽命中只會使用一次,這是一種浪費。

Tag-Connect解決方案或帶有彈簧針連接器的自定義腳印在這裡有一個明顯的優勢,即它們不需要在PCB上放置任何組件,因此每塊板的調試連接器成本降至0,這是非常棒的!

這是Tag-Connect腳印在真實電路板上的樣子:

這是帶有彈簧針的電纜的樣子: 第二個主要考慮因素是尺寸,以及結果的電路板空間要求。唯一的競爭者是10針0.05英寸微型頭和Tag-Connect 6針腳印。10針微型頭實際上在一個方向上稍微小一些,但差異不大。這是10針0.05英寸微型頭的樣子(這個來自Nordic Semiconductor nRF52832開發板,PCA10040):

有腳還是無腳?

有兩種Tag-Connect連接器電纜:一種帶“腿”,一種不帶“腿”。有什麼區別?

Tag-Connect 使用彈簧針,內部有彈簧,並且推壓 PCB。如果您想讓連接器保持在位,您必須持續施加力量。這對於快速編程來說是可以的,在那種情況下,您可以用一隻手保持連接器到位,另一隻手啟動編程任務,但對於延長的調試會話來說,這並不那麼有效。對於那種情況,「腿部」足跡(和連接器)要好得多。腿部充當小夾子,所以一旦您插入連接器,它們就會彈入位並緊緊地將彈簧針固定在板上,時間無限制。

"腿"足跡的問題在於它的大小:它顯著大於"無腿"變體。更糟的是,它需要在電路板上鑽四個大孔。大孔總是一個問題:它們(顯然)需要穿過所有層,而且您還需要在它們周圍留出保持區。這意味著"腿"足跡對您的設計的影響比"無腿"變體要大得多。

對於生產單位,其中的連接可能在產品的一生中僅進行一次,並且可以輕鬆手持所有時間,毫無疑問:您絕對更喜歡"無腳"腳印,它節省了板空間。但對於原型機怎麼辦?一方面,您可以負擔得起板空間,但另一方面,您不想僅因為需要在最終修訂中移除孔而重新設計PCB。

幸運的是,還有另一種解決方案。Tag-Connect 出售一種小型保持夾。這是一塊 PCB,上面有三個插座,適合 Tag-Connect 電纜的針腳。這不是一個機械上完美的解決方案,而且夾子隨著時間的推移會磨損(它們也非常容易丟失!),但實際上它運作得相當好。

我的建議是始終選擇“無腳”腳印和電纜,購買一堆保持夾,並節省電路板空間和重新設計電路板。

使用標準信號分配

我在野外見過硬件,設計師在ARM SWD(在Cortex-M0上)上使用了Tag-Connect腳印,但分配了不同的信號。動機可能是為了混淆接口。

我不推薦這樣做:混淆很容易被發現,並且最終會得到一個不兼容的腳印,這將不可避免地導致未來的麻煩。

實用性

Tag-Connect建議不要在足跡的另一側放置元件(或路由線路)。雖然這是一個好建議,但在具有緊湊布局限制的小板上,人們並不總是有這種奢侈。

正如我所發現的,即使使用保持夾固定電纜,也可以在另一側放置零件。不過,我建議在零件和保持夾之間使用一塊絕緣體,以防止任何可能的短路(紙張效果很好)。雖然這不是推薦的做法,但這確實可行,儘管固定調試連接器變得有點複雜。

這是一個原型板的例子(請原諒原型焊接質量),其中元件放置在調試腳印的區域內:

批評

Tag-Connect並非全是好處。網站組織得不好,所以很難找到您正在尋找的信息。提供了多種變體,即使大多數人只需要一種類型的電纜,它也不是顯眼地展示。不幸的是,這似乎是嵌入式世界中製造調試和編程設備的公司的傳統。

我第二個不滿是該公司提供了帶有 Tag-Connect 腳印的可下載 CAD 庫,但聲明說:

這些文件按「原樣」提供,不保證它們是完整的、無誤的或適合使用的。在Tag-Connect網站上(見下文)提供的最新數據表中仔細檢查導入的貼片,特別是檢查孔尺寸、針腳編號,並仔細關注焊膏防護層,以確保沒有焊膏沉積在貼片墊上。

如果您查看提供的ZIP文件,通常會有給定CAD的幾個腳印變體。我該使用哪一個?為什麼驗證它是我的責任?

我認為Tag-Connect應該清理這個庫並提供一套支持的腳印,至少對於更受歡迎的CAD包,不帶免責聲明。它應該是這個解決方案的價值的一部分。

結論

總的來說,Tag-Connect仍然是最佳的現成調試和編程解決方案。我建議在您所有的設計中標準化使用它。

早期博客文章: KiCon 2019 (2019-03-27)
後續博客文章: 2020年5月的新功能 (2020-05-16)