Șapte segmente de programare de afișare
Bună ziua dragi prieteni!
Bine ați venit pe site-ul „Lumea de microcontrolere“
Șapte segmente cu LED-uri: de lucru de programare
Traducere zecimal binar cu codul de afișare șapte segmente
Programarea dintr-o cifră de afișare cu șapte segmente
În prima parte a LED-urilor din șapte segmente, o descriere a indicatorului și cum să-l conecteze la microcontroler. În al doilea și al treilea aspect, am trecut în mod constant toate etapele de organizare a microcontrolerului cu indicatorul și crearea programului, ceea ce va avea ca rezultat un design real de lucru.
Traducere zecimal binar cu codul de afișare șapte segmente
Să aruncăm o privire la schema electrică a unui segment de șapte LED-uri la un microcontroler:
În această schemă, concluziile PB0 portului ... ..PB7 conectat la bornele indicatorului într-o anumită secvență. Concluzia PB0 corespunde segmentului „A“ și portul de ieșire mai departe, respectiv, numărul de serie și alfabet indicator știftului, în care punctul zecimal «dp» PB7 este conectat la portul terminalului. Acum, și apoi vom lua în considerare diagramele de conectare pentru indicatorii cu catod comun, iar eu voi insera un supliment pentru afișare comun anod, dacă este necesar.
Pentru a evidenția un anumit număr pe ecran, este necesar să se constatările relevante ale porturilor microcontroler pentru a seta unitatea de logică
În figura de mai sus, numerele negre de la 0 la 7 - pinii portului, litere verzi - concluzii cu LED-uri, zerouri roșu - nivelurile logice de la ieșirile portului (în cazul de față nivelul logic „0“). Pentru a, de exemplu, pentru a evidenția pe display numărul „4“ și lumină un punct zecimal, trebuie să se aplice logic 1 la bornele indicatorului B, C, F, G și dp, care corespunde unității logice pentru a furniza pinii portului 1,2,5 6 și 7:
Prin urmare, primul lucru pe care trebuie să facem este de a determina adecvarea fiecărui număr zecimal cifre binare, ceea ce este necesar pentru a da de ieșire din porturile microcontrolerului pentru a aprinde segmentele indicatoare corespunzătoare.
Pentru „cvartetul“ Am identificat deja următoarea secvență = 1110 0110, care corespunde cu numărul hexazecimal 66h, definiți pentru celelalte numere:
Operațiunea, pe care le-am făcut, este numit binar de traducere zecimală cu codul de afișare șapte segmente.
Acest tabel este dat pentru indicatorii șapte segmente cu un catod comun (segment LED este aprins nivel logic „1“). Pentru indicatorii cu un anod comun (indicator segment aprins nivel logic „0“) coduri binare au nevoie pentru a inversa (schimba 0 la 1 și invers), și re-calcula valorile corespunzătoare în hexazecimal.
Programarea dintr-o cifră de afișare cu șapte segmente
Folosind un indicator cu o singură cifră în construcții pot fi solicitate în diferite cazuri. De exemplu, vom colecta de blocare de cod și este necesar să clipească numărul corespunzător butonului apăsat, sau în numărul de alarmă să clipească senzor declanșat. Așa că domeniul de aplicare al indicatorilor cu un singur decente.
Organizarea retragerea numerelor pe un indicator de un bit, vom emite un subprogram: „Afișează informații cu o singură cifră șapte segmente cu LED-uri de afișare“ astfel încât atunci această rutină cu modificări minime pot fi folosite în orice program.
Acesta este modul în care, de exemplu, algoritmul Builder (alte exemple, de asemenea, pentru acest program), a anunțat numele variabilelor din memoria de program (RAM, SRAM):
Indicatorul de rutină de inițializare (subrutina este numit din programul principal înainte de a apela subrutina de ieșire informații pe ecran):
Și acum să ne uităm la partea principală a programului, și decripta-l:
Programul principal este înregistrat la persoana de contact desemnată de date variabile numărul curent (de exemplu, - figura 6) și să-l aducă la lumină pentru a apela o subrutină Indikator_1.
Sper că materialul este prezentat este disponibil, dacă ceva nu este clar, întrebați.
(15 voturi Evaluare: 4.93 out of 5)