Pinout e applicazioni del display a 7 segmenti (Anodo/Catodo comune)

Indice

Cos'è un display a 7 segmenti?

Un display a 7 segmenti è un componente elettronico composto da 7 LED individuali disposti in uno schema specifico per visualizzare cifre (da 0 a 9) e alcune lettere. Questi LED sono denominati a, b, c, d, e, f, g e il display include in genere un punto decimale opzionale (dp).

128 variations of 7 segment display
128 variations of 7 segment display
7 segment display animation in variable arabic numerals and characters
7-segment display animation

A seconda delle diverse disposizioni e combinazioni, ci sono 128 variazioni (numeri arabi e caratteri) per il display a 7 segmenti.

Schema dei pin del display a 7 segmenti

Quando si progetta un PCB o si collega una breadboard, comprendendo lo standardPinout del display a sette segmentiè fondamentale. La maggior parte dei display a una cifra sono disponibili in un pacchetto standard in linea a 10 pin standard. LeSegmento di pinout 7La configurazione in genere posiziona 5 pin in alto e 5 in basso.

Lo schema dei pin di un display a 7 segmenti varia in base al suo tipo, che è principalmente diviso in due categorie: anodo comune e catodo comune.

7 segment display pinout
7-segment display pinout

Configurazione dei pin

Di seguito è riportato un esempio di assegnazione dei pin per un tipico display a 7 segmenti (nota che gli schemi dei pin effettivi possono variare a seconda del produttore e del modello):

Anodo comune a 7 segmenti Pinout

Tutti gli anodi (positivi) del display a 7 segmenti sono collegati insieme e quando un catodo viene portato a livello basso, il LED corrispondente si accende.

Common anode 7 segment display
Common anode 7-segment display
  • g, f, a, b, e, d, c, dp: questi sono i pin del segmento, corrispondenti ai sette segmenti e al punto decimale, rispettivamente.
  • COM: il pin dell’anodo comune, collegato a VCC.

questo specificoAnodo comune a 7 segmenti PinoutAssicura che quando il microcontrollore affonda la corrente (tira il pin basso), il circuito è completato e il segmento corrispondente si accende.

Pinout del display del segmento del catodo comune

Tutti i catodi (negativi) del display a 7 segmenti sono collegati insieme e quando un anodo (positivo) viene portato a livello alto, il LED corrispondente si accende.

Common cathode 7 segment display
Common cathode 7-segment display

Allo stesso modo, i pin del segmento (g, f, a, b, e, d, c, dp) corrispondono ai segmenti e al punto decimale, ma il pin del catodo comune (COM) è collegato a GND.

Cablaggio del display a 7 segmenti

Per far funzionare un display a 7 segmenti, i singoli segmenti (a, b, c, d, e, f, g, dp) devono essere collegati a specifici pin di output su un microcontrollore. Ad esempio, per un display a 7 segmenti a catodo comune, l’estremità negativa di ciascun segmento è collegata a un polo di massa comune, mentre l’estremità positiva di ciascun segmento è collegata a un diverso pin di output sul microcontrollore.

Configurazione di cablaggio di base

  • display a 7 segmenti ha 8 pin (7 per i segmenti e 1 per il punto decimale).
  • Ogni pin corrispondente a un segmento (da a a g) è collegato al microcontrollore.
  • Per la configurazione a catodo comune, collegare il pin del catodo comune a massa.

Esempio di connessione ad Arduino

Quando si interfaccia un display a 7 segmenti con un Arduino, i pin del segmento sono in genere collegati a diversi pin digitali sulla scheda Arduino. Ad esempio, in una configurazione ad anodo comune, i pin del segmento potrebbero essere collegati come segue:

  • a – Pin Arduino 7
  • b – Pin Arduino 8
  • c – Pin Arduino 4
  • d – Pin Arduino 3
  • e – Pin Arduino 2
  • f – Pin Arduino 6
  • g – Pin Arduino 5
  • COM – Pin Arduino 9 (collegato a VCC)

In questa configurazione, per illuminare un segmento specifico, il pin Arduino corrispondente è impostato su LOW, mentre il pin dell’anodo comune rimane HIGH.

Come controllare un display a 7 segmenti

La chiave per controllare un display a 7 segmenti è fornire la corretta tensione ai singoli segmenti per formare il numero o il simbolo desiderato.

