Sadržaj:

Arduino MAX7219 Vodič za 7-segmentni prikaz: 5 koraka
Arduino MAX7219 Vodič za 7-segmentni prikaz: 5 koraka

Video: Arduino MAX7219 Vodič za 7-segmentni prikaz: 5 koraka

Video: Arduino MAX7219 Vodič za 7-segmentni prikaz: 5 koraka
Video: M#3 MAX7219 7-сегментные и матричные дисплеи | Аутсил Дев. ПЛК Мега 2024, Novembar
Anonim
Arduino MAX7219 Vodič za 7-segmentni prikaz
Arduino MAX7219 Vodič za 7-segmentni prikaz

MAX7219 je IC koji se koristi za pogon 7-segmentnih LED dioda (do 8 znamenki), blok ekrana (trakastih prikaza) i 64 pojedinačne LED diode koje su zajedničke katode. Za komunikaciju s mikrokontrolerom, MAX7219 koristi SPI komunikacijski sistem. Dakle, za pogon 64 LED -a potrebna su samo 3 priključka mikrokontrolera.

U ovom članku ću vam pokazati kako koristiti modul sa 7 segmenata koji koristi IC MAX7219 kao upravljački program.

Potrebne komponente:

  • MAX7219 7-segmentni modul
  • Arduino Nano
  • žičani kratkospojnik
  • USB mini

Potrebna biblioteka:

LedControl

U ovom vodiču koristim Arduino Nano ploču. Ako ga nikada niste koristili. Predlažem da pročitate moj prethodni članak o "Kako koristiti Arduino Nano".

Korak 1: Sastavite sve komponente

Sastavite sve komponente
Sastavite sve komponente

Spojite Arduino ploču na 7-segmentni modul. U nastavku pogledajte sliku ili uputstvo koje sam napisao:

Arduino na 7-segment

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/LOAD

Korak 2: Dodajte biblioteku

Dodaj biblioteku
Dodaj biblioteku

Nakon što se krug završi. Dodajte biblioteku "LedControl" u Arduino IDE.

Da biste dodali biblioteku u Arduino, možete je pročitati u članku "Kako dodati vanjsku biblioteku u Arduino" koji sam napravio ranije ".

Korak 3: Dodatne funkcije

Dodatne funkcije
Dodatne funkcije

Nakon dodavanja LedControl biblioteke. Za upravljanje 7-segmentnim modulom možete koristiti dodatne funkcije.

Argument

addr - adresa ekrana

digit - položaj znamenke na ekranu (0..7) vrijednost - vrijednost koja se prikazuje. (0x00..0x0F)

dp postavlja decimalnu tačku.

Funkcija

setChar (addr, digit, value.dp); // za prikaz vrijednosti tipa char za 7-bitno ASCII kodiranje

setDigit (zbroj, znamenka, vrijednost, bolean dp); // za prikaz znamenki i znakova u jednoj funkciji setRow (addr, digit, value, boolean dp); // za prikaz objekta željenom znamenkom

Za više detalja, pročitajte ovdje.

Korak 4: Otpremite skicu

Otpremite skicu
Otpremite skicu

Skicirao sam skicu za probu ovog 7-segmentnog modula. Kôd u nastavku možete kopirati, a zatim ga zalijepiti u skicu.

// Uvijek moramo uključiti biblioteku

#include "LedControl.h"

/*

Sada nam je potreban LedControl za rad. ***** Ovi pin brojevi vjerojatno neće raditi s vašim hardverom *****

pin 12 je povezan na DataIn

pin 11 je spojen na CLK

pin 10 je spojen na LOAD

Imamo samo jedan MAX72XX.

*/

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

/ * uvijek čekamo malo između ažuriranja ekrana */

nepotpisano dugo kašnjenje = 500;

void setup () {

/ * MAX72XX je u načinu rada za uštedu energije pri pokretanju, moramo obaviti buđenje */

lc.shutdown (0, false);

/ * Postavite svjetlinu na srednje vrijednosti */

lc.setIntensity (0, 8);

/ * i očistite ekran */

lc.clearDisplay (0);}

void hello () {

lc.setChar (0, 7, 'H', lažno);

lc.setChar (0, 6, 'E', lažno);

lc.setChar (0, 5, 'L', lažno);

lc.setChar (0, 4, 'L', lažno);

lc.setChar (0, 3, '0', lažno);

lc.setChar (0, 2, '.', lažno);

lc.setChar (0, 1, '.', lažno);

lc.setChar (0, 0, '.', false);

kašnjenje (vrijeme kašnjenja+1000);

lc.clearDisplay (0);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 7, 1, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 6, 2, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 5, 3, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 4, 4, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 3, 5, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 2, 6, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 1, 7, false);

kašnjenje (vrijeme kašnjenja);

lc.setDigit (0, 0, 8, false);

kašnjenje (1500);

lc.clearDisplay (0);

kašnjenje (vrijeme kašnjenja);

}

void loop () {hello ();

}

Ili preuzmite datoteku ispod:

Korak 5: Rezultat

Uživajte u rezultatu.

Ako postoje pitanja, samo ih upišite u kolonu za komentare.

Vidimo se u sljedećem članku.

Preporučuje se: