Stap 6: Software - dingen instellen
De belangrijkste klasse van onze belang zullen de Display - het is verantwoordelijk voor de installatie van MAX chips en API voorziet schilderij.
Voordat we beginnen met schilderen is het noodzakelijk om te ding zetten. Onderstaande code 2D array met daarin Selecteer slaaf lijnen maakt en initialiseert display. Het scherm zelf bestaat uit 3 rijen, ieder heeft 8 LED Modules. Uiteraard kunt u elke verantwoordelijk grootte, maar ik zal vasthouden aan deze.
De lay-out van genoemde 2D matrix komt overeen met de fysieke weergave: elke LED Module MAX chip heeft gewijd, en elke chip Selecteer slaaf lijn heeft gewijd. Eerste dimensie van onze matrix geeft aan dat fysieke rij tentoongesteld, tweede dimensie geeft LED Module binnen deze rij en de waarde zelf PIN nummer voor Selecteer slaaf regel bevat.
#include "Display.h" Display *disp; /** * Orientation of LED Kits (8x8 LED matrix) on display that I've used for testing. * The numbers are indicating Select Slave line of MAX7219. * 48, 46, 49, 47, 45, 43, 41, 39 * 36, 34, 32, 30, 28, 26, 24, 22 * 37, 35, 33, 31, 29, 27, 25, 23 */ ss_t **ss; ss_t** createSS() { ss_t **ss = alloc2DArray8(3, 8); // first row ss[0][0] = 48; ss[0][1] = 46; ss[0][2] = 49; ss[0][3] = 47; ss[0][4] = 45; ss[0][5] = 43; ss[0][6] = 41; ss[0][7] = 39; // second row ss[1][0] = 36; ss[1][1] = 34; ss[1][2] = 32; ss[1][3] = 30; ss[1][4] = 28; ss[1][5] = 26; ss[1][6] = 24; ss[1][7] = 22; // third row ss[2][0] = 37; ss[2][1] = 35; ss[2][2] = 33; ss[2][3] = 31; ss[2][4] = 29; ss[2][5] = 27; ss[2][6] = 25; ss[2][7] = 23; return ss; } void setup() { util_setup(); log_setup(); ss = createSS(); // Test display consist of 8x3 LED Modules (3 rows, each one 8 Modules) disp = new Display(8, 3, ss); disp->setup(); }
Er is één meer methode vermeldenswaard: log_setup(). Hele
project heeft rustige precieze logger - zodat u kunt zien wat er daadwerkelijk gebeurt. Het standaard uitgeschakeld, zodat het uitchecken bijbehorende documentatie: https://github.com/maciejmiklas/ArdLog