|
5 | 5 | // Double buffering is not always required in reality. |
6 | 6 |
|
7 | 7 | #include <ESP32-HUB75-MatrixPanel-I2S-DMA.h> |
| 8 | +#include <array> |
8 | 9 |
|
9 | 10 | MatrixPanel_I2S_DMA *display = nullptr; |
10 | 11 |
|
11 | | -uint16_t myDARK = display->color565(64, 64, 64); |
12 | | -uint16_t myWHITE = display->color565(192, 192, 192); |
13 | | -uint16_t myRED = display->color565(255, 0, 0); |
14 | | -uint16_t myGREEN = display->color565(0, 255, 0); |
15 | | -uint16_t myBLUE = display->color565(0, 0, 255); |
| 12 | +constexpr std::size_t color_num = 5; |
| 13 | +using colour_arr_t = std::array<uint16_t, color_num>; |
16 | 14 |
|
17 | | -uint16_t colours[5] = { myDARK, myWHITE, myRED, myGREEN, myBLUE }; |
| 15 | +uint16_t myDARK, myWHITE, myRED, myGREEN, myBLUE; |
| 16 | +colour_arr_t colours; |
18 | 17 |
|
19 | 18 | struct Square |
20 | 19 | { |
@@ -45,6 +44,14 @@ void setup() |
45 | 44 | display = new MatrixPanel_I2S_DMA(mxconfig); |
46 | 45 | display->begin(); // setup display with pins as pre-defined in the library |
47 | 46 |
|
| 47 | + myDARK = display->color565(64, 64, 64); |
| 48 | + myWHITE = display->color565(192, 192, 192); |
| 49 | + myRED = display->color565(255, 0, 0); |
| 50 | + myGREEN = display->color565(0, 255, 0); |
| 51 | + myBLUE = display->color565(0, 0, 255); |
| 52 | + |
| 53 | + colours = {{ myDARK, myWHITE, myRED, myGREEN, myBLUE }}; |
| 54 | + |
48 | 55 | // Create some random squares |
49 | 56 | for (int i = 0; i < numSquares; i++) |
50 | 57 | { |
|
0 commit comments