Progettazione
Componenti: importazione o disegno
Cerca e importa simboli e footprint KiCad, correggi ciò che il produttore rifiuta, e costruisci un componente dal suo datasheet quando KiCad non ce l'ha.
Ogni componente su una scheda è due file: un simbolo per lo schema e un footprint per il layout, uniti per numero di pin. Importali da KiCad ogni volta che KiCad ha il componente, e disegnali dal datasheet quando non ce l'ha.
Cerca
agentee search symbol lm358
agentee search footprint soic 3.9x4.9Ogni parola deve apparire in Library:Name, quindi aggiungi parole per restringere una ricerca: soic 3.9x4.9 trova i corpi SOIC-8 stretti e salta quelli larghi.
Importa
agentee import symbol Amplifier_Operational:LM358 --with-footprint
agentee import symbol Device:R --footprint Resistor_SMD:R_0402_1005Metric
agentee import footprint Package_TO_SOT_SMD:SOT-89-3--with-footprint porta con sé il footprint predefinito del simbolo; --footprint ne sceglie un altro e lo collega. I simboli finiscono in symbols/, i footprint in footprints/. --force sovrascrive un file che hai già. Un percorso a un .kicad_sym (con :Name) o a un .kicad_mod funziona al posto di Library:Name per le librerie dei produttori.
Esegui la verifica subito dopo. Il riscontro più comune è la serigrafia:
warning: ./footprints/R_0603_1608Metric.fp.toml: R_0603_1608Metric silk: silk lines under the fab minimum width 0.15mm: 2, thinnest 0.12mmKiCad disegna la serigrafia a 0,12 mm e JLCPCB la stampa a 0,15 mm. Allarga la width dei grafici di serigrafia del footprint. L'altro caso comune è il courtyard o la distanza tra piazzole contro un produttore grossolano; correggilo nel footprint, dove sta, non con un override di regola.
I componenti generici sono condivisi
Un simbolo R serve per ogni resistore e un simbolo C per ogni condensatore. Il valore e il footprint vanno sul componente nello schema:
agentee edit sch NAME add R1 R 10k --footprint R_0402_1005Metric
agentee edit sch NAME add C1 C 100n --footprint C_0402_1005MetricSe uno schema nomina un simbolo che il progetto non ha ma fornisce un footprint che un simbolo usa già, add prende quel simbolo, così un agente che scrive --footprint C_0402_1005Metric per un condensatore ottiene quello giusto.
Disegnare un simbolo
agentee new symbol STM32F103C8Per un simbolo a scatola, elenca i pin per lato e lascia che agentee li posizioni sulla griglia e dimensiona il corpo. Questo è l'esempio dal riferimento, ridotto:
name = "STM32F103C8"
reference = "U"
[[bodies]]
left = [
{ number = "7", name = "NRST", type = "input" },
{ gap = 1 },
{ number = "10", name = "PA0", type = "bidirectional" },
]
right = [ { number = "30", name = "PA9", type = "bidirectional" } ]
top = [ { number = "1", name = "VBAT", type = "power_in" } ]
bottom = [ { number = "8", name = "VSS", type = "power_in" } ]{ gap = N } lascia N slot vuoti. I pin possono anche essere posizionati a mano con [[pins]] (number, name, type, at, side), e i due metodi possono essere mescolati. Tieni i punti di connessione sulla griglia di 1,27 mm; i pin fuori griglia vengono segnalati. I simboli multi-unità danno ai pin e ai grafici un unit.
I tipi di pin contano: la verifica li usa per i controlli sui net, e le uscite open_collector e i pin input partecipano al controllo del livello di segnale.
Livelli logici
Per i componenti logici e i MCU, copia le soglie dal datasheet in una tabella [levels]. La verifica calcola poi la tensione che ogni ingresso vede attraverso i suoi rail, resistori e interruttori, e segnala un ingresso che può restare tra VIL e VIH, fluttuare, o superare i suoi limiti:
[levels]
supply = "VDD"
vih = "70%"
vil = "30%"
min = "-0.3V"
max = "100%+0.3V"
leakage = "1uA"La tabella levels di un pin sovrascrive quella del simbolo, per un pin di reset con pull-up interno, ad esempio. La guida agli schemi mostra l'altra metà, la tabella rails.
Disegnare un footprint
agentee new footprint SOIC-8_3.9x4.9mm_P1.27mmScrivi le piazzole come righe invece che come una voce ciascuna. Il SOIC-8 dal riferimento:
[[pads]]
number = "1"
kind = "smd"
shape = "roundrect"
at = [-2.475, -1.905]
size = [1.95, 0.6]
count = 4
pitch = [0, 1.27]
[[pads]]
number = "5"
kind = "smd"
shape = "roundrect"
at = [2.475, 1.905]
size = [1.95, 0.6]
count = 4
pitch = [0, -1.27]La seconda riga conta da 5 a 8 risalendo l'altro lato. Le righe contano i numeri finali, quindi le palline BGA funzionano allo stesso modo (A1, A2, ...), e number_step = 2 conta a due a due.
Disegna il courtyard su F.CrtYd e il contorno del corpo su F.Fab: la verifica richiede un courtyard che contenga le piazzole, il posizionatore tiene i courtyard separati, e le regole di bordo e di assemblaggio misurano dal corpo. Imposta height in modo che la vista 3D e la regola per i componenti alti abbiano un'altezza senza un modello.
Chiavi utili del footprint:
edge = truesu una piazzola il cui rame è destinato a raggiungere il bordo della scheda (connettori edge-launch, castellations).overhang = truesu un connettore destinato a sporgere oltre il bordo.mask_web = falsequando il produttore apre il solder mask su tutte le piazzole di un componente a passo fine come una sola finestra.zone_connect = "solid"o"relief"su una piazzola, sopra l'impostazione dell'area di rame stessa.modelche nomina un file STEP o VRML, un percorso KiCad, o un URLhttps://fissato a un commit.
Ogni pin ha bisogno di una piazzola
I net delle piazzole vengono dallo schema per numero: il pin 3 del simbolo è la piazzola 3 del footprint. La verifica segnala ogni pin senza piazzola. Un pin del simbolo chiamato EP o numerato 17 per una piazzola esposta richiede quel numero di piazzola anche nel footprint.
Numeri di parte
Dai a ogni componente nello schema i campi mfr e mpn, e un campo lcsc per l'assemblaggio JLCPCB:
agentee edit sch NAME set U1 --field mfr=Qorvo
agentee edit sch NAME set U1 --field mpn=SPF5189ZOgni set aggiunge alla tabella fields del componente e mantiene ciò che c'è. Nel file legge fields = { mfr = "Qorvo", mpn = "SPF5189Z" }.
La BOM li raggruppa, e agentee parts cerca scorte, prezzi ed equivalenti più economici per mpn. Vedi Fab package, BOM e prezzi.