Sommario:
- Forniture
- Passaggio 1: implementazioni implementate nel progetto con Arduino:
- Passaggio 2: cablaggio e screenshot
- Passaggio 3: 74HC595 + codici sorgente
Video: Cascata di registri a scorrimento 74HC595 controllati tramite Arduino ed Ethernet: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Oggi vi presento un progetto che ho realizzato in due versioni. Il progetto utilizza 12 registri a scorrimento 74HC595 e 96 LED, scheda Arduino Uno con shield Ethernet Wiznet W5100. 8 LED sono collegati a ciascun registro a scorrimento. I numeri 0-9 sono rappresentati da LED. Ciascun registro a scorrimento è dotato di 8 terminali di uscita.
Ciascuno dei 4 registri a scorrimento 74HC595 forma un'unità logica: un display per l'elenco di un numero a 4 cifre. In totale, ci sono 3 display logici nel progetto composti da 12 registri a scorrimento.
Le implementazioni sono compatibili per le schede Arduino Nano, Mega, Uno e per gli shield e i moduli Ethernet della famiglia Wiznet, nello specifico i modelli W5100 e W5500 (utilizzando la libreria Ethernet2).
Forniture
- Arduino Uno / Nano
- Wiznet Ethernet W5100 / W5500
- Registro a scorrimento da 4 a 12 74HC595
- 32 fino a 96 diodi LED
Passaggio 1: implementazioni implementate nel progetto con Arduino:
- Webserver - Server HTTP in esecuzione direttamente su Arduino, consente di interpretare il codice HTML
- WebClient - Client in grado di effettuare una richiesta HTTP a un server remoto, inviando/scaricando dati
Server web:
- Fornisce una pagina Web HTML con un modulo che consente di inserire 3 numeri a quattro cifre.
- Dopo l'invio del modulo, i dati vengono elaborati e archiviati nella memoria EEPROM, l'utente viene informato dell'elaborazione dei dati da una sottopagina separata.
- Dopo aver salvato i dati, l'utente viene reindirizzato al modulo.
- La memoria EEPROM è indipendente dall'energia, i dati sono accessibili anche dopo il ripristino dell'alimentazione, ma anche al riavvio della scheda.
- Tutti i numeri vengono quindi rappresentati su tre display costituiti da 12 registri a scorrimento 74HC595.
Cliente Web:
- La comunicazione con il server web avviene ogni 5 secondi dopo il protocollo
- Il server web esegue un'applicazione web PHP che consente di inserire 3 numeri a quattro cifre tramite il modulo HTML.
- I dati del modulo sono archiviati in un database MySQL.
- Arduino richiede di recuperare i dati da questo database tramite una query al server.
- I dati elaborati vengono analizzati da Arduino, quindi tracciati utilizzando i registri a scorrimento 74HC595.
- I dati vengono inoltre archiviati nella memoria EEPROM dell'Arduino, servono in caso di interruzione della connessione al web server / al riavvio delle schede Arduino, servono per il rendering iniziale dei dati sugli shift register.
- I dati vengono sovrascritti nella EEPROM solo quando i dati cambiano, le celle EEPROM vengono salvate da sovrascritture non necessarie.
Passaggio 2: cablaggio e screenshot
Connessione in cascata per i registri a scorrimento 74HC595 (può essere esteso di x più) - Esporta da TinkerCAD. Screenshot è presente dall'interfaccia del server web, quando ottiene i dati tramite modulo HTML, li elabora e li salva nella memoria EEPROM.
Passaggio 3: 74HC595 + codici sorgente
È chiaro dallo schema che vengono utilizzati solo 3 fili dati per controllare i registri a scorrimento:
- Uscita dati - (da SER a 74HC595)
- Uscita orologio - (SRCLK su 74HC595)
- Uscita chiavistello - (RCLK a 74HC595)
I registri a scorrimento possono essere combinati in cascata, mentre altre periferiche possono anche essere controllate da registri a scorrimento, ad esempio relè per la commutazione di elementi di potenza. È anche possibile controllare 500 relè separati (con un numero sufficiente di registri a scorrimento e alimentazione) con un'uscita dati.
Quando si controllano le uscite dei registri, è anche possibile modificare l'ordine dei byte al bit più significativo - MSB FIRST, oa LSB - il bit meno significativo. Di conseguenza, inverte le uscite. In un caso, ad esempio, sono accesi 7 diodi, nell'altro 1 diodo a seconda dell'ingresso e dell'ordine dei byte.
Entrambe le implementazioni utilizzano la memoria EEPROM, che può memorizzare i dati anche dopo un'interruzione di corrente o dopo un riavvio della scheda. Il secondo utilizzo di questa memoria è anche la capacità di rappresentare gli ultimi dati conosciuti nel caso non sia possibile comunicare con il web server (errore di connettività, server).
La memoria è limitata a 10.000-100.000 trascrizioni. Le implementazioni sono progettate per il minor carico di memoria possibile. I dati non verranno sovrascritti quando vengono modificati. Se gli stessi dati vengono letti dal web server/client, non vengono sovrascritti nella memoria EEPROM.
L'implementazione del software (lato Arduino) per WebClient può essere provata gratuitamente su:
Arduino comunica con un'interfaccia web in cui è possibile modificare 3 numeri a quattro cifre:
Richiedi il codice per Arduino come server web a: [email protected] Dona per ulteriori istruzioni:
Consigliato:
Braccio robotico 3D con motori passo-passo controllati tramite Bluetooth: 12 passaggi
Braccio robotico 3D con motori passo-passo controllati da Bluetooth: In questo tutorial vedremo come realizzare un braccio robotico 3D, con motori passo-passo 28byj-48, un servomotore e parti stampate in 3D. Circuito stampato, codice sorgente, schema elettrico, codice sorgente e molte informazioni sono inclusi nel mio sito web
Utilizzo di 2 registri a scorrimento (74HC595) per pilotare 16 LED: 9 passaggi
Utilizzo di 2 registri a scorrimento (74HC595) per pilotare 16 LED: questo circuito utilizzerà 2 registri a scorrimento (74HC595). I registri a scorrimento guideranno come uscite 16 LED. Ogni registro a scorrimento guiderà 8 LED. I registri a scorrimento sono cablati in modo che ogni uscita del registro a scorrimento assomigli a un duplicato dell'altro
Display a matrice di LED a scorrimento 48 X 8 utilizzando Arduino e registri a scorrimento.: 6 passaggi (con immagini)
Display a matrice di LED a scorrimento 48 X 8 utilizzando Arduino e registri a scorrimento.: Ciao a tutti! Questo è il mio primo Instructable e si tratta di creare una matrice di LED a scorrimento programmabile 48 x 8 utilizzando un Arduino Uno e registri a scorrimento 74HC595. Questo è stato il mio primo progetto con una scheda di sviluppo Arduino. È stata una sfida lanciata a m
Matrice LED che utilizza i registri a scorrimento: 7 passaggi (con immagini)
Matrice LED che utilizza i registri a scorrimento: questa istruzione vuole essere una spiegazione più completa di altre disponibili online. In particolare, questo fornirà più spiegazioni sull'hardware di quelle disponibili nel LED Marquee istruibile da led555. Obiettivi Questo istruibile presenta i concetti
La fastidiosa rotella di scorrimento Eliminatore di clic (scorrimento liscio): 5 passaggi
La fastidiosa rotella di scorrimento Click Eliminator (scorrimento liscio): ti dà fastidio il suono della rotellina di scorrimento? bene, ecco la tua occasione per togliere quel clic da quella pergamena! se ti rompi il mouse, non è colpa mia. sto facendo questa mod con un mouse logitech. non sono sicuro che funzionerà su altri mouse b