Cum se configurează smartphone-uri și PC-uri. Portal informativ

Cum să faci un ceas cu propriile mâini? Ceas mare cu LED.

Îmi amintesc... În urmă cu treizeci de ani, șase indicatori erau o mică comoară. Oricine putea face apoi un ceas TTL cu astfel de indicatori era considerat un expert sofisticat în domeniul său.

Strălucirea de la indicatoarele de descărcare de gaz părea să fie mai caldă. După câteva minute m-am întrebat dacă aceste lămpi vechi vor funcționa și am vrut să fac ceva cu ele. Acum este foarte ușor să faci un astfel de ceas. Este suficient să luați un microcontroler...

De atunci mi-a plăcut să programez microcontrolere în limbaje de nivel înalt, am decis să mă joc puțin. Am încercat să proiectez un ceas digital simplu cu indicator de descărcare de gaz.

Scopul designului

Am decis ca ceasul să aibă șase cifre, iar ora să fie setată cu numărul minim de butoane. De asemenea, am vrut să încerc și să folosesc câteva dintre cele mai comune familii de microcontrolere de la diferiți producători. Am intenționat să scriu programul în C.

Indicatorii de descărcare necesită tensiune înaltă pentru a funcționa. Dar nu am vrut să mă ocup de tensiunea de rețea periculoasă. Ceasul trebuia alimentat cu o tensiune inofensivă de 12 V.

Deoarece scopul meu principal a fost jocul, nu veți găsi aici o descriere a structurii mecanice și a desenelor carcasei. Dacă doriți, puteți schimba ceasul în funcție de gusturile și experiența dvs.

asta am facut:

  • Indicație de timp: HH MM SS
  • Indicație de alarmă: HH MM -
  • Mod de afișare a timpului: 24 de ore
  • Precizie ± 1 secundă pe zi (depinde de rezonatorul de cristal)
  • Tensiune de alimentare: 12V
  • Curent de consum: 100 mA

Schema ceasului

Pentru un dispozitiv cu afișaj digital din șase cifre, modul multiplex a fost o soluție naturală.

Scopul majorității elementelor diagramei bloc (Figura 1) este clar fără comentarii. Într-o anumită măsură, o sarcină nestandard a fost crearea unui convertor de niveluri TTL în semnale de control de înaltă tensiune pentru indicatori. Driverele de anod sunt realizate pe tranzistoare NPN și PNP de înaltă tensiune. Diagrama este împrumutată de la Stefan Kneller (http://www.stefankneller.de).

Cipul TTL 74141 conține un decodor BCD și un driver de înaltă tensiune pentru fiecare cifră. Poate fi dificil să comandați un microcircuit. (Deși nu știu dacă sunt fabricate de cineva acum). Dar dacă găsești indicatoare de descărcare de gaze, 74141 poate fi undeva în apropiere :-). Pe vremea logicii TTL, nu exista practic nicio alternativă la microcircuitul 74141. Așa că încearcă să găsești unul undeva.

Indicatorii necesită o tensiune de aproximativ 170 V. Nu are sens să dezvolte un circuit special pentru un convertor de tensiune, deoarece există un număr mare de microcircuite pentru convertoarele boost. Am ales MC34063 IC ieftin și disponibil pe scară largă. Circuitul convertor este aproape complet copiat din fișa de date MC34063. Doar întrerupătorul de alimentare T13 i-a fost adăugat. Cheia internă nu este potrivită pentru o tensiune atât de mare. Am folosit un șoc ca inductor pentru convertor. Este prezentat în Figura 2; diametrul său este de 8 mm, iar lungimea sa este de 10 mm.

Eficiența convertorului este destul de bună, iar tensiunea de ieșire este relativ sigură. Cu un curent de sarcină de 5 mA, tensiunea de ieșire scade la 60 V. R32 acționează ca un rezistor de detectare a curentului.

Un regulator liniar U4 este utilizat pentru alimentarea logicii. Există spațiu pentru o baterie de rezervă pe diagramă și pe placă. (3,6V - NiMH sau NiCd). D7 și D8 sunt diode Schottky, iar rezistența R37 este concepută pentru a limita curentul de încărcare în funcție de caracteristicile bateriei. Dacă îți construiești ceasul doar pentru distracție, nu vei avea nevoie de baterie, D7, D8 și R37.

Aspectul final este prezentat în Figura 3.

Figura 3.

Butoanele de setare a orei sunt conectate prin diode. Starea butoanelor este verificată prin setarea unui „1” logic la ieșirea corespunzătoare. Ca funcție bonus, un emițător piezo este conectat la ieșirea microcontrolerului. Pentru a reduce acest scârțâit urât, folosește micul comutator. Pentru asta ar fi destul de potrivit un ciocan, dar asta este pentru un caz extrem :-).

O listă de componente schematice, desenul PCB și aspectul poate fi găsită în secțiunea Descărcări.

CPU

Acest dispozitiv simplu poate fi controlat de aproape orice microcontroler cu un număr suficient de pini, al căror număr minim necesar este indicat în Tabelul 1.

Tabelul 1.
Funcţie concluzii
Nutriție 2
Rezonator cu cuarț 2
Controlul anodului 6
Driver 74141 4
Buton de intrare 1
Emițător piezo 1
Total 16

Fiecare producător își dezvoltă propriile familii și tipuri de microcontrolere. Dispunerea pinului este individuală pentru fiecare tip. Am încercat să proiectez o placă universală pentru mai multe tipuri de microcontrolere. Placa are o priză cu 20 de pini. Cu câteva fire jumper, îl puteți adapta la diferite microcontrolere.

Microcontrolerele testate în acest circuit sunt enumerate mai jos. Puteți experimenta cu alte tipuri. Avantajul schemei este capacitatea de a utiliza diferite procesoare. De regulă, radioamatorii folosesc o singură familie de microcontrolere și au programatorul și instrumentele software adecvate. Pot apărea probleme cu microcontrolerele de la alți producători, așa că ți-am oferit ocazia să alegi un procesor din familia ta preferată.

Toate particularitățile pornirii diferitelor microcontrolere sunt reflectate în tabelele 2 ... 5 și figurile 4 ... 7.

Masa 2.
Freescale
Un fel MC68HC908QY1
Rezonator cu cuarț 12 MHz
Condensatoare C1, C2 22 pF
Program freescale.zip
(vezi secțiunea „Descărcări”)
Instalații

Notă: Un rezistor de 10 MΩ este conectat în paralel cu rezonatorul de cuarț.

Tabelul 3.
Microcip
Un fel PIC16F628A
Rezonator cu cuarț 32,768 kHz
Condensatoare C1, C2 22 pF
Program pic628.zip
(vezi secțiunea „Descărcări”)
Instalații Int. Generator de 4 MHz - I/O RA6,
MCLR OFF, WDT OFF, LVP OFF,
BROUT OFF, CP OFF, PWRUP OFF

Notă: Microcircuitul trebuie rotit la 180 ° în priză.

Tabelul 4.
Atmel
Un fel ATtiny2313
Rezonator cu cuarț 12 MHz
Condensatoare C1, C2 15 pF
Program attiny.zip
(vezi secțiunea „Descărcări”)
Instalații mp. oscilator 8 MHz, RESET PORNIT

Notă: Adăugați componentele SMD R și C la pinul RESET (10 kΩ și 100 nF).

Tabelul 5.
Atmel
Un fel AT89C2051
Rezonator cu cuarț 12 MHz
Condensatoare C1, C2 22 pF
Program la2051.zip
(vezi secțiunea „Descărcări”)
Instalații --

Notă: Adăugați componentele SMD R și C la pinul RESET (10 kΩ și 100 nF); cablurile marcate cu asteriscuri se conectează la magistrala de alimentare + Ub prin rezistențe SMD de 3,3 kOhm.

Comparând codurile pentru diferite microcontrolere, veți vedea că acestea sunt foarte asemănătoare. Diferențele sunt în accesul la porturi și definirea funcțiilor de întrerupere, precum și în ceea ce depinde de componentele cablajului.

Codul sursă este împărțit în două secțiuni. Funcţie principal () configurează porturile și pornește un cronometru care generează semnale de întrerupere. După aceea, programul scanează butoanele apăsate și setează ora și valorile de alarmă corespunzătoare. În același loc, în ciclul principal, ora actuală este comparată cu ceasul deșteptător și emițătorul piezo este pornit.

A doua parte este o rutină de întrerupere a temporizatorului. O subrutină care este apelată la fiecare milisecundă (în funcție de capacitățile cronometrului) incrementează variabilele de timp și controlează cifrele afișate. În plus, se verifică starea butoanelor.

Lansarea circuitului

Începeți cu instalarea și configurarea componentelor de la sursa de alimentare. Lipiți regulatorul U4 și componentele din jur. Verificați 5 V pentru U2 și 4,6 V pentru U1. Următorul pas este asamblarea convertorului de înaltă tensiune. Reglați rezistența de reglare R36 la 170 V. Dacă intervalul de reglare nu este suficient, modificați ușor rezistența rezistenței R33. Acum instalați cipul U2, tranzistoarele și rezistențele circuitului de driver pentru anod și cifre. Conectați intrările lui U2 la magistrala GND și conectați în serie unul dintre rezistențele R25 - R30 la magistrala de alimentare + Ub. Cifrele indicatoare ar trebui să se aprindă în pozițiile corespunzătoare. În ultima etapă a verificării circuitului, conectați pinul 19 al microcircuitului U1 la pământ - emițătorul piezoelectric ar trebui să pornească.

Codurile sursă și programele compilate pot fi găsite în fișierul ZIP corespunzător din secțiunea Descărcări. După ce ați cusut programul în microcontroler, verificați cu atenție fiecare pin în poziția U1 și instalați firele și jumperii de lipit necesare. Verificați imaginile microcontrolerului de mai sus. Dacă microcontrolerul este programat și conectat corect, generatorul său ar trebui să funcționeze. Puteți seta ora și alarma. Atenţie! Mai este loc pentru încă un buton pe placă - acesta este un buton de rezervă pentru extensiile viitoare :-).

Verificați acuratețea frecvenței generatorului. Dacă nu se încadrează în intervalul așteptat, modificați ușor valorile condensatoarelor C1 și C2. (Lipiți condensatoarele mici în paralel sau înlocuiți-le cu altele). Precizia ceasului ar trebui să se îmbunătățească.

Concluzie

Procesoarele mici pe 8 biți sunt potrivite pentru limbaje de nivel înalt. C nu a fost conceput inițial pentru microcontrolere mici, dar pentru aplicații simple îl puteți folosi foarte bine. Assembler este mai potrivit pentru sarcini complexe care necesită respectarea timpilor critici sau utilizarea maximă a CPU. Pentru majoritatea amatorilor de radio, atât versiunile gratuite, cât și versiunile limitate shareware ale compilatorului C vor funcționa.

Programarea C este aceeași pentru toate microcontrolerele. Trebuie să cunoașteți funcțiile hardware-ului (registre și periferice) de tipul de microcontroler selectat. Fiți atenți la operațiunile pe biți - limbajul C nu este potrivit pentru manipularea biților individuali, ceea ce poate fi văzut pe exemplul originalului când pentru ATtiny.

Ai terminat? Apoi acordă-te la contemplarea tuburilor cu vid și vezi...

... s-au întors vremurile... :-)

Notă editorială

Analogul complet al SN74141 este microcircuitul K155ID1, produs de software-ul Minsk „Integral”.
Microcircuitul poate fi găsit cu ușurință pe Internet.

Propun sa repet schema unui ceas electronic simplu cu ceas deşteptător, realizat pe tipul PIC16F628A. Un mare plus al acestui ceas este indicatorul LED de tip ALS pentru afișarea orei. Personal, m-am săturat de tot felul de LCD-uri și vreau să pot vedea ora de oriunde din cameră, inclusiv pe întuneric, și nu doar direct cu o iluminare bună. Circuitul conține un minim de detalii și are o repetabilitate excelentă. Ceasul a fost testat timp de o lună, ceea ce și-a demonstrat fiabilitatea și performanța. Mă gândesc la toate schemele de pe Internet, aceasta este cea mai ușor de construit și de rulat.

Schema schematică a unui ceas electronic cu un ceas cu alarmă pe un microcontroler:


După cum puteți vedea din circuitul ceasului, este singurul microcircuit folosit în acest dispozitiv. Pentru a seta frecvența ceasului se folosește un rezonator cu cristal de 4 MHz. Pentru a afișa ora, se folosesc indicatoare roșii cu un anod comun, fiecare indicator este format din două cifre cu puncte zecimale. În cazul utilizării unui emițător piezoelectric, condensatorul C1 - 100μF poate fi omis.

