Vin din lumea software-ului, unde mă simt destul de acasă - îmi petrec mult timp scriind cod. Nu mă simt ca acasă în lumea electronicii și a proiectării circuitelor. Aș vrea cu adevărat să aflu mai multe despre electronică și proiectarea circuitelor. Știu că aș putea să mă pricep și la asta, dacă aș avea intuiția pentru asta - ceea ce îmi lipsește atât de evident și disperat.

Un proiect pe care l-am gândit pentru a încerca să depășesc diferența dintre aceste două lumi este programarea unui microcip, în special PIC16F88 (Nu este foarte atașat de acest model în special, tocmai l-am ales pe acesta, deoarece din ceea ce am auzit este relativ simplu cu care să mă joc). Sunt sigur că odată ce vine să scriu cod, voi fi mai confortabil, dar mai întâi aș vrea să construiesc circuitul.

Presupun că nu vor fi implicate multe componente. Mă gândeam că primul lucru pe care aș dori să îl încerc este să pun pur și simplu microcipul să comute și să aprindă un LED la intervale de 1 secundă. Super, deci acum ce? De aici începe problema mea.

Primul meu impuls este să proiectez circuitul în același mod în care aș proiecta un circuit simplu de iluminare cu LED. Alegeți curentul dorit (în cazul unui singur LED de soi de grădină

20mA), determinați căderea de tensiune corespunzătoare din foaia de date a LED-ului, scădeți căderea de tensiune din tensiunea totală furnizată de sursa de alimentare/baterie și, în cele din urmă, utilizați legea lui Ohm pentru a determina rezistența necesară pentru a limita curentul la valoarea dorită.

Ei bine, cât curent atrage un IC? Cât este prea puțin, cât este prea mult? Îmi dau seama că un CI este un animal complet diferit de un LED, dar acolo se termină înțelegerea mea. Evident, trebuie să fie ceva în neregulă cu abordarea mea - foaia tehnică nici măcar nu menționează curentul (cel puțin nu în nici un termen pe care îl înțeleg), cu toate acestea, alte persoane sunt în mod evident capabile să proiecteze și să alimenteze acest cip foarte bine. Sunt conștient că cât de mult curent atrage un IC depinde de IC și de aplicație și că există lucruri precum curentul de repaus și curenții de intrare/sursă de ieșire (doar pentru că știu aceste cuvinte nu înseamnă că le înțeleg pe deplin) - deci unde găsesc aceste informații? Numere concrete? Ar trebui să folosesc chiar această abordare naivă pentru a construi acest circuit mai complex? Știu că nu există o conspirație care să încerce să-mi ascundă informațiile, dar sincer, uneori, în călătoria mea prin electronică și proiectarea circuitelor, se simte ca și cum ar fi cunoștințe ascunse care mi-au fost refuzate.

Dacă cineva poate face lumină asupra problemelor mele sau poate oferi o intuiție sau instrucțiuni generale pentru a ști cum să găsiți informațiile de care aveți nevoie pentru a construi un circuit, aș aprecia asta. De asemenea, dacă este posibil, explică-l de parcă aș avea cinci ani.

pentru

4 Răspunsuri 4

Abordarea dvs. de design LED este, în general, corectă.

O fișă cu LED-uri ar putea sugera curentul de 20mA este o valoare maximă. Un LED modern și eficient este foarte luminos cu 20mA. În întuneric, cu ochii adaptați la întuneric, s-ar putea să vedeți cum LED-ul începe să strălucească cu 0,05 mA.
Un curent de proiectare dur pentru un LED eficient ar putea fi de aproximativ 1 mA. care nu va stresa pinul I/O al PIC. 20mA necesită pinul I/O pentru a lucra destul de greu.

