Resumo TL;DR: para ARM SWD, TI Spy-Bi-Wire, ou Microchip ICD, use a pegada Tag-Connect No-Legs com atribuições padrão de pin/pad, e obtenha cabos Tag-Connect.
Ao projetar dispositivos que usam microcontroladores, é necessário fornecer um conector de depuração e programação. Isso pode ser usado apenas para desenvolvimento, ao escrever e depurar software, ou também pode ser deixado em unidades de produção, para programação em fábrica.
Fabricantes e fabricantes de ferramentas garantiram que vivemos em um mundo onde há uma infinidade de conectores de depuração com muita confusão ao redor deles. É por isso que acabamos com isso:
Então, qual conector escolher para um novo design?
Este artigo se concentra principalmente em dispositivos ARM que possuem a interface SWD (Single-Wire Debug), mas também é aplicável a outros componentes, como o Texas Instruments MSP430 que usa o protocolo Spy Bi-Wire (2-wire JTAG), Microchip ICD, ou até mesmo componentes que precisam de um conjunto mais completo de pinos JTAG.
Algumas das escolhas comuns que são frequentemente consideradas:
Uma observação imediata é que a maioria desses conectores requer, bem, conectores. Esse é um componente adicional que você precisa colocar na placa, o que custa dinheiro. Para unidades de produção ou protótipos maiores, esse conector só será usado uma vez na vida útil do produto, o que é um desperdício.
As soluções Tag-Connect ou footprints personalizados com conectores baseados em pinos pogo têm uma vantagem óbvia aqui, pois não requerem que nenhum componente seja colocado na PCB, então o custo do conector de depuração por placa cai para 0, o que é ótimo!
É assim que uma pegada Tag-Connect se parece em uma placa real:
E é assim que o cabo com pogo-pins se parece: A segunda consideração principal é o tamanho, e os requisitos de espaço na placa resultantes. Os únicos concorrentes são o micro-cabeçalho de 10 pinos de 0,05" e uma pegada Tag-Connect de 6 pinos. O micro-cabeçalho de 10 pinos é na verdade um pouco menor em uma direção, mas a diferença não é significativa. Aqui está como se parece um micro-cabeçalho de 10 pinos de 0,05" (este é de uma placa de desenvolvimento Nordic Semiconductor nRF52832, a PCA10040):
Existem duas variantes de um cabo conector Tag-Connect: uma com "pernas" e uma sem "pernas". Qual é a diferença?
Tag-Connect usa pinos pogo, que têm molas internas e pressionam contra a PCB. Se você quiser que o conector fique no lugar, você tem que aplicar força continuamente nele. Isso é bom para programação rápida, onde você pode usar uma mão para segurar o conector no lugar e outra para iniciar o trabalho de programação, mas não funciona tão bem para sessões de depuração prolongadas. Para isso, o footprint (e conector) "legs" funciona muito melhor. As pernas agem como pequenos clipes, então uma vez que você insira o conector, eles se encaixam no lugar e seguram os pinos pogo firmemente contra a placa, por tempo indefinido.
O problema com a pegada "legs" é o seu tamanho: é significativamente maior do que a variante "no-legs". O que é pior, precisa de quatro grandes furos na placa. Grandes furos são sempre um problema: eles (obviamente) precisam passar por todas as camadas, e você precisa de uma área de exclusão ao redor deles também. Isso significa que o impacto de uma pegada "legs" em seu design é muito maior do que da variante "no legs".
Para unidades de produção, onde a conexão provavelmente será feita apenas uma vez na vida útil de um produto, e pode ser facilmente manuseada o tempo todo, não há dúvida: você definitivamente prefere a pegada 'sem pernas', que economiza espaço na placa. Mas o que fazer sobre os protótipos? Por um lado, você pode se dar ao luxo de ter espaço na placa, mas, por outro lado, você não quer redesenhar a PCB apenas porque precisa remover os furos na revisão final.
Felizmente, existe outra solução. Tag-Connect vende um pequeno clipe de retenção. É um pedaço de PCB com três soquetes que se encaixam nos pinos do cabo Tag-Connect. Não é uma solução mecanicamente perfeita e os clipes tendem a se desgastar com o tempo (eles também são incrivelmente fáceis de perder!), mas na prática funciona muito bem.
Minha recomendação é sempre optar pelo footprint "sem pernas" e cabos, comprar um monte de grampos de retenção e economizar no espaço da placa e no redesenho das placas.
Eu vi hardware no campo, onde os designers usaram uma pegada Tag-Connect para ARM SWD (em um Cortex-M0), mas atribuíram sinais de maneira diferente. É provável que a motivação tenha sido obfuscar a interface.
Isso não é algo que eu recomendaria: a ofuscação é facilmente descoberta, e acaba-se com uma pegada incompatível, que inevitavelmente causará problemas no futuro.
Tag-Connect recomenda que nenhum componente seja colocado (ou traços roteados) no outro lado do footprint. Embora essa seja uma boa recomendação, nem sempre temos esse luxo, especialmente em pequenas placas com restrições de layout apertadas.
Como descobri, você pode se safar colocando componentes do outro lado, mesmo quando usa o clipe de retenção para segurar o cabo no lugar. Eu sugeriria usar um pedaço de isolante entre os componentes e o clipe de retenção, no entanto, para evitar possíveis curtos-circuitos (papel funciona bem). Embora não seja a prática recomendada, isso funciona, embora a fixação do conector de depuração no lugar se torne um pouco mais complicada.
Aqui está um exemplo de uma placa protótipo (por favor, desculpe a qualidade da solda do protótipo) onde os componentes são colocados dentro da área da pegada de depuração:
Não é tudo rosas com o Tag-Connect. O site não é bem organizado, então é difícil encontrar as informações que você está procurando. Há uma infinidade de variantes oferecidas, e mesmo que a maioria das pessoas precise de um único tipo de cabo, ele não é exibido de forma proeminente. Infelizmente, isso parece ser uma tradição com empresas que fabricam equipamentos de depuração e programação no mundo embarcado.
A segunda reclamação que tenho é que a empresa oferece bibliotecas CAD para download com footprints Tag-Connect, mas afirma que:
Esses arquivos são fornecidos 'COMO ESTÃO' e sem garantia de que estão completos, livres de erros ou adequados para uso. Verifique cuidadosamente os decalques importados contra a ficha técnica mais recente fornecida no site Tag-Connect (veja abaixo). Em particular, verifique os tamanhos dos furos, a numeração dos pinos e preste muita atenção na camada de máscara de solda para garantir que nenhuma pasta de solda seja depositada nos pads do footprint.
Se você olhar nos arquivos ZIP fornecidos, geralmente haverá várias variantes de footprint para um determinado CAD. Qual devo usar? E por que é minha responsabilidade verificá-lo?
Acho que a Tag-Connect deveria limpar esta biblioteca e fornecer um conjunto de footprints suportados, pelo menos para os pacotes CAD mais populares, sem uma isenção de responsabilidade. Isso deveria fazer parte do valor desta solução.
Considerando tudo, o Tag-Connect ainda é a melhor solução de depuração e programação disponível no mercado. Eu recomendaria padronizar seu uso e utilizá-lo em todos os seus projetos.
PartsBox é um aplicativo online que permite que você assuma o controle de seu inventário de componentes eletrônicos, precificação de BOM e produção em pequena escala. Ele mantém o controle de onde os componentes estão armazenados, quais são os níveis de estoque atuais e quais componentes são usados em quais projetos/BOMs.