Arduino UNO R4 - 74HC595 4-Cijferig 7-Segment Display

Een typisch 4-cijferig 7-segment display wordt gebruikt in projecten zoals klokken, timers en tellers, en heeft meestal 12 verbindingen nodig. De 74HC595 module vereenvoudigt dit door slechts 5 verbindingen te gebruiken: 2 voor voeding en 3 om de segmenten te besturen.

Deze tutorial geeft u niet te veel complexe informatie over hardware. In plaats daarvan leert u hoe u een 4-cijferig 7-segment display verbindt met een Arduino UNO R4 en hoe u het programmeert om informatie weer te geven.

Arduino UNO R4 74HC595 4-cijferig 7-segment display

Deze gids toont hoe u de 4-dot, 4-cijferige, 7-segment display module gebruikt die float-waarden kan weergeven. Als u een dubbele punt separator moet weergeven, gebruik dan de TM1637 4-cijferig 7-segment Display Module.

Over 74HC595 4-cijferig 7-segment Display

Een 74HC595 4-cijferig 7-segment display module bevat meestal 4 7-segment LEDs, 4 kleine dot LEDs, en een 74HC595 driver voor elk cijfer. Het is perfect voor het weergeven van temperaturen of getallen met decimalen.

Pinout

De 74HC595 module voor een 4-cijferig 7-segment display heeft 5 pinnen:

  • SCLK pin: Dit is een klok invoer pin. Verbind deze met elke digitale pin op de Arduino UNO R4.
  • RCLK pin: Dit is een andere klok invoer pin. Verbind deze met elke digitale pin op de Arduino UNO R4.
  • DIO pin: Dit is een Data Input/Output pin. Verbind deze met elke digitale pin op de Arduino UNO R4.
  • VCC pin: Deze pin levert voeding aan de module. Verbind deze met een voeding tussen 3.3V en 5V.
  • GND pin: Dit is een massa pin. Verbind deze met de massa.
74HC595 module pinout

Bedradingsschema

Deze tabel toont hoe u de Arduino UNO R4 pinnen verbindt met een 74HC595 4-cijferig 7-segment display:

Arduino UNO R4 74HC595 7-segment display
5V5V
7SCLK
6RCLK
5DIO

Als u andere pinnen gebruikt, verander dan de pinnummers in de code.

Arduino UNO R4 74HC595 Module Bedradingsschema

This image is created using Fritzing. Click to enlarge image

Zie De beste manier om Arduino Uno R4 en andere componenten van stroom te voorzien.

Bibliotheek Installatie

Om het programmeren voor een 74HC595 4-cijferig 7-segment Display gemakkelijk in te stellen, installeert u de DIYables_4Digit7Segment_74HC595 bibliotheek van DIYables.io. Hier zijn de stappen om de bibliotheek te installeren:

  • Klik op het Libraries pictogram aan de linkerkant van de Arduino IDE.
  • Typ "DIYables_4Digit7Segment_74HC595" in het zoekvak, en zoek naar de DIYables_4Digit7Segment_74HC595 bibliotheek van DIYables.io
  • Druk op de Install knop.
Arduino UNO R4 74HC595 4-cijferig 7-segment display bibliotheek

U kunt ook deze bibliotheek op Github bekijken

Hoe Te Programmeren Voor 74HC595 4-cijferig 7-segment met Arduino UNO R4

  • Voeg de bibliotheek toe
#include <DIYables_4Digit7Segment_74HC595.h>
  • Verbind de Arduino UNO R4 met de display module als volgt: D7 naar SCLK, D6 naar RCLK, en D5 naar DIO.
#define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO
  • Maak een display item genaamd DIYables_4Digit7Segment_74HC595.
DIYables_4Digit7Segment_74HC595 display = DIYables_4Digit7Segment_74HC595(CLK, DIO);
  • U kunt hele getallen weergeven met voorloopnullen, inclusief negatieve getallen.
display.printInt(-13, false); // displays an integer without leading zeros
  • U kunt getallen weergeven met decimale punten, nullen vooraan toevoegen, en negatieve getallen opnemen.
display.printFloat(-9.2, 1, false);
  • U kunt ook elk getal, decimale punt, of karakter een voor een weergeven met basisfuncties.
