Hai mai voluto realizzare un progetto che utilizza un display a 7 segmenti a 4 o 8 cifre?
Pilotare un gran numero di 7-segment display con un Arduino UNO può essere complicato, poiché richiede molti pin e funzioni software complesse.
Qui entra in gioco il driver per display a 7 segmenti CD4511.
Il CD4511 è un circuito integrato decodificatore latch BCD-to-7-segment, ampiamente usato in orologi digitali, contatori e sistemi di visualizzazione.
Il CD4511 converte dati in codice decimale binario (BCD) in un pattern per display a 7 segmenti.
Usando il CD4511, puoi collegare il tuo Arduino UNO a un numero maggiore di display a 7 segmenti usando meno pin e meno sforzo software.
In questo articolo fornirò uno schema di collegamento e esempi di codice per aiutarti a usare il CD4511 con il tuo Arduino UNO.
Che tu sia un principiante o un maker esperto, il CD4511 è uno strumento utile e potente per il tuo prossimo progetto con display a 7 segmenti.
Prendi la tua breadboard e iniziamo!
Componenti necessari per realizzare il progetto Arduino e display a 7 segmenti con CD4511
Componenti hardware
- Arduino Uno Rev3 x 1
- CD4511 chip – BCD to 7-segment decoder x 1
- 7-segment display x 1 (opzionale)
- Dupont wire x 1 set
- Arduino USB cable x 1
- Arduino Power adapter x 1 (opzionale)
Software
Makerguides.com partecipa al Programma di affiliazione Amazon Services LLC Associates, un programma pubblicitario affiliato progettato per fornire ai siti un mezzo per guadagnare commissioni pubblicitarie promuovendo e collegandosi a prodotti su Amazon.com.
Nozioni di base sul decodificatore BCD CD4511
In questa sezione capiremo le basi del circuito integrato decodificatore BCD CD4511. È un decodificatore BCD a 7 segmenti a basso costo con molte funzionalità e un driver di display molto semplice.
Il CD4511 è un IC utile per pilotare display a 7 segmenti. È un dispositivo CMOS progettato per essere a basso consumo e immune al rumore. Questo lo rende ideale per molte applicazioni.
Il CD4511 prende dati in codice decimale binario (BCD) e fornisce in uscita le informazioni corrispondenti a un display a 7 segmenti.
Il CD4511 ha quattro ingressi BCD e sette uscite per il display a 7 segmenti.
I quattro ingressi BCD sono collegati agli ingressi dati, mentre le sette uscite sono collegate ai segmenti del display a 7 segmenti.
L’immagine sottostante mostra il diagramma a blocchi funzionale del circuito integrato CD4511.

Quando invii un numero BCD al CD4511, questo lo decodifica e accende i segmenti corrispondenti per visualizzare il numero sul display a 7 segmenti.
Una delle grandi qualità del CD4511 è la sua flessibilità. Può essere usato con display a 7 segmenti a catodo comune e ad anodo comune, rendendolo una scelta popolare per una vasta gamma di progetti.
È anche facile da usare – basta collegare ingressi e uscite, e il CD4511 fa il resto.
L’immagine sottostante mostra il dettaglio del pinout del CD4511.

Un altro vantaggio del CD4511 è il suo basso consumo energetico. Questo lo rende ideale per progetti alimentati a batteria dove è importante risparmiare energia.
Il circuito integrato CD4511 ha una funzione di test lampada (LT), che accende tutti i segmenti del display a 7 segmenti.
Se vuoi spegnere temporaneamente tutti i segmenti, il CD4511 dispone anche di una funzione di blanking attiva bassa.
Questa funzione ti permette di creare effetti lampeggianti, rendendo i tuoi display più dinamici e accattivanti. La tabella sottostante riassume le funzioni.