Visualizzazione dei numeri

Per visualizzare un numero, il microcontrollore deve accendere i segmenti appropriati. Ad esempio:

  • Per visualizzare 0, i segmenti a, b, c, d, e e f devono essere illuminati, mentre il segmento g rimane spento.
Digital encoding for 7 segment display
Digital encoding for 7-segment display

Componenti richiesti

Simile a una matrice LED, questo progetto richiederà una notevole quantità di cablaggio e resistenze. Poiché ogni LED necessita della propria resistenza per prevenire il bruciore, assicurati di avere a disposizione resistenze sufficienti. Per l’intero progetto, avrai bisogno dei seguenti componenti:

  • Arduino Uno
  • Arduino IDE
  • Display a sette segmenti
  • Cavi elettrici
  • 8 resistenze da 220 ohm
  • Breadboard
  • Cavo USB

Esempio di codice per visualizzare i numeri

				
					int pin_a = 7, pin_b= 6, pin_c = 5, pin_d = 10, pin_e = 11, pin_f = 8, pin_g = 9, pin_p = 4;

// Segment data for digits 0-9
int numTable[10][8] = {
  {1, 1, 1, 1, 1, 1, 0, 0}, // 0
  {0, 1, 1, 0, 0, 0, 0, 0}, // 1
  {1, 1, 0, 1, 1, 0, 1, 0}, // 2
  {1, 1, 1, 1, 0, 0, 1, 0}, // 3
  {0, 1, 1, 0, 0, 1, 1, 0}, // 4
  {1, 0, 1, 1, 0, 1, 1, 0}, // 5
  {1, 0, 1, 1, 1, 1, 1, 0}, // 6
  {1, 1, 1, 0, 0, 0, 0, 0}, // 7
  {1, 1, 1, 1, 1, 1, 1, 0}, // 8
  {1, 1, 1, 1, 0, 1, 1, 0}, // 9
};

void setup(){
  for (int i = 4; i <= 11; i++){
    pinMode(i, OUTPUT);
  }
}

void loop(){
  for (int i = 0; i < 10; i++){
    digitalWrite(pin_a, numTable[i][0]);
    digitalWrite(pin_b, numTable[i][1]);
    digitalWrite(pin_c, numTable[i][2]);
    digitalWrite(pin_d, numTable[i][3]);
    digitalWrite(pin_e, numTable[i][4]);
    digitalWrite(pin_f, numTable[i][5]);
    digitalWrite(pin_g, numTable[i][6]);
    digitalWrite(pin_p, numTable[i][7]);
    delay(1000);
  }
}

				
			

In questo esempio, l’array numTable contiene i dati necessari per accendere i segmenti appropriati per ogni cifra.

Progetti con display a 7 segmenti a più cifre

Per i display a più cifre, il modo più semplice per controllare più display a 7 segmenti è attraverso il multiplexing, un altro modo è la libreria Arduino.

Tecnica di multiplexing

Con il multiplexing, più display condividono lo stesso set di pin di controllo e ogni display viene acceso in sequenza. Questo viene fatto così velocemente che l’occhio umano percepisce tutte le cifre come illuminate contemporaneamente.

Esempio di codice per display a 7 segmenti multiplexati

				
					const int digitPins[3] = {2, 3, 4}; // Digit selection pins
const int segmentPins[8] = {6, 7, 8, 9, 10, 11, 12, 13}; // Segment pins
int numTable[10][8] = { {0, 0, 0, 0, 0, 0, 1, 1}, {1, 0, 0, 1, 1, 1, 1, 1}, ... };

void setup(){
  for (int i = 2; i <= 4; i++) {
    pinMode(i, OUTPUT);
    digitalWrite(i, LOW);
  }
  for (int i = 6; i <= 13; i++) {
    pinMode(i, OUTPUT);
    digitalWrite(i, HIGH);
  }
}

void loop(){
  for (int i = 0; i < 10; i++){
    for (int j = 0; j < 3; j++) {
      showdigit(i, j);
    }
    delay(500);
  }
}

void showdigit(int num, int digit){
  digitalWrite(digitPins[digit], HIGH);
  for (int i = 0; i < 8; i++) {
    digitalWrite(segmentPins[i], numTable[num][i]);
  }
  delay(500);
  digitalWrite(digitPins[digit], LOW);
}

				
			

