Spisu treści:

Samouczek wyświetlacza 7-segmentowego Arduino MAX7219: 5 kroków
Samouczek wyświetlacza 7-segmentowego Arduino MAX7219: 5 kroków

Wideo: Samouczek wyświetlacza 7-segmentowego Arduino MAX7219: 5 kroków

Wideo: Samouczek wyświetlacza 7-segmentowego Arduino MAX7219: 5 kroków
Wideo: [Arduino] #19 - Wyświetlacz siedmiosegmentowy LED 2024, Listopad
Anonim
Samouczek dotyczący wyświetlacza 7-segmentowego Arduino MAX7219
Samouczek dotyczący wyświetlacza 7-segmentowego Arduino MAX7219

MAX7219 to układ scalony, który służy do sterowania 7-segmentowymi diodami LED (do 8 cyfr), wyświetlaczami blokowymi (wyświetlacze słupkowe) i 64 pojedynczymi diodami LED, które są wspólnymi katodami. Do komunikacji z mikrokontrolerem MAX7219 wykorzystuje system komunikacji SPI. Tak więc do wysterowania 64 diod LED potrzebne są tylko 3 porty mikrokontrolera.

W tym artykule pokażę jak wykorzystać moduł 7-segmentowy wykorzystujący IC MAX7219 jako sterownik.

Wymagane składniki:

  • MAX7219 7-segmentowy moduł
  • Arduino Nano
  • zworka drutu
  • mini USB

Wymagana biblioteka:

LedControl

W tym tutorialu używam płytki Arduino Nano. Jeśli nigdy go nie używałeś. Proponuję przeczytać mój poprzedni artykuł o "Jak korzystać z Arduino Nano".

Krok 1: Złóż wszystkie komponenty

Złóż wszystkie komponenty
Złóż wszystkie komponenty

Podłącz płytkę Arduino do modułu 7-segmentowego. Zobacz zdjęcie lub instrukcję, którą napisałem poniżej:

Arduino na 7-segmentowy

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/OBCIĄŻENIE

Krok 2: Dodaj bibliotekę

Dodaj bibliotekę
Dodaj bibliotekę

Po zakończeniu obwodu. Dodaj bibliotekę „LedControl” do Arduino IDE.

Aby dodać bibliotekę do Arduino, możesz przeczytać w artykule "Jak dodać zewnętrzną bibliotekę do Arduino", który zrobiłem wcześniej.

Krok 3: Dodatkowe funkcje

Dodatkowe funkcje
Dodatkowe funkcje

Po dodaniu biblioteki LedControl. Do sterowania modułem 7-segmentowym można wykorzystać dodatkowe funkcje.

Argument

addr - adres wyświetlacza

cyfra - pozycja cyfry na wyświetlaczu (0..7)\wartość - wartość do wyświetlenia. (0x00..0x0F)

dp ustawia kropkę dziesiętną.

Funkcjonować

setChar(addr, cyfra, wartość.dp); //aby wyświetlić wartość typu znaku dla 7-bitowego kodowania ASCII

setDigit(addr, cyfra, wartość, bolean dp); //wyświetlanie cyfr i znaków w jednej funkcji setRow(addr, digit, value, boolean dp); //wyświetlić obiekt w żądanej cyfrze

Aby uzyskać więcej informacji, przeczytaj tutaj.

Krok 4: Prześlij szkic

Prześlij szkic
Prześlij szkic

Naszkicowałem na próbę tego 7-segmentowego modułu. Możesz skopiować poniższy kod, a następnie wkleić go do swojego szkicu.

//Zawsze musimy dołączyć bibliotekę

#include "LedControl.h"

/*

Teraz potrzebujemy LedControl do pracy. ***** Te numery pinów prawdopodobnie nie będą działać z twoim sprzętem *****

pin 12 jest podłączony do DataIn

pin 11 jest podłączony do CLK

pin 10 jest podłączony do LOAD

Mamy tylko jeden MAX72XX.

*/

LedControl lc = LedControl (12, 11, 10, 1);

/* zawsze trochę czekamy między aktualizacjami wyświetlacza */

bez znaku długi czas opóźnienia=500;

pusta konfiguracja () {

/* MAX72XX jest w trybie oszczędzania energii podczas uruchamiania, musimy wykonać budzenie */

lc.shutdown(0, fałsz);

/* Ustaw jasność na średnie wartości */

lc.setIntensity(0, 8);

/* i wyczyść wyświetlacz */

lc.clearDisplay(0);}

nieważne cześć() {

lc.setChar(0, 7, 'H', fałsz);

lc.setChar(0, 6, 'E', fałsz);

lc.setChar(0, 5, 'L', fałsz);

lc.setChar(0, 4, 'L', fałsz);

lc.setChar(0, 3, '0', fałsz);

lc.setChar(0, 2, '.', fałsz);

lc.setChar(0, 1, '.', fałsz);

lc.setChar(0, 0, '.', fałsz);

opóźnienie (czas opóźnienia + 1000);

lc.clearWyświetlacz(0);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 7, 1, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 6, 2, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 5, 3, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 4, 4, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 3, 5, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 2, 6, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 1, 7, fałsz);

opóźnienie (czas opóźnienia);

lc.setDigit(0, 0, 8, fałsz);

opóźnienie (1500);

lc.clearWyświetlacz(0);

opóźnienie (czas opóźnienia);

}

nieważna pętla () { witaj ();

}

Lub pobierz plik poniżej:

Krok 5: Wynik

Ciesz się wynikiem.

Jeśli są jakieś pytania, po prostu napisz je w kolumnie komentarzy.

Do zobaczenia w następnym artykule.

Zalecana: