Cuprins:

Proiectarea unei plăci de dezvoltare a microcontrolerelor: 14 pași (cu imagini)
Proiectarea unei plăci de dezvoltare a microcontrolerelor: 14 pași (cu imagini)

Video: Proiectarea unei plăci de dezvoltare a microcontrolerelor: 14 pași (cu imagini)

Video: Proiectarea unei plăci de dezvoltare a microcontrolerelor: 14 pași (cu imagini)
Video: Microcontrolere- 2021- Curs 1 2024, Noiembrie
Anonim
Proiectarea unei placi de dezvoltare a microcontrolerelor
Proiectarea unei placi de dezvoltare a microcontrolerelor

Sunteți un producător, un hobby sau un hacker interesat să treceți de la proiecte perfboard, DIP IC-uri și PCB-uri de casă la PCB-uri multistrat fabricate de case de pensiuni și ambalaje SMD pregătite pentru producția în serie? Atunci acest instructiv este pentru tine!

Acest ghid va detalia detalii despre modul de proiectare a unui PCB multistrat, folosind ca exemplu o placă de dezvoltare a microcontrolerului.

Am folosit KiCAD 5.0, care este un instrument EDA gratuit și open source, pentru crearea schemei și a aspectului PCB pentru această placă de dezvoltare.

Dacă nu sunteți familiarizați cu KiCAD sau fluxul de lucru pentru aspectul PCB, tutorialele lui Chris Gamell pe YouTube sunt un loc destul de bun pentru a începe.

EDITARE: Unele dintre fotografii măresc prea mult, trebuie doar să faceți clic pe imagine pentru a vedea imaginea completă:)

Pasul 1: Gândiți-vă la ambalarea componentelor

Gândiți-vă la ambalarea componentelor
Gândiți-vă la ambalarea componentelor

Dispozitivele de montare pe suprafață (SMD) pot fi poziționate pe un PCB de o mașină de preluare și plasare, automatizând procesul de asamblare. Apoi puteți rula PCB-ul printr-un cuptor de reflow sau printr-o mașină de lipit cu valuri, dacă aveți și componente prin găuri.

Componentele componente pentru SMD-urile mai mici sunt, de asemenea, reduse, rezultând o impedanță, inductanță și EMI substanțial mai mici, un lucru foarte bun, în special pentru design-urile RF și de înaltă frecvență.

Parcurgerea traseului de montare la suprafață îmbunătățește, de asemenea, performanța mecanică și rezistența, ceea ce este important pentru testarea vibrațiilor și a stresului mecanic.

Pasul 2: Alegeți microcontrolerul

Alegeți microcontrolerul
Alegeți microcontrolerul

În centrul fiecărei plăci de dezvoltare a microcontrolerelor, precum Arduino și derivatele sale, se află un microcontroler. În cazul Arduino Uno, acesta este ATmega 328P. Pentru placa noastră de dezvoltare, vom folosi ESP8266.

Este ieftin, rulează la 80 MHz (și poate fi overclockat la 160 MHz) ȘI are un subsistem WiFi încorporat. Atunci când este utilizat ca microcontroler independent, poate executa anumite operații de până la 170x mai repede decât un Arduino.

Pasul 3: Alegeți convertorul USB în serie

Alegeți convertorul USB în serie
Alegeți convertorul USB în serie

Un microcontroler va avea nevoie de o modalitate de interfață cu computerul, astfel încât să puteți încărca programele pe el. Acest lucru este realizat în mod obișnuit de un cip extern, care se ocupă de traducerea între semnalele diferențiale utilizate de portul USB de pe computer și semnalizarea cu un singur capăt disponibilă pe majoritatea microcontrolerelor prin perifericele lor de comunicații seriale, cum ar fi UART.

În cazul nostru, vom folosi un FT230X, de la FTDI. Cipurile USB către serie de la FTDI tind să fie bine acceptate în majoritatea sistemelor de operare, deci este un pariu sigur pentru o placă de dezvoltare. Alternativele populare (opțiuni mai ieftine) includ CP2102 de la SiLabs și CH340G.

Pasul 4: alegeți regulatorul

Alegeți regulatorul
Alegeți regulatorul