Pot fi utilizați orice indicator cu un anod comun, atâta timp cât fiecare cifră are propriul anod. Pentru ca ceasul electronic să fie clar vizibil în întuneric și de la mare distanță - încercați să alegeți ALS-ki mai mare.


Orele sunt afișate dinamic. La un moment dat, este afișată doar o cifră, ceea ce poate reduce semnificativ consumul de curent. Anozii fiecărei cifre sunt controlați de microcontrolerul PIC16F628A. Segmentele tuturor celor patru cifre sunt conectate împreună și prin rezistențele de limitare a curentului R1 ... R8 sunt conectate la pinii portului MK. Deoarece indicatorul se aprinde foarte repede, pâlpâirea numerelor devine imperceptibilă.


Pentru a seta minutele, orele și ceasul deșteptător, utilizați butoanele de moment. Ca ieșire pentru semnalul de alarmă, se folosește pinul 10, iar ca amplificator - o cascadă pe tranzistoarele VT1,2. Emițătorul de sunet este un element piezoelectric de tip ZP. Pentru a îmbunătăți volumul, puteți pune un difuzor mic.


Ceasul este alimentat de o sursă de tensiune stabilizată de 5V. Este posibil si cu baterii. Ceasul are 9 moduri de afișare. Tranziția prin moduri se realizează cu butoanele „+” și „-”. Înainte de afișarea citirilor în sine, pe indicatoare este afișat un scurt indiciu al numelui modului. Durata afișajului prompt este de o secundă.


Butonul „Corectare” comută ceasul - ceasul cu alarmă în modul setări. În acest caz, se afișează un scurt prompt timp de o jumătate de secundă, după care valoarea corectată începe să clipească. Corectarea citirilor se realizează cu butoanele „+” și „-”. Când apăsați butonul timp îndelungat, se activează modul autorepeat, cu o frecvență specificată. Toate valorile, cu excepția orelor, minutelor și secundelor, sunt scrise în EEPROM și restaurate după oprire/pornire.


Dacă timp de câteva secunde nu este apăsat niciun buton, ceasul digital trece în modul de afișare a orei. Apăsarea butonului „Pornit/Oprit” pornește sau dezactivează alarma, această acțiune este confirmată de un sunet scurt. Când ceasul cu alarmă este pornit, se aprinde un punct din cifra cea mai puțin semnificativă a indicatorului. Ma gandeam unde sa pun ceasul in bucatarie si am decis sa-l montez direct in aragaz :) Materialul a fost trimis de in_sane.


Discutați articolul ALARMĂ CEAS ELECTRONIC

Ceasurile LED simple pot fi realizate cu un controler ieftin PIC16F628A. Desigur, magazinele sunt pline de diverse ceasuri electronice, dar, în funcție de funcțiile lor, poate fie să le lipsească un termometru sau un ceas cu alarmă, fie să nu strălucească în întuneric. Și, în general, uneori, proto-ul vrea să lipe ceva el însuși și nu să cumpere gata făcute. Pentru a mări diagrama diagramei - faceți clic.

Ceasurile oferite au calendar. Are doua optiuni de afisare a datei - luna in cifra sau silaba, toate acestea se configureaza dupa introducerea datei prin comutarea mai departe cu butonul S1în timp ce parametrul dorit este afișat, termometrul. există firmware-uri pentru diferiți senzori. Vezi dispozitivul din interiorul carcasei:


Toată lumea știe că rezonatoarele de cuarț nu sunt perfecte din punct de vedere al preciziei și, în câteva săptămâni, se acumulează o eroare. Pentru a combate acest caz, ceasul prevede o corecție a cursei, care este setată de parametri SHși SL... Mai multe detalii:

SH = 42 și SL = 40 - aceasta este înainte 5 minute pe zi;
SH = 46 și SL = 40 - aceasta este 3 minute pe zi înapoi;
SH = 40 și SL = 40 - aceasta este înainte cu 2 minute pe zi;
SH = 45 și SL = 40 - aceasta este înapoi 1 minut pe zi;
SH = 44 și SL = С0 - aceasta este înainte cu 1 minut pe zi;
SH = 45 și SL = 00 - această corecție este dezactivată.

