Satura rādītājs:

MAX7219 LED punktu matricas montāža un pārbaude: 6 soļi (ar attēliem)
MAX7219 LED punktu matricas montāža un pārbaude: 6 soļi (ar attēliem)

Video: MAX7219 LED punktu matricas montāža un pārbaude: 6 soļi (ar attēliem)

Video: MAX7219 LED punktu matricas montāža un pārbaude: 6 soļi (ar attēliem)
Video: M#3 MAX7219 7-сегментные и матричные дисплеи | Аутсил Дев. ПЛК Мега 2024, Novembris
Anonim
Image
Image
Pārbaudiet iepakojumu
Pārbaudiet iepakojumu

Punktu matricas displejs ir displeja ierīce, kurā ir matricas formā izlīdzinātas gaismas diodes. Šie punktu matricas displeji tiek izmantoti lietojumprogrammās, kurās simboli, grafiskie attēli, rakstzīmes, alfabēti, cipari ir jāparāda kopā statiskā, kā arī Ritināšanas kustība. Punktmatricas displejs tiek ražots dažādos izmēros, piemēram, 5x7, 8x8, 16x8, 128x16, 128x32 un 128x64, kur skaitļi apzīmē gaismas diodes rindās un kolonnās. Arī šie displeji ir dažādās krāsās, piemēram, sarkanā, zaļā, dzeltenā, zilā, Oranžs, balts.

Šajā pamācībā es ar Arduino Uno savienošu 8x8 punktu matricu, kurai ir MAX7219 draiveris. Sāksim darbu.

Piegādes

MAX7219

1. darbība: pārbaudiet iepakojumu

Kā redzat, man ir draivera plates smt versija, ir ļoti svarīgi pārbaudīt visus nepieciešamos komponentus, jo smd komponenti ir ļoti mazi un tos var viegli pazaudēt. Tiešsaistē ir pieejama arī dip versija. smt versija tās lieluma dēļ.

2. darbība. Mazliet par šo īpašo punktu matricu

Mazliet par šo īpašo punktu matricu
Mazliet par šo īpašo punktu matricu

viens modulis var vadīt 8x8 punktu matricas kopējo katodu.

Darba spriegums: 5 v

Izmēri: garums 3,2 cm X 3,2 cm platums X 1,3 cm augsts, caurumi ar četrām skrūvēm, diametrs 3 mm

Moduļi ar ieejas un izejas saskarnēm, atbalsts vairāku moduļu kaskādēšanai.

Datu ievades un izejas termināļi ir norādīti modulī.

3. darbība: MAX7219 draiveris

MAX7219 draiveris
MAX7219 draiveris
MAX7219 draiveris
MAX7219 draiveris

MAX7219 ir IC, kas paredzēts 8x8 LED MATRIX vadīšanai. IC ir sērijveida ieejas kopējā katoda (Common Negative) displeja draiveri, kas savieno mikroprocesorus (vai mikrokontrolleru) ar 7 segmentu ciparu LED displejiem līdz 8 cipariem, joslu diagrammas displejus vai 64 atsevišķas gaismas diodes.

Īpašības un specifikācijas

Darba sprieguma diapazons: no +4,0 līdz +5,5V

Ieteicamais darba spriegums: +5V

Maksimālais barošanas spriegums: 6V

Maksimālā pieļaujamā strāva caur katru segmenta tapu: 100mA

Maksimālā pieļaujamā strāva caur katru DIGIT zemējuma tapu: 500 mA

Zems enerģijas patēriņš

Datu segmenta aizkaves laiks: 2,2 mSek

Darba temperatūra: no 0 ° C līdz +70 ° C

Uzglabāšanas temperatūra: -65 ° C līdz +150 ° C

4. solis: ķēde

Ķēde
Ķēde
Ķēde
Ķēde

Ķēde ir diezgan vienkārša, un to var veidot, izmantojot džemperu vadus no vīriešiem līdz sievietēm. Vienkārši sekojiet pinout un izveidojiet ķēdi. Vēlāk varat to salikt uz PCB, ja veidojat pastāvīgu lietojumprogrammu Matrix.