// display temperature 9.3°C display.clear(); display.setNumber(1, 9); // Display number '9' at position 1 display.setDot(1); // Enable decimal point at position 1 display.setNumber(2, 3); // Display number '3' at position 2 display.setChar(3, SegChars::DEGREE); // Display degree symbol at position 3 display.setChar(4, SegChars::C); // Display character 'C' at position 4 display.show(); // Refresh display to show the set characters and numbers
  • De 74HC595 4-cijferig 7-segment module bestuurt elk segment en LED door een methode genaamd multiplexing te gebruiken. Daarom MOET de Arduino UNO R4 code:
    • De display.show() functie gebruiken in de hoofdlus.
    • Het gebruik van de delay() functie in de hoofdlus vermijden.

    Voor meer details, bezoek de bibliotheek referentie.

Arduino UNO R4 Code - Geheel Getal Weergeven

#include <DIYables_4Digit7Segment_74HC595.h> // DIYables_4Digit7Segment_74HC595 library #define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO DIYables_4Digit7Segment_74HC595 display(SCLK, RCLK, DIO); void setup() { Serial.begin(9600); display.printInt(-13, false); // you can display a value from -999 to 9999 //display.printInt(-132, false); //display.printInt(9132, false); //display.printInt(132, false); //display.printInt(32, false); //display.printInt(2, false); //display.printInt(2, true); } void loop() { display.loop(); // MUST call the display.loop() function in loop() // DO SOMETHING HERE // NOTE: do NOT use the delay() function in loop because it affects to the multiplexing }

Snelle Stappen

Volg deze instructies stap voor stap:

  • Als dit uw eerste keer is met de Arduino Uno R4 WiFi/Minima, raadpleeg de tutorial over het instellen van de omgeving voor Arduino Uno R4 WiFi/Minima in de Arduino IDE.
  • Verbind het 74HC595 4-cijferig 7-segment Display met de Arduino Uno R4 volgens het meegeleverde schema.
  • Verbind het Arduino Uno R4 bord met uw computer met behulp van een USB-kabel.
  • Start de Arduino IDE op uw computer.
  • Selecteer het juiste Arduino Uno R4 bord (bijv., Arduino Uno R4 WiFi) en COM-poort.
  • Kopieer de code en open deze met Arduino IDE.
  • Klik op de Upload knop in Arduino IDE om de code naar Arduino UNO R4 te sturen.
  • Bekijk de veranderingen op het 7-segment display.

Arduino UNO R4 Code - Float Weergeven

#include <DIYables_4Digit7Segment_74HC595.h> // DIYables_4Digit7Segment_74HC595 library #define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO DIYables_4Digit7Segment_74HC595 display(SCLK, RCLK, DIO); void setup() { Serial.begin(9600); display.printFloat(-9.2, 1, false); //display.printFloat(-92.4, 1, false); //display.printFloat(-9.24, 2, false); //display.printFloat(192.4, 1, false); //display.printFloat(19.24, 2, false); //display.printFloat(1.924, 3, false); } void loop() { display.loop(); // MUST call the display.loop() function in loop() // DO SOMETHING HERE // NOTE: do NOT use the delay() function in loop because it affects to the multiplexing }

Arduino UNO R4 Code - Temperatuur Weergeven

#include <DIYables_4Digit7Segment_74HC595.h> // DIYables_4Digit7Segment_74HC595 library #define SCLK 7 // The Arduino UNO R4 pin connected to SCLK #define RCLK 6 // The Arduino UNO R4 pin connected to RCLK #define DIO 5 // The Arduino UNO R4 pin connected to DIO DIYables_4Digit7Segment_74HC595 display(SCLK, RCLK, DIO); void setup() { Serial.begin(9600); // display 9.3°C by controlling digit by digit display.clear(); display.setNumber(1, 9); // set 9 at the 1st digit display.setDot(1); // set . at the 1st digit display.setNumber(2, 3); // set 3 at the 2nd digit display.setChar(3, SegChars::DEGREE); // set ° at the 3rd digit display.setChar(4, SegChars::C); // set C at the 3rd digit display.show(); // show on the display } void loop() { display.loop(); // MUST call the display.loop() function in loop() // DO SOMETHING HERE // NOTE: do NOT use the delay() function in loop because it affects to the multiplexing }

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Opmerkingen

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!