În acest fel, se poate obține o precizie perfectă. Deși va trebui să conduceți corecția de mai multe ori până o setați perfect. Și acum lucrul ceasului electronic este clar arătat:

temperatura 29 grade Celsius

Ca indicatori, puteți pune fie ansambluri digitale LED, care sunt indicate în diagramă în sine, fie înlocuiți-le cu LED-uri obișnuite rotunde super-luminoase - atunci acest ceas va fi vizibil de departe și poate fi agățat chiar și pe stradă.


Un intermitent simplu cu șase LED-uri și două rezistențe, alimentat de o baterie de 9 volți.

În fotografie există un prototip pe care l-am asamblat pentru a depana programul care va gestiona toată această economie. Cel de-al doilea arduino nano din colțul din dreapta sus al panoului nu aparține proiectului și rămâne acolo chiar așa, îl puteți ignora.

Câteva despre principiul de funcționare: Arduino preia date de la temporizatorul DS323, le procesează, determină nivelul de iluminare folosind un fotorezistor, apoi trimite totul către MAX7219 și, la rândul său, luminează segmentele necesare cu luminozitatea dorită. De asemenea, folosind trei butoane, puteți seta după bunul plac anul, luna, ziua și ora. În fotografie, indicatorii afișează ora și temperatura, care sunt luate de la un senzor digital de temperatură.

Principala dificultate în cazul meu este că indicatoarele de 2,7 inci cu un anod comun și trebuiau mai întâi să se împrietenească cumva cu max7219, care este ascuțit pentru indicatoare cu un catod comun și, în al doilea rând, să rezolve problema cu alimentarea lor. , deoarece au nevoie de 7,2 volți pentru strălucire, pe care max7219 singur nu poate oferi. După ce am cerut ajutor pe un forum, am primit același răspuns.

Soluție de captură de ecran:


De ieșirile segmentelor de la max7219 se agață un microcircuit, care inversează semnalul, iar de fiecare ieșire se agață un circuit de trei tranzistori, care trebuie conectat la catodul comun al afișajului, care, de asemenea, îi inversează semnalul și crește tensiunea. Astfel, avem posibilitatea de a conecta display-uri cu un anod comun și o tensiune de alimentare de peste 5 volți la max7219.

Pentru test am conectat un indicator, totul merge, nimic nu fumeaza

Începem să colectăm.

Am decis să împart circuitul în 2 părți din cauza numărului mare de săritori din versiunea care a fost divorțată de picioarele mele strâmbe, unde totul era pe o singură placă. Ceasul va consta dintr-o unitate de afișare și o unitate de putere și control. S-a decis să se asambleze mai întâi pe acesta din urmă. Esteti si radioamatori experimentati, va rog sa nu lesinati din cauza abuzului de piese. Nu există nicio dorință de a cumpăra o imprimantă de dragul LUT, așa că o fac în mod veche - mă antrenez pe o bucată de hârtie, fac găuri conform unui șablon, desenez o pistă cu un marker, apoi momeal.

Principiul de fixare a indicatoarelor este același ca și pe.

Marcam poziția indicatoarelor și componentelor folosind un șablon de plexiglas realizat pentru comoditate.

Procesul de marcare







Apoi, folosind șablonul, facem găuri în locurile potrivite și încercăm toate componentele. Totul a căzut fără cusur.

Desenăm cărări și otrăvim.




scăldat în clorură ferică

Gata!
panou de control:


panou indicativ:


Placa de control s-a dovedit a fi excelentă, pista de pe placa de afișare nu a înghițit critic pista, aceasta se poate repara, este timpul să lipiți. De data aceasta mi-am pierdut virginitatea SMD și am inclus componente 0805 în circuit. Cel puțin, primele rezistențe și condensatoare au fost lipite pe loc. Cred că o să-mi umplu mâna mai departe, va fi mai ușor.
Pentru lipire am folosit fluxul pe care l-am cumpărat. Este o placere sa lipim cu el, acum folosesc colofoniu cu alcool doar pentru cositorit.