Utilizzo di librerie per controllare i display a 7 segmenti

Per comodità, sono disponibili librerie come SevSeg per semplificare il controllo dei display a 7 segmenti. Questa libreria è utile per controllare i display a più cifre, in quanto astrae gran parte del cablaggio e della logica di controllo complessi.

Possiamo cercare e installare SevSeg dal menu Arduino: Strumenti >> Gestisci librerie.

Install SevSeg library on Arduino
Install SevSeg library on Arduino

Esempio di codice che utilizza la libreria SevSeg

				
					#include "SevSeg.h"
SevSeg sevseg;

void setup() {
  sevseg.begin(COMMON_CATHODE, 3, digitPins, segmentPins);
}

void loop() {
  int readValue = analogRead(A0);
  int showValue = map(readValue, 0, 1023, 0, 999);
  sevseg.setNumber(showValue, 3);
  sevseg.refreshDisplay();
}

				
			

Applicazioni dei display a 7 segmenti

Grazie alla sua semplicità, facilità d’uso e basso costo, il display a 7 segmenti è ampiamente utilizzato in varie applicazioni, come:

  • Orologi elettronici: visualizzazione di ora e data;
  • Calcolatrici: visualizzazione dei risultati dei calcoli;
  • Elettrodomestici: pannelli di visualizzazione per prodotti come forni a microonde, condizionatori d’aria e lavatrici;
  • Cruscotti auto: visualizzazione di informazioni come velocità e chilometraggio;
  • Apparecchiature industriali: visualizzazione delle letture da dispositivi come controllori di temperatura e manometri;
  • Strumenti di laboratorio: visualizzazione di dati e risultati sperimentali;
  • Elettronica di consumo: display del controllo del volume su apparecchiature audio.

Domande frequenti (FAQ)

D: Dove posso trovare un diagramma a sette segmenti di pinout standard?

R: Uno standardPinout sette segmentiIl diagramma mostrerà 10 pin. I pin 3 e 8 sono tipicamente i terminali comuni (COM), mentre i restanti perni controllano i segmenti da A a G e il punto decimale (DP).

A: No. Mentre entrambi condividono il numero “7”, aPinout del trasformatore a 7 pinSi riferisce a un componente magnetico utilizzato negli alimentatori e nella regolazione della tensione. È completamente estraneo ai segmenti LED e alla logica di cablaggio di un display elettronico a 7 segmenti discusso in questa guida.

Come identificare il pinout di un display a 7 segmenti sconosciuto

La numerazione dei pin cambia con il contenitore, quindi un display a 7 segmenti sconosciuto va identificato elettricamente prima di collegarlo al controllore. Togliere l’alimentazione e impostare il multimetro sulla prova diodi. Tenere un puntale su un possibile pin comune e toccare gli altri pin con il secondo. I segmenti accesi rivelano il terminale comune e indicano se il display è ad anodo comune o a catodo comune.

  1. Trovare il comune: ripetere la prova con entrambe le polarità finché si accendono più segmenti.
  2. Mappare i segmenti: annotare ogni pin da a a g e dp, senza dedurre l’ordine dal contenitore.
  3. Confermare in sicurezza: nella prova a bassa tensione usare un resistore da 330 Ω a 1 kΩ.
  4. Parti multiplexate: individuare separatamente i comuni delle cifre e rispettare corrente e duty cycle del datasheet.

Conclusione

I display a 7 segmenti sono componenti versatili che consentono la semplice visualizzazione di dati numerici. Comprendere il loro cablaggio, i metodi di controllo e le applicazioni può migliorare notevolmente la funzionalità dei tuoi progetti, da semplici orologi a display complessi. Che tu stia utilizzando il multiplexing, le librerie o i registri a scorrimento, ci sono molti modi per controllare efficacemente i display a 7 segmenti, ognuno adatto a diversi requisiti di progetto.

Informazioni sull'autore

Picture of Aidan Taylor
Aidan Taylor

Sono Aidan Taylor e ho oltre 10 anni di esperienza nel campo del reverse engineering PCB, progettazione di PCB e sblocco IC.

Condividi

Post consigliati

Hai bisogno di aiuto?

Torna in alto

Preventivo immediato

Instant Quote