#include <GyverOLED.h>
GyverOLED<SSD1306_128x32, OLED_BUFFER> oled;
const uint8_t lock_18x24[] PROGMEM = {
0xFF,
0xFF,
0x1F,
0x07,
0xC3,
0xF1,
0xF9,
0xF9,
0xF9,
0xF9,
0xF9,
0xF9,
0xF1,
0xC3,
0x07,
0x1F,
0xFF,
0xFF,
0xFF,
0x0F,
0x00,
0x00,
0x03,
0x03,
0x03,
0xC3,
0xE3,
0xE3,
0xC3,
0x03,
0x03,
0x03,
0x00,
0x00,
0x0F,
0xFF,
0xFF,
0xC0,
0x80,
0x80,
0x80,
0x80,
0x80,
0x80,
0x8F,
0x8F,
0x80,
0x80,
0x80,
0x80,
0x80,
0x80,
0xC0,
0xFF,
};
void setup() {
Serial.begin(9600);
// put your setup code here, to run once:
oled.init(); // инициализация
// ускорим вывод, ВЫЗЫВАТЬ ПОСЛЕ oled.init()!!!
Wire.setClock(400000L); // макс. 800'000
oled.clear(); // очистка
oled.home(); // курсор в 0,0
oled.drawBitmap(8, 8, lock_18x24, 18, 24, BITMAP_INVERT, BUF_ADD);
// рисуем 4 текстовых поля для пин-кода
oled.setScale(3);
oled.textMode(BUF_REPLACE);
oled.setCursorXY(36, 8);
oled.print("8");
oled.setCursorXY(56, 8);
oled.print("8");
oled.setCursorXY(76, 8);
oled.print("8");
oled.setCursorXY(96, 8);
oled.print("8");
oled.rect(34, 7, 52, 31, OLED_STROKE);
oled.rect(54, 7, 72, 31, OLED_STROKE);
oled.rect(74, 7, 92, 31, OLED_STROKE);
oled.rect(94, 7, 112, 31, OLED_STROKE);
oled.update();
delay(2000);
oled.setCursorXY(36, 8);
oled.print("0");
oled.setCursorXY(56, 8);
oled.print("*");
oled.setCursorXY(76, 8);
oled.print("5");
oled.setCursorXY(96, 8);
oled.print("1");
oled.rect(34, 7, 52, 31, OLED_STROKE);
oled.rect(54, 7, 72, 31, OLED_STROKE);
oled.rect(74, 7, 92, 31, OLED_STROKE);
oled.rect(94, 7, 112, 31, OLED_STROKE);
oled.update();
}
void loop() {
}