banner
Lar / Notícias / Explorando Código
Notícias

Explorando Código

Sep 05, 2023Sep 05, 2023

Ao contrário da programação, em que um desenvolvedor pode escrever uma função para usar muitas vezes em outras partes do programa, o design da placa de circuito ainda carece desse conjunto de recursos. Por exemplo, criar uma grade de LEDs com conexões para determinados pinos ou adicionar um bloco de teste para cada uma das entradas de um conector pode levar muito tempo para ser realizado. Mas, como Cayden Pierce mostra em seu mais recente projeto de PCB, ferramentas modernas como JITX permitem que os engenheiros criem placas escrevendo código em vez de selecionar pegadas, permitindo assim uma ampla gama de possibilidades de automação e extensibilidade.

Um bom exemplo dessa técnica é a criação de uma placa de quebra/teste para cabos, pois cada pino precisa de um bloco de teste, LED e uma etiqueta. Além desses requisitos, o testador de cabo USB-C da Pierce também precisaria de um valor de resistor limitador de corrente diferente para cada LED devido às diferenças de brilho entre eles. Para o fio dentro do cabo USB, uma tensão seria enviada da extremidade da fonte e recebida na outra extremidade, que está conectada a um bloco de teste e a um LED com limitação de corrente que acende se o fio estiver conduzindo corretamente.

A primeira etapa do projeto do PCB envolveu a definição de uma rede de energia para a linha de tensão positiva e a conexão de todos os pinos no conector USB "fonte" a ele. A partir daqui, os pontos de teste foram definidos dentro de um loop que atribui um rótulo e o coloca próximo ao pad, além de conectar o pad ao seu pino associado no outro conector USB. Os LEDs também foram definidos programaticamente, exceto que a função de criação também leva em consideração a cor ao selecionar o valor do resistor devido aos níveis de brilho desiguais entre as cores.

Tradicionalmente, passar da fase esquemática para a fase PCB do projeto de circuito em uma ferramenta EDA herdada envolve arrastar cada pegada para a placa e executar os traços de acordo com as redes, o que leva muito tempo. Pierce, no entanto, foi capaz de definir programaticamente onde queria que cada bloco de teste/resistor/LED definido por meio de alguma aritmética simples dentro do mesmo loop onde eles são definidos. A última etapa foi usar o recurso autorouter do JITX que executa rastreamentos automaticamente entre os componentes com o mínimo de intervenção humana.

Ao optar por um design que prioriza o código, Pierce mostrou como ele poderia economizar horas ao projetar seu PCB de teste de cabo USB-C em comparação com os métodos tradicionais. No futuro, ele poderia facilmente adicionar mais componentes, linhas adicionais ou outros conectores e gerar rapidamente rotas e layouts. Você pode ler seu código e o tutorial com mais detalhes aqui em sua postagem no blog.