Iată plăcile finite. Placa de control are un loc pentru un arduino nano, un ceas, precum și ieșiri pentru conectarea la o placă de afișare și senzori (fotorezistor pentru luminozitate automată și un termometru digital ds18s20) și o unitate de alimentare cu tensiune de ieșire reglabilă (pentru șapte mari). -dispozitive cu segment) și pentru alimentarea ceasului și a arduino, placa de afișare conține sloturi pentru afișaje, prize pentru max2719 și uln2003a, o soluție pentru alimentarea a patru dispozitive mari cu șapte segmente și o grămadă de jumperi.




panou de control din spate

Placa de afișare din spate:

Instalare groaznică smd:


Alergare

După ce lipiți toate cablurile, butoanele și senzorii, este timpul să îl porniți. Prima lansare a scos la iveală mai multe probleme. Ultimul indicator mare era stins, iar restul erau slab. Am rezolvat prima problemă prin lipirea piciorului tranzistorului SMD, cu a doua - prin reglarea tensiunii emise de lm317.
E VIU!

Pentru cei care sunt cel puțin puțin versați în microcontrolere și doresc, de asemenea, să creeze un dispozitiv simplu și util pentru casă, nimic mai bun decât un ansamblu cu indicatoare LED. Așa ceva vă poate decora camera sau poate merge pe un cadou unic realizat manual, din care va câștiga valoare suplimentară. Circuitul funcționează ca un ceas și ca un termometru - modurile sunt comutate printr-un buton sau automat.

Schema electrică a unui ceas de casă cu un termometru

Microcontroler PIC18F25K22 se ocupă de toată procesarea și sincronizarea datelor și pentru o fracțiune ULN2803A coordonarea ieșirilor sale cu indicatorul LED rămâne. Microcircuit mic DS1302 funcționează ca temporizator pentru semnale secunde precise, frecvența sa este stabilizată de un rezonator cu cuarț standard 32768 Hz. Acest lucru complică oarecum designul, dar nu trebuie să ajustați și să corectați în mod constant timpul, care inevitabil va fi întârziat sau grăbit dacă vă descurcați cu un rezonator de cuarț neacordat aleatoriu timp de câțiva MHz. Un astfel de ceas este mai degrabă o jucărie simplă decât un cronometru precis de înaltă calitate.

Dacă este necesar, senzorii de temperatură pot fi amplasați departe de unitatea principală - sunt conectați la aceasta cu un cablu cu trei fire. In cazul nostru un senzor de temperatura este instalat in bloc, iar celalalt este amplasat in exterior, pe un cablu de aproximativ 50 cm.Cand am incercat un cablu de 5 m a functionat si el perfect.

Afișajul ceasului este format din patru indicatoare digitale mari LED. Au fost inițial catozi obișnuiți, dar s-au schimbat în anod comun în versiunea finală. Puteți pune oricare altele, apoi selectați doar rezistențele de limitare a curentului R1-R7 în funcție de luminozitatea necesară. Ar fi putut fi amplasat pe o placă comună cu partea electronică a ceasului, dar aceasta este mult mai versatil - dintr-o dată vrei să pui un indicator LED foarte mare, astfel încât să poată fi văzute la distanță mare. Un exemplu de astfel de design al unui ceas stradal este aici.

Electronica în sine începe de la 5 V, dar pentru o strălucire strălucitoare a LED-urilor, trebuie să utilizați 12 V. Din rețea, alimentarea este furnizată printr-un adaptor de transformare coborâtor către stabilizator. 7805 , care formează o tensiune de strict 5 V. Atenție la bateria cilindrica mică de culoare verde - servește ca sursă de alimentare de rezervă în cazul unei căderi de rețea de 220 V. Nu este necesar să o luați pentru 5 V - un litiu-ion sau baterie Ni-MH pentru 3,6 volți este suficient.

Pentru acest caz, puteți utiliza diverse materiale - lemn, plastic, metal sau încorporați întreaga construcție a unui ceas de casă într-unul industrial finit, de exemplu, de la un multimetru, tuner, radio și așa mai departe. Am făcut din plexiglas, deoarece este ușor de prelucrat, vă permite să vedeți interiorul, astfel încât toată lumea să poată vedea - acest ceas este asamblat de propriile mâini. Și, cel mai important, era în stoc :)

Aici puteți găsi toate detaliile necesare pentru proiectarea propusă a unui ceas digital de casă, inclusiv schema circuitului, aspectul PCB-ului, firmware-ul PIC și

Top articole similare