aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Bazan <michal.bazan@connectedinnovations.com>2024-09-19 04:10:51 -0700
committerMichał Bazan <michal.bazan@connectedinnovations.com>2024-09-19 04:39:20 -0700
commit268fd5ea4e22631cabe280217623d642dff52d7c (patch)
treef61698a7ac83c2bf642d20679b7b1a63ccae8097
parent4b3404a361048b361864cbb8ed9136b5a72d8f08 (diff)
fixed nullptr dereference in example 3
-rw-r--r--examples/1_SimpleTestShapes/1_SimpleTestShapes.ino2
-rw-r--r--examples/3_DoubleBuffer/3_DoubleBuffer.ino19
2 files changed, 14 insertions, 7 deletions
diff --git a/examples/1_SimpleTestShapes/1_SimpleTestShapes.ino b/examples/1_SimpleTestShapes/1_SimpleTestShapes.ino
index bc1006a..64fb76c 100644
--- a/examples/1_SimpleTestShapes/1_SimpleTestShapes.ino
+++ b/examples/1_SimpleTestShapes/1_SimpleTestShapes.ino
@@ -108,7 +108,7 @@ void setup() {
myWHITE = dma_display->color565(255, 255, 255);
myRED = dma_display->color565(255, 0, 0);
myGREEN = dma_display->color565(0, 255, 0);
- myBLUE = dma_disdisplay->color565(0, 0, 255);
+ myBLUE = dma_display->color565(0, 0, 255);
dma_display->fillScreen(myWHITE);
diff --git a/examples/3_DoubleBuffer/3_DoubleBuffer.ino b/examples/3_DoubleBuffer/3_DoubleBuffer.ino
index 5a41d67..c479941 100644
--- a/examples/3_DoubleBuffer/3_DoubleBuffer.ino
+++ b/examples/3_DoubleBuffer/3_DoubleBuffer.ino
@@ -5,16 +5,15 @@
// Double buffering is not always required in reality.
#include <ESP32-HUB75-MatrixPanel-I2S-DMA.h>
+#include <array>
MatrixPanel_I2S_DMA *display = nullptr;
-uint16_t myDARK = display->color565(64, 64, 64);
-uint16_t myWHITE = display->color565(192, 192, 192);
-uint16_t myRED = display->color565(255, 0, 0);
-uint16_t myGREEN = display->color565(0, 255, 0);
-uint16_t myBLUE = display->color565(0, 0, 255);
+constexpr std::size_t color_num = 5;
+using colour_arr_t = std::array<uint16_t, color_num>;
-uint16_t colours[5] = { myDARK, myWHITE, myRED, myGREEN, myBLUE };
+uint16_t myDARK, myWHITE, myRED, myGREEN, myBLUE;
+colour_arr_t colours;
struct Square
{
@@ -45,6 +44,14 @@ void setup()
display = new MatrixPanel_I2S_DMA(mxconfig);
display->begin(); // setup display with pins as pre-defined in the library
+ myDARK = display->color565(64, 64, 64);
+ myWHITE = display->color565(192, 192, 192);
+ myRED = display->color565(255, 0, 0);
+ myGREEN = display->color565(0, 255, 0);
+ myBLUE = display->color565(0, 0, 255);
+
+ colours = {{ myDARK, myWHITE, myRED, myGREEN, myBLUE }};
+
// Create some random squares
for (int i = 0; i < numSquares; i++)
{