Top 10 Articoli
Il Ottobre 12, 2021 da adminDi recente, abbiamo pubblicato un progetto Arduino entry-level con un singolo display a LED a sette segmenti. Anche se è un progetto fai da te sorprendente, abbiamo notato che la maggior parte dei lettori sono alla ricerca di circuiti più avanzati utilizzando più display a diodi emettitori di luce a sette segmenti. Ecco un semplice, ma utile circuito di un display a LED a 4 cifre a 7 segmenti di Arduino. Il modulo usato qui è un modulo a catodo comune autonomo e compatto che contiene quattro display numerici a LED a 7 segmenti.
Ogni segmento nel modulo di visualizzazione è multiplexato, cioè condivide gli stessi punti di connessione anodica. E ognuna delle quattro cifre nel modulo ha il proprio punto di connessione catodico comune. Questo permette ad ogni cifra di essere accesa o spenta indipendentemente. Inoltre, questa tecnica di multiplexing trasforma l’enorme quantità di pin del microcontrollore necessari per controllare un display in soli undici o dodici (al posto di trentadue)!
I segmenti LED del display richiedono resistenze di limitazione della corrente quando sono alimentati da un pin logico a 5 V. Il valore della resistenza è tipicamente tra 330 e 470 ohm. Inoltre, i transistor driver sono raccomandati per fornire ulteriore corrente di pilotaggio ai segmenti LED, perché ogni pin di un microcontrollore può generare o scaricare solo circa 40 mA di corrente. Quando tutti (sette) i segmenti del display si accendono contemporaneamente (il numero 8), la richiesta di corrente supererà questo limite di 40 mA. L’immagine mostrata di seguito indica lo schema di cablaggio di base delle resistenze di limitazione della corrente e dei transistor del driver.
Prossimo è lo schema di aggancio del display a LED a 4 cifre a 7 segmenti di Arduino, seguito dallo sketch di Arduino. Segui attentamente lo schema di collegamento per completare il tuo hardware, e poi carica lo sketch su Arduino usando l’IDE di Arduino come al solito. Il circuito finito può visualizzare numeri che vanno da 0 a 1023, in connessione con un potenziometro da 10K collegato all’ingresso analogico A0 della scheda Arduino.
Questa sezione di display a 7 segmenti a 4 cifre è cablata intorno a quattro display a LED a 7 segmenti a catodo comune e quattro transistor BC547 npn. Le resistenze da 1K sono usate per limitare la corrente di base, e le resistenze da 390R limitano la corrente operativa dei segmenti del display a LED.
Nella scheda Arduino, le uscite digitali da D2 a D8 sono usate per pilotare i segmenti (da a a g), e le uscite digitali da D9 a D12 sono usate per le cifre (D0-D3) del display a LED 4×7. Notate che qui l’opzione punto decimale (dp) non è usata, ma inclusa nello sketch. D13 di Arduino è riservato al segmento del punto decimale. Il potenziometro 10K è collegato all’ingresso analogico AO, come indicato nello schema di collegamento.
Prototipo @ Lavoro
/** Arduino 4x7 LED Display* Displays numbers ranging from 0 through 1023* Test Code displays the value of a sensor connected to the analog input A0* Inspired by a code found in the Arduino Cookbook* Tested at TechNode Protolabz/July 2014*/// bits representing segments A through G (and decimal point) for numerals 0-9const int numeral = { //ABCDEFG /dp B11111100, // 0 B01100000, // 1 B11011010, // 2 B11110010, // 3 B01100110, // 4 B10110110, // 5 B00111110, // 6 B11100000, // 7 B11111110, // 8 B11100110, // 9};// pins for decimal point and each segment// DP,G,F,E,D,C,B,Aconst int segmentPins = { 13,8,7,6,5,4,3,2 };const int nbrDigits= 4; // the number of digits in the LED display//dig 0 1 2 3const int digitPins = { 9,10,11,12 };void setup(){ for(int i=0; i = 0; digit--) { if(number > 0) { showDigit( number % 10, digit) ; number = number / 10; } } }} // Displays given number on a 7-segment display at the given digit positionvoid showDigit( int number, int digit){ digitalWrite( digitPins, HIGH ); for(int segment = 1; segmentShare this:
Lascia un commento