Fișa tehnică a microcipului pentru PIC16F88 arată specificațiile DC care stabilesc unele limite pentru tensiunile și curenții pinului GPIO (intrare/ieșire) (o porțiune decupată mai jos). Partea pertinentă este \ $ V_

    , V _ \ $ pentru Porturi I/O:

    Se pare că un pin I/O poate scădea curent (8,5mA) cu mai puțină tensiune decât poate furniza curent (1,6mA). Acestea nu sunt limite, ci sunt un singur punct de date în limitele maxime indicate în altă parte (Secțiunea 18.0 prevede că curentul maxim pe orice pin I/O nu trebuie să depășească 25mA).
    Sinking-better-than-sourcing este o trăsătură comună a pinilor de ieșire GPIO. Deci e mai bine să te scufunzi. asta înseamnă să aprindeți un LED trăgând curentul la sol - anodul LED-ului este atașat la sursa + 5V DC, iar pinul GPIO îl trage PE prin trecerea de la logică înalt la logică scăzut, printr-un rezistor conectat în serie.

Exemplu de proiectare:
Un LED (când este aprins) necesită aproximativ 2V când curge 1mA. Uită-te la foaia de date a LED-ului.
PIC este alimentat de la o sursă de + 5v, care este, de asemenea, punctul din care anodul LED își extrage curentul. Asa de VDD este + 5v comparativ cu VSS la zero volți.
Un pin GPIO este setat ca „OUTPUT” și este tras în logică SCĂZUT pentru a aprinde LED-ul.
Rezistența seriei pentru curentul LED de 1mA ar fi \ $ (5.0 - 2.0) \ over (.001) \ $. Adică 3000 ohmi.
O soluție mai exactă ar putea explica rezistența internă la pornirea pinului I/O al PIC. Aceasta ar fi rezistența la pornire a unui MOSfet cu canal N.
Fișa tehnică (de mai sus) sugerează că această rezistență este de $ $ peste $, aproximativ 71 ohmi.
Deci, un rezistor de serie adecvat ar fi \ 3000 $ - 71 \ $ ohmi. Dar nu ați observa diferența de luminozitate a LED-urilor în comparație cu un rezistor de 3000 ohmi.

simulează acest circuit - Schemă creată folosind CircuitLab
Rețineți că un LED albastru necesită mai multă tensiune pentru a se aprinde decât un LED ROȘU, poate de 3,4V în loc de 2,0V. NU curge curent până când depășiți tensiunea de pornire a unui LED. Este actual care produce lumină. Dacă sursa de curent continuu a fost redusă (poate 3,3 V), LED-ul albastru nu ar putea fi aprins în mod fiabil.

Ei bine, cât curent atrage un IC? Cât este prea puțin, cât este prea mult?

PIC în sine va extrage curent din sursa sa de curent continuu doar pentru a funcționa. Fluxul de curent depinde foarte mult de cât de rapid funcționează. foaia tehnică poate fi confuză și are multe diagrame care arată curentul extras din sursa de curent continuu în multe condiții de funcționare. În timp ce doarme, fără ceasuri care funcționează, poate trage câteva microampere. Un ceas rapid (20 MHz) cu alimentare de + 5V ar putea trage 5mA.

În exemplul de circuit cu LED PE, și un ceas de 20 MHz, 5 mA ar putea introduce pinul VDD. Acest curent ar ieși și din pinul VSS. Dar pinul VSS ar include și curentul LED de 1mA, deci 6mA iese din VSS. Din sursa de alimentare, curge 6mA.

Secțiunea 18.0 a fișei tehnice arată limitele maxime. Acestea sunt limite ale durerii morții. Pentru VDD, VSS, limita este de 200mA. Ar fi un PIC foarte fierbinte! Cum ar putea curge atât de mult curent? Dacă ați încercat să aprindeți foarte multe LED-uri foarte puternic cu toți pinii GPIO disponibili, cu rezistențe de serie de valoare mică (cum ar fi zero ohmi), o mare cantitate de curent ar putea încerca să curgă.
O atenție cu privire la pinii GPIO. Acestea implicit introduc mai degrabă decât ieșire. Un pin GPIO poate pluti la orice tensiune între VDD și VSS. Câmpul electric al unei mâini care flutura peste cip îi poate modifica tensiunea. Nu este bine să aveți un pin GPIO plutitor la jumătatea distanței dintre VDD-VSS. Excesul de curent poate curge. Un pin de intrare neconectat ar trebui să fie târât în ​​jos către VSS sau în sus în VDD. Tragerea se poate face cu un rezistor, în cazul în care pinul este setat la „ieșire”.