Placa va trebui să treacă puterea undeva - și în majoritatea cazurilor veți găsi această putere furnizată printr-un regulator liniar IC. Regulatoarele liniare sunt ieftine, simple și, deși nu sunt la fel de eficiente ca o schemă cu mod comutat, vor oferi o putere curată (mai puțin zgomot) și o integrare ușoară.

AMS1117 cel mai popular regulator liniar utilizat în majoritatea plăcilor de dezvoltare și o alegere destul de decentă și pentru placa noastră de dezvoltare.

Pasul 5: Alegeți schema dvs. de putere SAU

Alegeți schema dvs. de putere SAU
Alegeți schema dvs. de putere SAU

Dacă doriți să permiteți utilizatorului să alimenteze placa dev prin USB și, de asemenea, să ofere tensiune de intrare printr-unul dintre pinii de pe placa, veți avea nevoie de o modalitate de a alege între cele două tensiuni concurente. Acest lucru se realizează cel mai simplu prin utilizarea diodelor, care funcționează pentru a permite trecerea și alimentarea numai a tensiunii de intrare mai mari a restului circuitului.

În cazul nostru, avem o barieră schottky duală, care include două diode schottky pe un singur pachet în acest scop.

Pasul 6: Alegeți jetoanele periferice (dacă există)

Alegeți jetoanele periferice (dacă există)
Alegeți jetoanele periferice (dacă există)
Alegeți jetoanele periferice (dacă există)
Alegeți jetoanele periferice (dacă există)

Puteți adăuga cipuri la interfața cu microcontrolerul ales pentru a spori ușurința de utilizare sau funcționalitatea oferită de placa dvs. de dezvoltare utilizatorilor.

În cazul nostru, ESP8266 are doar un singur canal de intrare analogic și foarte puține GPIO utilizabile.

Pentru a rezolva acest lucru, vom adăuga un analog analogic la convertorul digital IC și un GPIO expansor IC.

Alegerea unui ADC este de obicei un compromis între rata de conversie sau viteza și rezoluția. Rezoluțiile mai mari nu sunt neapărat mai bune, deoarece cipurile care prezintă rezoluții mai mari, deoarece utilizează diferite tehnici de eșantionare, vor avea adesea rate de eșantionare foarte lente. ADC-urile SAR tipice au rate de eșantionare de peste sute de mii de eșantioane pe secundă, în timp ce ADC-urile Delta Sigma cu rezoluție mai mare sunt, de obicei, capabile doar de o mână de eșantioane pe secundă - o lume distanță de ADC-urile SAR rapide și ADC-urile fulgerate rapid.

MCP3208 este un ADC pe 12 biți, cu 8 canale analogice. Poate funcționa oriunde între 2.7V-5.5V și are o rată maximă de eșantionare de 100kps.

Adăugarea unui MCP23S17, un popular extindător GPIO, face ca 16 pini GPIO să devină disponibili pentru utilizare.

Pasul 7: Proiectarea circuitului

Proiectarea circuitului
Proiectarea circuitului

Circuitul de furnizare a energiei utilizează două diode schottky pentru a oferi o funcție simplă OR-ing pentru intrarea de energie. Aceasta stabilește o luptă între 5V care vine de la portul USB și orice doriți să oferiți pinului VIN - câștigătorul bătăliei electronilor iese în prim-plan și furnizează energie regulatorului AMS1117. Un LED SMD umil servește ca indicator al faptului că puterea este livrată de fapt restului plăcii.

Circuitul de interfață USB prezintă o margine de ferită pentru a preveni emiții rătăcite și semnalele zgomotoase ale ceasului să radieze spre computerul utilizatorului. Rezistoarele de serie de pe liniile de date (D + și D-) asigură controlul de bază al ratei marginii.

ESP8266 folosește GPIO 0, GPIO 2 și GPIO 15 ca pini de intrare speciali, citind starea lor la pornire pentru a determina dacă porniți în modul de programare, care vă permite să comunicați prin serial pentru a programa modul de pornire cu cip sau flash, care vă lansează programul. GPIO 2 și GPIO 15 trebuie să rămână la nivel logic ridicat, respectiv la nivel logic redus, în timpul procesului de boot. Dacă GPIO 0 este scăzut la pornire, ESP8266 renunță la control și vă permite să stocați programul în memoria flash interfațată în modul. Dacă GPIO 0 este ridicat, ESP8266 lansează ultimul program stocat în bliț și sunteți gata de rulare.