Pin konfigurācija ir šāda:

  • Vcc līdz 5V Arduino tapa.
  • Gnd līdz Gnd Pin no Arduino.
  • DIN līdz Arduino 12. digitālajai tapai.
  • CS līdz Arduino digitālajai pin 11
  • CLK līdz Arduino digitālajai tapai 10.

5. darbība: kods

Šeit, šajā pamācībā, es jums sniegšu divus dažādus kodus. Viens radīs dažus angļu alfabētus un smaidiņus uz Matrix. Otrajā gadījumā visas 64 gaismas diodes iedegas pa vienai. Lai tā darbotos, jums jāizmanto lledcontrol bibliotēka.

Šis ir angļu alfabēta un smaidu kods

#include int DIN = 12; int CS = 11; int CLK = 10; e baits [8] = {0x7C, 0x7C, 0x60, 0x7C, 0x7C, 0x60, 0x7C, 0x7C}; d baits [8] = {0x78, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x78}; baits u [8] = {0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; baits c [8] = {0x7E, 0x7E, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x7E}; astotais baits [8] = {0x7E, 0x7E, 0x66, 0x7E, 0x7E, 0x66, 0x7E, 0x7E}; baits s [8] = {0x7E, 0x7C, 0x60, 0x7C, 0x3E, 0x06, 0x3E, 0x7E}; baita punkts [8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18}; baits o [8] = {0x7E, 0x7E, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; baits m [8] = {0xE7, 0xFF, 0xFF, 0xDB, 0xDB, 0xDB, 0xC3, 0xC3}; LedControl lc = LedControl (DIN, CLK, CS, 0); void setup () {lc.shutdown (0, false); // MAX72XX ir enerģijas taupīšanas režīmā, startējot lc.setIntensity (0, 15); // Iestatiet spilgtumu uz maksimālo vērtību lc.clearDisplay (0); // un notīriet displeju} void loop () {baits smaids [8] = {0x3C, 0x42, 0xA5, 0x81, 0xA5, 0x99, 0x42, 0x3C}; baitu neitrāls [8] = {0x3C, 0x42, 0xA5, 0x81, 0xBD, 0x81, 0x42, 0x3C}; baits sarauc pieri [8] = {0x3C, 0x42, 0xA5, 0x81, 0x99, 0xA5, 0x42, 0x3C}; printByte (smaids); kavēšanās (1000); printByte (neitrāls); kavēšanās (1000); printByte (sarauc pieri); kavēšanās (1000); printEduc8s (); lc.clearDisplay (0); kavēšanās (1000); } void printEduc8s () {printByte (e); kavēšanās (1000); printByte (d); kavēšanās (1000); printByte (u); kavēšanās (1000); printByte (c); kavēšanās (1000); printByte (astoņi); kavēšanās (1000); printByte (s); kavēšanās (1000); printByte (punkts); kavēšanās (1000); printByte (c); kavēšanās (1000); printByte (o); kavēšanās (1000); printByte (m); kavēšanās (1000); } void printByte (baita rakstzīme ) {int i = 0; par (i = 0; i <8; i ++) {lc.setRow (0, i, rakstzīme ); }}

un kodu, lai pārbaudītu visas 64 gaismas diodes

// Mums vienmēr ir jāiekļauj bibliotēka#include "LedControl.h"

/*

Tagad mums ir nepieciešama LedControl, ar kuru strādāt. ***** Šie pin numuri, iespējams, nedarbosies ar jūsu aparatūru ***** 12. tapa ir pievienota DataIn tapai 10. ir pievienota CLK tapai 11. ir pievienota LOAD. Mums ir tikai viens MAX72XX. */ LedControl lc = LedControl (12, 11, 10, 1);

/ * mēs vienmēr nedaudz gaidām starp displeja atjauninājumiem */

neparakstīts ilgs delaytime = 100;

void setup () {

/ * MAX72XX ieslēgšanas brīdī ir enerģijas taupīšanas režīmā, mums jāveic modināšanas zvans */ lc.shutdown (0, false); / * Iestatiet spilgtumu uz vidējām vērtībām */ lc.setIntensity (0, 8); / * un notīriet displeju */ lc.clearDisplay (0); }