Che tu stia lavorando a un progetto semplice o più complesso, il CD4511 è un’ottima scelta per pilotare display a 7 segmenti.
Caratteristiche del CD4511
Ecco le caratteristiche del circuito integrato CD4511 compatibile con Arduino:
- Intervallo di tensione operativa da 4,5 V a 5,5 V
- Elevata capacità di erogazione corrente (7,5 mA)
- Alta immunità al rumore
- Latch di ingresso per la memorizzazione del codice BCD
- Ritardi di propagazione e tempi di transizione bilanciati
- Consumo massimo di corrente di 8 µA a temperatura ambiente
- Funzione di blanking dei segmenti
- Funzione “all lamp” (per testare e debuggare facilmente i segmenti)
Dettagli dei pin del circuito integrato CD4511
Gli ingressi BCD sono usati per inserire dati in codice decimale binario, che vengono decodificati e poi visualizzati su un display a 7 segmenti.
L’ingresso Lamp Test serve per testare tutti i segmenti del display a 7 segmenti. L’ingresso Blanking serve per spegnere temporaneamente tutti i segmenti.
Le uscite a 7 segmenti pilotano i segmenti corrispondenti nel display a 7 segmenti.
Ho riassunto la descrizione dei pin del chip CD4511 nella tabella sottostante.
| Numero pin | Nome pin | Funzione pin |
| 1 | D1 | Ingresso dati BCD D1 |
| 2 | D2 | Ingresso dati BCD D2 |
| 3 | #LT | Test lampada (attivo basso) |
| 4 | #BL | Funzione blanking (attivo basso) |
| 5 | #LE | Abilitazione latch (ingresso attivo basso) |
| 6 | D3 | Ingresso dati BCD D3 |
| 7 | D0 | Ingresso dati BCD D0 |
| 8 | GND | Connessione a massa |
| 9-15 | a-f | Pin di pilotaggio dei segmenti LCD |
| 16 | VCC | Pin di alimentazione. Questo pin dovrebbe essere disaccoppiato usando un condensatore da 0,1 µF a 1,0 µF. |
Possibili applicazioni del circuito integrato CD4511
- Display digitali in orologi e calcolatrici
- Pannelli di controllo di una stazione meteorologica per visualizzare temperatura, pressione, ecc.
- Informazioni numeriche visualizzate su bilance
- Strumenti di misura, e
- Sistemi di controllo di processi industriali, ecc.
Istruzioni passo-passo per collegare il CD4511 con Arduino UNO e display a 7 segmenti
In questa sezione costruiremo un progetto usando Arduino UNO, display a 7 segmenti e il modulo CD4511.
I collegamenti sono semplici e richiedono molto meno tempo per essere completati.
Iniziamo con i collegamenti hardware!
Come collegare il driver a 7 segmenti CD4511 all’Arduino UNO?
Di seguito la guida passo-passo per completare il collegamento tra Arduino e il modulo CD4511.
Passo 1: Inizia con i collegamenti GND

Collega il pin GND del modulo CD4511 al GND dell’Arduino.
Scegli uno qualsiasi dei pin GND disponibili sull’Arduino per il collegamento.
È una buona pratica iniziare dai collegamenti GND.
Passo 2: Collega le linee BCD al modulo

Collega i pin 2-5 dell’Arduino agli ingressi dati BCD del CD4511.
Passo 3: Termina gli ingressi Lamp test e Blank test

Collega i pin 3 e 4 del circuito integrato CD4511 al pin 5V dell’Arduino. Questi due pin servono per testare il modulo. In questo esempio li collegheremo in modo sicuro.
Passo 4: Collega la linea di alimentazione

Collega il pin VCC del circuito integrato CD4511 al pin 5 V dell’Arduino UNO.
Passo 5: Collega il modulo a 7 segmenti

Collega il modulo a 7 segmenti al circuito integrato CD4511.
Passo 6: Completa il collegamento