În acest scop, placa noastră dev oferă comutatoare de pornire și resetare, permițând utilizatorilor să comute starea GPIO 0 și să reseteze dispozitivul, pentru a pune cipul în modul de programare dorit. Un rezistor de tragere asigură faptul că dispozitivul se lansează în mod normal în modul de încărcare în mod implicit, pornind cel mai recent program stocat.

Pasul 8: Proiectarea și dispunerea PCB-urilor

Proiectare și dispunere PCB
Proiectare și dispunere PCB

Aspectul PCB devine mai critic odată cu implicarea semnalelor de mare viteză sau analogice. Circuitele analogice în special sunt sensibile la problemele de zgomot la sol. Avioanele de la sol au capacitatea de a oferi o referință mai stabilă pentru semnalele de interes, reducând zgomotul și interferențele cauzate de obicei de buclele de la sol.

Urmele analogice trebuie păstrate departe de urmele digitale de mare viteză, cum ar fi liniile de date diferențiale care fac parte din standardul USB. Urmele diferențiale ale semnalului de date trebuie făcute cât mai scurte posibil și trebuie să fie potrivite cu lungimea urmelor. Evitați virajele și drumurile pentru a reduce reflexiile și variațiile de impedanță.

Utilizarea unei configurații stea pentru furnizarea alimentării dispozitivelor (presupunând că nu utilizați deja un plan de alimentare) ajută, de asemenea, la reducerea zgomotului prin eliminarea căilor de retur curente.

Pasul 9: Stivuirea PCB-ului

Stivuire PCB
Stivuire PCB

Placa noastră de dezvoltare este construită pe un teanc de PCB cu 4 straturi, cu un plan de putere dedicat și un plan de masă.

„Stivuirea” dvs. este ordinea straturilor de pe PCB. Aranjarea straturilor afectează conformitatea EMI a proiectului dvs., precum și integritatea semnalului circuitului dvs.

Factorii care trebuie luați în considerare în stivuirea PCB-ului dvs. ar include:

  1. Numărul de straturi
  2. Ordinea straturilor
  3. Spațiere între straturi
  4. Scopul fiecărui strat (semnal, plan etc.)
  5. Grosimea stratului
  6. Cost

Fiecare stack-up are propriul set de avantaje și dezavantaje. O placă cu 4 straturi va produce cu aproximativ 15dB mai puțină radiație decât un design pe 2 straturi. Plăcile cu mai multe straturi au mai multe șanse să prezinte un plan de sol complet, scăderea impedanței la sol și zgomotul de referință.

Pasul 10: Mai multe considerații pentru straturile PCB și integritatea semnalului

Mai multe considerații pentru straturile PCB și integritatea semnalului
Mai multe considerații pentru straturile PCB și integritatea semnalului

Straturile de semnal ar trebui să fie în mod ideal lângă un plan de putere sau de masă, cu o distanță minimă între stratul de semnal și planul respectiv din apropiere. Acest lucru optimizează calea de întoarcere a semnalului, care trece prin planul de referință.

Planurile de putere și de sol pot fi utilizate pentru a asigura ecranarea între straturi sau ca scuturi pentru straturile interioare.

O putere și un plan de sol, atunci când sunt așezate unul lângă celălalt, va avea ca rezultat o capacitate interplan care funcționează de obicei în favoarea ta. Această capacitate se întinde cu aria PCB-ului dvs., precum și cu constanta sa dielectrică și este invers proporțională cu distanța dintre planuri. Această capacitate funcționează bine pentru a servi IC-urile care prezintă cerințe de curent de alimentare volatile.

Semnalele rapide sunt stocate în mod ideal în straturile interioare ale PCB-urilor cu mai multe straturi, pentru a conține EMI generat de urme.

Cu cât frecvențele sunt tratate pe tablă, cu atât mai stricte trebuie respectate aceste cerințe ideale. Proiectele cu viteză redusă vor scăpa probabil cu mai puține straturi, sau chiar cu un singur strat, în timp ce proiectele cu viteză mare și RF necesită un design PCB mai complicat, cu un stack-up PCB mai strategic.

Modelele cu viteză mare, de exemplu, sunt mai susceptibile la efectul pielii - care este observația că la frecvențe înalte, curentul de curent nu pătrunde prin întregul corp al unui conductor, ceea ce înseamnă, la rândul său, că există o utilitate marginală în scădere pentru creșterea grosimea cuprului la o anumită frecvență, deoarece volumul suplimentar al conductorului nu va fi folosit oricum. La aproximativ 100MHz, adâncimea pielii (grosimea curentului care curge efectiv prin conductor) este de aproximativ 7um, ceea ce înseamnă chiar 1oz standard. straturile de semnal groase sunt subutilizate.

Pasul 11: O notă laterală pe Vias

O notă laterală despre Vias
O notă laterală despre Vias

Vias formează conexiuni între diferitele straturi ale unui PCB multistrat.

Tipurile de viate utilizate vor afecta costul producției de PCB. Fabricarea orificiilor orb / îngropat costă mai mult decât prin orificiile orificiale. O gaură de trecere prin pumni prin întregul PCB, terminând la cel mai jos strat. Via-urile îngropate sunt ascunse în interior și interconectează numai straturile interioare, în timp ce viațele Blind încep de pe o parte a PCB-ului, dar se termină înainte de cealaltă parte. Găurile prin găuri sunt cele mai ieftine și mai ușor de fabricat, deci dacă sunt optimizate pentru utilizarea costurilor prin găuri.

Pasul 12: Fabricarea și asamblarea PCB-urilor

Fabricarea și asamblarea PCB-urilor
Fabricarea și asamblarea PCB-urilor

Acum, când placa a fost proiectată, veți dori să scoateți designul ca fișiere Gerber din instrumentul dvs. EDA la alegere și să le trimiteți la o casă de consiliu pentru fabricare.

Am avut plăcile fabricate de ALLPCB, dar puteți fabrica orice tablă de bord. Aș recomanda cu nerăbdare să folosiți PCB Shopper pentru a compara prețurile atunci când decideți ce pensiune alegeți pentru fabricare - astfel încât să puteți compara în ceea ce privește prețurile și capacitățile.

Unele case de consiliu oferă, de asemenea, ansamblul PCB, de care probabil veți avea nevoie dacă doriți să implementați acest design, deoarece folosește în mare parte piese SMD și chiar QFN.

Pasul 13: Atât oameni buni

Asta e tot oamenii!
Asta e tot oamenii!

Această placă de dezvoltare se numește "Clouduino Stratus", o placă de dezvoltare pe bază de ESP8266 pe care am conceput-o pentru a accelera procesul de prototipare pentru o pornire hardware / IOT.

Este încă o iterație timpurie a designului, cu noi revizuiri în curând.

Sper că ați învățat multe din acest ghid!: D

Pasul 14: Bonus: Componente, Gerbers, Fișiere de proiectare și Mulțumiri

[Microcontroler]

1x ESP12F

[Periferice]

1 x MCP23S17 GPIO Expander (QFN)

1 x MCP3208 ADC (SOIC)

[Conectori și interfață]

1 x USB către serie FT231XQ (QFN)

1 x mini conector USB-B

2 x anteturi feminin / masculin cu 16 pini

[Putere] 1 x Regulator AMS1117 - 3.3 (SOT-223-3)

[Alții]

1 x ECQ10A04-F Barieră Schottky dublă (TO-252)

2 x BC847W (SOT323)

7 x 10K 1% rezistențe SMD 0603

2 x 27 ohmi 1% rezistențe SMD 0603

3 x 270 ohm 1% rezistențe SMD 0603

2 x 470 ohm 1% rezistențe SMD 0603

3 x 0.1uF 50V SMD 0603 Condensator

2 x 10uF 50V SMD 0603 Condensator

1 x 1uF 50V SMD 0603 Condensator

2 x 47pF 50V SMD 0603 Condensator

1 x LED SMD 0603 Verde

1 x LED SMD 0603 Galben

1 x LED SMD 0603 Albastru

2 x OMRON BF-3 1000 THT Tact Switch

1 x margele de ferită 600 / 100mhz SMD 0603

[Mulțumiri] Graficele ADC sunt oferite de TI App Notes

MCU Benchmark:

Ilustrații PCB: Fineline

Recomandat: