user29624: How to draw 2D-array directly on LCD 5110 (PCD8544)?
I have tried libraries like AdaFruit and several others.
But I need draw there via pixel 2D-array, something like this:
bool picture[48][84] = {
 {0,1,0,0, ... to 84 elements},
 {1,0,1,0,0, ...},
 ... to 48 elements
};

I haven't used charset table or geometry figures drawing library functions. Simplest and smallest drawing by pixel - 0 - not draw, 1 - draw pixel.
The "picture bitmap" will generate on the mini-pc board via Python and send to Arduino, which will draw it as "video card".
What is the simplest way to draw pixel in any site of the display without using powerful libraries?
Something about this:
// Send boolean bitmap 48x84 to LCD 5110
// Rows
for (int i=0; i<48; i++) {
 // Columns
 for (int j=0; j<84; j++) {
  // PIN 5 is Din on the 5110 module
  digitalWrite(5, picture[i][j]);
 }
}


user4143: For a start the Arduino Uno is incapable of storing that array in RAM. You're using twice as much memory for that array as the Arduino has in total. You will have to place it in PROGMEM and use the right functions to access it.
Secondly, you have to use a special library to control the display properly. That library will contain functions to draw on the screen. So your function to draw it would look something (though not exactly) like this:
const bool picture[] PROGMEM = {
    1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 
    ... etc ... ... 4032 numbers in total ...
};

for (int i=0; i<48; i++) {
    for (int j=0; j<84; j++) {
        lcd.setPixel(j, i, pgm_read_byte_near(picture + (i * 84 + j));
    }
}

Refer to the manual for the library for the actual function to run and how to configure and set up the LCD screen.

29624: <p>How to draw 2D-array directly on LCD 5110 (PCD8544)?</p>

<p>I have tried libraries like AdaFruit and several others.</p>

<p>But I need draw there via pixel 2D-array, something like this:</p>

<pre><code>bool picture[48][84] = {
 {0,1,0,0, ... to 84 elements},
 {1,0,1,0,0, ...},
 ... to 48 elements
};
</code></pre>

<p>I haven't used charset table or geometry figures drawing library functions. Simplest and smallest drawing by pixel - 0 - not draw, 1 - draw pixel.</p>

<p>The "picture bitmap" will generate on the mini-pc board via Python and send to Arduino, which will draw it as "video card".</p>

<p>What is the simplest way to draw pixel in any site of the display without using powerful libraries?</p>

<p>Something about this:</p>

<pre><code>// Send boolean bitmap 48x84 to LCD 5110
// Rows
for (int i=0; i&lt;48; i++) {
 // Columns
 for (int j=0; j&lt;84; j++) {
  // PIN 5 is Din on the 5110 module
  digitalWrite(5, picture[i][j]);
 }
}
</code></pre>
 4143: <p>For a start the Arduino Uno is incapable of storing that array in RAM. You're using twice as much memory for that array as the Arduino has in total. You will have to place it in PROGMEM and use the right functions to access it.</p>

<p>Secondly, you have to use a special library to control the display properly. That library will contain functions to draw on the screen. So your function to draw it would look something (though not exactly) like this:</p>

<pre><code>const bool picture[] PROGMEM = {
    1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 
    ... etc ... ... 4032 numbers in total ...
};

for (int i=0; i&lt;48; i++) {
    for (int j=0; j&lt;84; j++) {
        lcd.setPixel(j, i, pgm_read_byte_near(picture + (i * 84 + j));
    }
}
</code></pre>

<p>Refer to the manual for the library for the actual function to run and how to configure and set up the LCD screen.</p>