Congratulazioni! Hai completato tutti i collegamenti necessari.
Esempio di codice Arduino per il progetto con modulo CD4511
In questa sezione trovi lo sketch Arduino completo e le informazioni per installare le librerie necessarie.
Il codice completo per il progetto Arduino con CD4511
/*
Example of how to drive a seven-segment display using HCF4511 or similar
This sketch drives the display in order to show a number from 0 to 9 every time a button connected to A0 is pressed.
Source: https://projecthub.arduino.cc/Arduino_Scuola/36b84c1e-70fc-4f09-87a3-62fb39dc21cb
*/
//Declaration of Arduino pins used as HCF4511 inputs
const int A = 2;
const int B = 3;
const int C = 4;
const int D = 5;
void setup() {
pinMode(A0, INPUT);
pinMode(A, OUTPUT); //LSB
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT); //MSB
}
int count = 0; //the variable used to show the number
void loop() {
if (digitalRead(A0) == LOW) //if button is pressed
{
count++;
delay(200); //the delay prevent from button bouncing
if (count == 10) //we want to count from 0 to 9!
count = 0;
to_BCD(); //convert to binary
}
if (count == 10)
count = 0;
}
void to_BCD()
{
if (count == 0) //write 0000
{
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
}
if (count == 1) //write 0001
{
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
}
if (count == 2) //write 0010
{
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
}
if (count == 3) //write 0011
{
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
}
if (count == 4) //write 0100
{
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
}
if (count == 5) //write 0101
{
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
}
if (count == 6) //write 0110
{
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
}
if (count == 7) //write 0111
{
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
}
if (count == 8) //write 1000
{
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
}
if (count == 9) //write 1001
{
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
}
}
Il codice è scritto in modo semplice. Se vuoi visualizzare 1 sul display a 7 segmenti, devi inviare 0001 ai pin di ingresso BCD del decodificatore CD4511.
if (count == 1) //write 0001
{
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
}
Un altro modo per ridurre la lunghezza del codice è definire una funzione che prende il valore del conteggio come input e lo mappa sugli ingressi BCD.
Domande frequenti su CD4511 e progetti Arduino
Ho incluso una lista delle domande più frequenti sui progetti realizzati con Arduino e il modulo BCD-to-7-segment CD4511.
Se hai altre domande, per favore scrivile nella sezione commenti. Sarò felice di risponderti.
1. Cos’è il circuito integrato CD4511?
Il CD4511 è un circuito integrato comunemente usato per controllare display a 7 segmenti in varie applicazioni, come orologi digitali, calcolatrici e altri progetti con display.
Agisce come decodificatore e driver, convertendo ingressi in codice decimale binario (BCD) in uscite. Le uscite binarie controllano i segmenti del display a 7 segmenti.
Si trova in molti progetti hobbistici e applicazioni commerciali dove si usano display a 7 segmenti.
2. Come funziona il CD4511 con una scheda Arduino?
Il CD4511 funziona insieme a una scheda Arduino ricevendo ingressi binari dalla scheda, decodificandoli e pilotando i segmenti corrispondenti del display a 7 segmenti.
Il CD4511 richiede il collegamento all’alimentazione (5 V), massa e ingressi dati dalla scheda Arduino per funzionare correttamente (ingressi BCD).
3. Quali sono i vantaggi di usare il CD4511 con una scheda Arduino?
Il CD4511 offre diversi vantaggi se usato con una scheda Arduino.
- È una soluzione compatta ed economica per controllare display a 7 segmenti, combinando le funzioni di decodificatore e driver in un unico circuito integrato.
- Riduce anche la quantità di cablaggio e il numero di componenti necessari, rendendo il progetto complessivo più semplice e facile da costruire.
- Semplifica il software e fa risparmiare tempo e complessità di programmazione.
4. Quanti ingressi ha il CD4511?
Il CD4511 ha quattro pin di ingresso. Puoi usarli per ricevere dati in codice decimale binario (BCD) dalla scheda Arduino UNO.
Il circuito integrato CD4511 decodifica i dati e controlla i segmenti del display a 7 segmenti.
Ci sono anche ingressi di test per eseguire un controllo rapido di base. Consulta la sezione nozioni di base sul CD4511 sopra per maggiori dettagli.
5. Qual è la corrente massima che il CD4511 può pilotare?
Il CD4511 è in grado di pilotare una corrente massima di 15 mA per segmento.
Questo gli permette di alimentare i display a 7 segmenti più comuni, inclusi quelli usati in orologi digitali, calcolatrici e altri progetti con display.
6. Il CD4511 può essere usato con altri microcontrollori oltre alla scheda Arduino?
Sì, il CD4511 può essere usato con altri tipi di microcontrollori oltre alla scheda Arduino.
Tuttavia, il cablaggio specifico e il codice richiesto dipenderanno dal microcontrollore usato, così come dal tipo di display a 7 segmenti impiegato.
È importante consultare il datasheet sia del CD4511 che del microcontrollore per assicurare compatibilità e uso corretto.
Conclusione
In questo articolo abbiamo esplorato tutte le caratteristiche e capacità chiave del CD4511.
Ho fornito una guida completa su come usarlo con un Arduino UNO.
Con la guida passo-passo per i collegamenti e gli esempi di codice funzionanti, hai tutte le informazioni necessarie per iniziare il tuo progetto con CD4511 e Arduino.
Spero che questo articolo ti sia stato molto utile per imparare a conoscere il CD4511 e come usarlo con Arduino.
Se hai domande, commenti o suggerimenti, non esitare a contattarmi.
Il mio obiettivo è assicurarmi che tu abbia tutte le informazioni e il supporto necessari per avere successo nei tuoi progetti in un unico posto.
Se hai trovato informazioni mancanti o suggerimenti di miglioramento, fammelo sapere.
Continua a sperimentare. Continua a imparare!

