
Sommario:
2025 Autore: John Day | [email protected]. Ultima modifica: 2025-01-23 14:49

Creazione di un contatore che aumenta quando viene premuto un pulsante utilizzando il MAX7221.
Passaggio 1: parti
MAX7221 o MAX7219
Interruttore
4 Display a 7 segmenti (catodo comune)
2 resistori: 10k e 9.53k (ho usato un 9.1k e funziona ancora)
Arduino
Passaggio 2: costruzione del circuito



Ho annotato solo i pin che ho usato, puoi trovare il layout completo dei pin sul datasheet o l'ho allegato. Assicurati di cercare il tuo display a 7 segmenti perché probabilmente sarà diverso dal mio, ma la procedura è la stessa.
1. Collegare le cifre 0 - 3 sul MAX7221 alle cifre 1 - 4 sul display. La cifra MAX 0 si collega alla cifra 1 dei display, ecc. I display sono semplicemente non convenzionali e iniziano da 1 anziché da 0.
2. Collegare i segmenti A - G sul MAX7221 ai segmenti A - G sul display.
3. Alimentare e mettere a terra il MAX. VCC va al pin 19. Anche il resistore da 10k è collegato ai pin 19 e 18. La massa va ai pin 4 e 9.
4. Il MAX7221 comunica con Arduino tramite SPI (Serial Peripheral Interface). In questo caso sono necessari solo 3 fili perché non sto usando MISO (Master In Slave Out). Sul MAX7221 collega il pin 1 (Din) all'Arduino, nel mio caso ho usato il pin 12. Questo è il tuo MOSI (Master Out Slave In) o i dati. Il pin 12 sul MAX è CS (Chip Select Input) ed è il modo in cui i dati vengono caricati nello Shift Register, l'ho collegato al pin 9 su Arduino. L'ultima connessione è CLK che è il pin 13 del MAX, l'ho collegato al pin 10 dell'Arduino.
Assicurati di fornire alimentazione e messa a terra tramite Arduino utilizzando 5 volt. Mi sono imbattuto nel problema in cui il mio Arduino non dava abbastanza potenza alla mia scheda.
Questo è per la scheda tecnica MAX7221. Anche da dove vengono le immagini.
www.mouser.com/datasheet/2/256/max7219-max…
Passaggio 3: l'interruttore

Ho cablato l'interruttore dallo schema sopra. Trovato su
Ho usato il pin 8 su Arduino per controllare l'interruttore e un resistore da 10k.
Passaggio 4: codice
Ho usato la libreria LedControl.h trovata su GitHub e il loro codice di base per accendere il MAX7221. Ho quindi modificato il codice per contare da 0 a 9999 quando viene premuto il pulsante.
#include "LedControl.h"
pulsante int = 8;
LedControl lc=LedControl(12, 10, 9, 1);
void setup() {
pinMode(pulsante, INGRESSO);
lc.shutdown(0, falso); // MAX7221 è in modalità di risparmio energetico, quindi dobbiamo riattivarlo
lc.setIntensity(0, 15); // Impostazione della luminosità, max 15
lc.clearDisplay(0); // cancellazione del display
}
ciclo vuoto(){
int state = digitalRead(pulsante);
int i = 0;
intj = 0;
intk = 0;
intl = 0;
mentre(1){
stato = digitalRead(pulsante);
while(stato == 1){
stato = digitalRead(pulsante);
lc.setDigit(0, 3, i, false);
io++;
ritardo(100); // puoi scherzare con questo
se(io == 10){
io = 0;
j++;
se(j == 10){
j = 0;
k++;
se(k == 10){
k = 0;
l++;
if(l == 10){
mentre(1){
lc.setRow(0, 0, 0x3E); // quando il display ha raggiunto 9999 visualizzerà U -- 1
lc.setRow(0, 1, 0x1); // In valore decimale esadecimale
lc.setRow(0, 2, 0x1);
lc.setDigit(0, 3, 1, falso);
}
}
lc.setDigit(0, 0, l, false);
}
lc.setDigit(0, 1, k, false);
}
lc.setDigit(0, 2, j, false);
}
}
}
}
Consigliato:
Contatore visitatori utilizzando Arduino su TinkerCad: 3 passaggi

Contatore visitatori utilizzando Arduino su TinkerCad: molte volte abbiamo bisogno di monitorare la persona o le persone che visitano un luogo come la sala seminari, la sala conferenze o il centro commerciale o il tempio. Questo progetto può essere utilizzato per contare e visualizzare il numero di visitatori che entrano all'interno di qualsiasi sala conferenze o seminario
Contatore abbonati YouTube utilizzando un display E-Paper e Raspberry Pi Zero W: 5 passaggi (con immagini)

Contatore di abbonati YouTube utilizzando un display E-Paper e Raspberry Pi Zero W: in questo Instructable, ti mostrerò come creare il tuo contatore di abbonati YouTube utilizzando un display e-paper e un Raspberry Pi Zero W per interrogare l'API di YouTube e aggiornare il display. I display e-paper sono ottimi per questo tipo di progetto in quanto hanno
BI - CONTATORE VISITATORI DIREZIONALE UTILIZZANDO 8051 (AT89S52): 4 Passi

BI - CONTATORE VISITATORI DIREZIONALE UTILIZZANDO 8051 (AT89S52): L'obiettivo di questo progetto è contare il numero di visitatori che entrano ed escono da una stanza e aggiornare i dettagli su un display LCD. Questo progetto consiste in un microcontrollore AT89S52, due sensori IR e display LCD . I sensori IR rilevano l'esterno
Contatore BCD utilizzando TRANSISTORI discreti: 16 passaggi

Contatore BCD che utilizza TRANSISTORI discreti: oggi in questo mondo digitale, creiamo diversi tipi di circuiti digitali utilizzando circuiti integrati e microcontrollori. Ho anche creato tonnellate di circuiti digitali. In quel momento penso a come sono fatti questi. Quindi, dopo alcune ricerche, scopro che questi sono d
Contatore abbonati YouTube utilizzando una scheda ESP8266: 9 passaggi (con immagini)

Contatore abbonati YouTube utilizzando una scheda ESP8266: cari amici, benvenuti in un altro progetto ESP8266 Oggi costruiremo un contatore abbonati YouTube fai-da-te con un grande display LCD e un involucro stampato in 3D. Cominciamo! In questo tutorial faremo questo: un abbonato YouTube fai da te