/*

Šī metode matricā viena pēc otras parādīs vārda "Arduino" rakstzīmes. (lai redzētu visas rakstzīmes, ir nepieciešami vismaz 5x7 gaismas diodes) */ void writeArduinoOnMatrix () {/ *šeit ir dati par rakstzīmēm */ baits a [5] = {B01111110, B10001000, B10001000, B10001000, B01111110}; baits r [5] = {B00111110, B00010000, B00100000, B00100000, B00010000}; d baits [5] = {B00011100, B00100010, B00100010, B00010010, B11111110}; baits u [5] = {B00111100, B00000010, B00000010, B00000100, B00111110}; baits i [5] = {B00000000, B00100010, B10111110, B00000010, B00000000}; baits n [5] = {B00111110, B00010000, B00100000, B00100000, B00011110}; baits o [5] = {B00011100, B00100010, B00100010, B00100010, B00011100};

/ * tagad parādiet tos pa vienam ar nelielu kavēšanos */

lc.setRow (0, 0, a [0]); lc.setRow (0, 1, a [1]); lc.setRow (0, 2, a [2]); lc.setRow (0, 3, a [3]); lc.setRow (0, 4, a [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, r [0]); lc.setRow (0, 1, r [1]); lc.setRow (0, 2, r [2]); lc.setRow (0, 3, r [3]); lc.setRow (0, 4, r [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, d [0]); lc.setRow (0, 1, d [1]); lc.setRow (0, 2, d [2]); lc.setRow (0, 3, d [3]); lc.setRow (0, 4, d [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, u [0]); lc.setRow (0, 1, u [1]); lc.setRow (0, 2, u [2]); lc.setRow (0, 3, u [3]); lc.setRow (0, 4, u [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, i [0]); lc.setRow (0, 1, i [1]); lc.setRow (0, 2, i [2]); lc.setRow (0, 3, i [3]); lc.setRow (0, 4, i [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, n [0]); lc.setRow (0, 1, n [1]); lc.setRow (0, 2, n [2]); lc.setRow (0, 3, n [3]); lc.setRow (0, 4, n [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, o [0]); lc.setRow (0, 1, o [1]); lc.setRow (0, 2, o [2]); lc.setRow (0, 3, o [3]); lc.setRow (0, 4, o [4]); kavēšanās (kavēšanās laiks); lc.setRow (0, 0, 0); lc.setRow (0, 1, 0); lc.setRow (0, 2, 0); lc.setRow (0, 3, 0); lc.setRow (0, 4, 0); kavēšanās (kavēšanās laiks); }

/*

Šī funkcija iedegas dažas gaismas diodes pēc kārtas. Modelis tiks atkārtots katrā rindā. Modelis mirgos kopā ar rindas numuru. 4. rindas numurs (indekss == 3) mirgos 4 reizes uc lc.setRow (0, rinda, B10100000); kavēšanās (kavēšanās laiks); lc.setRow (0, rinda, (baits) 0); par (int i = 0; i

/*

Šī funkcija iedegas dažas gaismas diodes kolonnā. Modelis tiks atkārtots katrā kolonnā. Modelis mirgos kopā ar kolonnas numuru. kolonnas numurs 4 (indekss == 3) mirgos 4 reizes utt. */ void column () {for (int col = 0; col <8; col ++) {delay (delaytime); lc.setColumn (0, kolonna, B10100000); kavēšanās (kavēšanās laiks); lc.setColumn (0, col, (baits) 0); par (int i = 0; i

/*

Šī funkcija iedegs katru matricas LED. LED mirgos kopā ar rindas numuru. 4. rindas numurs (indekss == 3) mirgos 4 reizes uc kavēšanās (kavēšanās laiks); lc.setLed (0, rinda, kolonna, patiesa); kavēšanās (kavēšanās laiks); par (int i = 0; i

void loop () {

writeArduinoOnMatrix (); rindas (); kolonnas (); viens(); }

6. darbība: izvade

Image
Image
Izeja
Izeja
Izeja
Izeja
Izeja
Izeja

Pilnu video skatieties šeit: -MAX7219 8x8 LED MATRIX MONTĀŽA UN TESTĒŠANA, izmantojot ARDUINO

Viss šis smagais darbs, protams, atmaksājas diezgan labi, kad redzat rezultātu. Tas ir tā vērts !!

Abonējiet manu youtube kanālu: -Creative Stuff

Ieteicams: