Писал свою библиотеку для управления дисплеем, но не хватает толку грамотно ее реализовать. Решил использовать u8g2. Вот такая инициализация должна быть судя по https://github.com/olikraus/u8g2/wiki/u8g2setupc Код (C++): u8g2_Setup_hx1230_96x68_2(u8g2, rotation, u8x8_byte_4wire_sw_spi, uC specific) [page buffer, size = 192 bytes] Но не совсем понимаю, что надо в uC specific передать?
Так в мануале все описано. Структура там видимо какая то. Проще всего в редакторе кода перейти на описание функции и там посмотреть.
Перешел я на arduino, дисплей заработал, но с оговоркой. Работает только часть дисплея. Код (C++): #include <Arduino.h> #include <U8g2lib.h> #include <LIS302DL.H> const uint8_t LIGHT = 12; U8G2_HX1230_96X68_1_3W_SW_SPI u8g2(U8G2_R0, 13, 11, 10, 9); LIS302DL sens(0x1c,40000); void setup() { u8g2.begin(); pinMode(LIGHT, OUTPUT); digitalWrite(LIGHT, LOW); sens.turnOn(); sens.xOn(); sens.yOn(); sens.zOn(); sens.highSpeed(); } void loop() { u8g2.clearBuffer(); u8g2.setFont(u8g2_font_haxrcorp4089_t_cyrillic ); // u8g2.drawStr(0, 7, "Hello World123!"); // u8g2.drawStr(0, 15, "Привет мир789!"); u8g2.setCursor(0, 10); u8g2.print(sens.readX() * 180.0, 1); u8g2.setCursor(32, 10); u8g2.print(sens.readY() * 180.0, 1); u8g2.setCursor(64, 10); u8g2.print(sens.readZ() * 180.0, 1); u8g2.sendBuffer(); delay(250); } Если использовать U8G2_HX1230_96X68_1_3W_SW_SPI работают первые 8 строк, если U8G2_HX1230_96X68_2_3W_SW_SPI то первые 16, U8G2_HX1230_96X68_F_3W_SW_SPI не работает из-за нехватки оперативной памяти