Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
I dag vil jeg presentere et prosjekt som jeg har implementert i to versjoner. Prosjektet bruker 12 skiftregistre 74HC595 og 96 LED, Arduino Uno -kort med Ethernet -skjerm Wiznet W5100. 8 lysdioder er koblet til hvert skiftregister. Tallene 0-9 er representert med lysdioder. Hvert skiftregister er utstyrt med 8 utgangsterminaler.
Hvert av de 4 skiftregistrene 74HC595 danner en logisk enhet - et display for å vise et firesifret tall. Totalt er det 3 logiske visninger i prosjektet som består av 12 skiftregistre.
Implementeringene er kompatible for Arduino -kort Nano, Mega, Uno og for Ethernet -skjold og moduler fra Wiznet -familien, spesielt modellene W5100 og W5500 (ved bruk av Ethernet2 -biblioteket).
Rekvisita
- Arduino Uno / Nano
- Ethernet Wiznet W5100 / W5500
- 4 opp til 12 skiftregister 74HC595
- 32 opptil 96 LED -dioder
Trinn 1: Implementerte implementeringer i prosjektet med Arduino:
- Webserver - HTTP -server som kjører direkte på Arduino, lar deg tolke HTML -kode
- WebClient - Klient som er i stand til å sende en HTTP -forespørsel til en ekstern server, sende / laste ned data
Internett server:
- Tilbyr en HTML-webside med et skjema som lar deg angi tre firesifrede tall.
- Etter å ha sendt skjemaet, blir dataene behandlet og lagret i EEPROM -minnet, brukeren blir informert om databehandlingen av en egen underside.
- Etter at dataene er lagret, blir brukeren omdirigert tilbake til skjemaet.
- EEPROM -minne er energiuavhengig, data er tilgjengelig selv etter strømgjenoppretting, men også omstart av kortet.
- Alle tall blir deretter representert på tre skjermer bestående av 12 74HC595 skiftregistre.
WebClient:
- Kommunikasjon med webserveren skjer hvert 5. sekund etter HTTP -protokollen.
- Webserveren kjører en PHP-webapplikasjon som lar deg skrive inn 3 firesifrede tall via HTML-skjemaet.
- Dataene fra skjemaet lagres i en MySQL -database.
- Arduino ber om å hente data fra denne databasen via en forespørsel til serveren.
- De behandlede dataene blir analysert av Arduino, deretter plottet ved hjelp av skiftregistre 74HC595.
- Dataene lagres også i EEPROM -minnet til Arduino, de brukes i tilfelle tilkoblingen til webserveren mislykkes / når Arduino -kortene startes på nytt, brukes de til den første gjengivelsen av dataene på skiftregistrene.
- Dataene overskrives i EEPROM bare når dataene endres, EEPROM -cellene lagres fra unødvendig overskriving.
Trinn 2: Kabling og skjermbilde
Kaskadetilkobling for skiftregistre 74HC595 (kan utvides med x mer) - Eksport fra TinkerCAD. Skjermbilde er der fra webservergrensesnittet, når det får data via HTML -skjema, behandler dem og lagrer dem i EEPROM -minne.
Trinn 3: 74HC595 + kildekoder
Det er klart fra diagrammet at bare 3 datakabler brukes til å kontrollere skiftregistrene:
- Datauttak - (SER til 74HC595)
- Klokkeutgang - (SRCLK på 74HC595)
- Låseuttak - (RCLK til 74HC595)
Skiftregistre kan kombineres i en kaskade, mens andre eksterne enheter også kan styres av skiftregistre - for eksempel reléer for å bytte effektelementer. Det er også mulig å styre 500 separate reléer (med et tilstrekkelig antall skiftregistre og strømforsyning) med én datautgang.
Når du kontrollerer utgangene til registerene, er det også mulig å endre byteordren til den mest signifikante biten - MSB FIRST, eller til LSB - den minst signifikante biten. Som et resultat inverterer det utgangene. I det ene tilfellet lyser for eksempel 7 dioder, i det andre tilfellet 1 diode avhengig av inngang og byterekkefølge.
Begge implementeringene bruker EEPROM -minne, som kan lagre data selv etter et strømbrudd eller etter en omstart av kortet. Den andre bruken av dette minnet er også muligheten til å representere de siste kjente dataene i tilfelle det ikke er mulig å kommunisere med webserveren (tilkoblingsfeil, server).
Minnet er begrenset til 10 000 til 100 000 transkripsjoner. Implementeringer er designet for minst mulig minnelast. Dataene blir ikke overskrevet når de endres. Hvis de samme dataene leses fra webserveren / klienten, blir de ikke overskrevet i EEPROM -minnet.
Programvareimplementering (Arduino-side) for WebClient kan prøves gratis på:
Arduino kommuniserer med et webgrensesnitt der det er mulig å endre 3 firesifrede tall:
Be om kode for Arduino som webserver på: [email protected] Doner for flere instrukser:
Anbefalt:
DIY Smart LED Dimmer kontrollert via Bluetooth: 7 trinn
DIY Smart LED -dimmer kontrollert via Bluetooth: Denne instruksjonsboken beskriver hvordan du bygger en smart digital dimmer. En dimmer er en vanlig lysbryter som brukes i hus, hoteller og mange andre bygninger. Eldre versjoner av dimmerbrytere var manuelle, og ville vanligvis inneholde en roterende swit
Bruke 2 skiftregistre (74HC595) til å kjøre 16 lysdioder: 9 trinn
Bruke 2 skiftregistre (74HC595) til å kjøre 16 lysdioder: Denne kretsen vil bruke 2 skiftregistre (74HC595). Skifteregistrene vil kjøre som utganger 16 lysdioder. Hvert skiftregister vil drive 8 lysdioder. Skiftregistrene er kablet slik at hver skiftregisterutgang vil se ut som en duplikat av de andre
RC Car Hack - Bluetooth kontrollert via Android App: 3 trinn (med bilder)
RC Car Hack - Bluetooth -kontrollert via Android -appen: Jeg er sikker på at hver av dere kan finne ubrukt RC -bil hjemme. Denne instruksjonen vil hjelpe deg med å bytte din gamle RC -bil til original gave :) På grunn av at RC -bilen jeg hadde var liten i størrelse, har jeg valgt Arduino Pro Mini som hovedkontroller. En annen
48 X 8 rullende LED -matrisedisplay ved hjelp av Arduino- og skiftregistre .: 6 trinn (med bilder)
48 X 8 Scrolling LED Matrix Display Using Arduino and Shift Registers .: Hei alle sammen! Dette er min første instruerbare, og det handler om å lage en 48 x 8 programmerbar rullende LED -matrise ved hjelp av en Arduino Uno og 74HC595 skiftregistre. Dette var mitt første prosjekt med et Arduino utviklingstavle. Det var en utfordring som ble gitt til m
LED -matrise ved bruk av skiftregistre: 7 trinn (med bilder)
LED -matrise ved bruk av skiftregistre: Denne instruksen er ment å være en mer fullstendig forklaring enn andre som er tilgjengelige online. Spesielt vil dette gi mer maskinvareforklaring enn det som er tilgjengelig i LED Marquee som kan instrueres av led555.Mål Denne instruksjonen presenterer konseptene