”легкая” библиотека для oled 0.96

подскажите простую библиотеку которая мало занимает места в контроллере.
1306 adafruit и u8x8(эта норм?) находил.

на этот дисплей:https://arduino.ua/products_pictures/large_AOC229-1.jpg

Вы забыли сказать две вещи,

что она должна уметь (например, необходим ли экранный буфер - это принципиально для экономии ресурсов)?
“мало” - это сколько?

Без этого могу предложить, например, такое решение:

файл OLED096Lib.h
// Суперэкономичная библиотека для OLED 0.96

Места не занимает вовсе. Правда, и не делает ни хрена.

2 лайка

хочу выводить переменные, важно что бы раз в секунду экран обновлялся.
Дизайн иметь на экране будет круто очень. Это умные часы будят , в будущем функционал будет расширяться. поэтому место экономить надо.
OLED096Lib.h - а это что умеет делать?

у adriano есть

1 лайк

написал ему)

а вот такое еще нашел. там отключение дисплея есть. Было бы неплохо такую функцию иметь.

зачем? В современных контроллерах больше места, чем надо.
Может быть стоит выбрать контроллер из 21-ого века, тем более, что стоит он в рублях ровно столько же?
(И СТМ32 Блек пилл и Распберри Пико, стоят на Али менее 200р. На озоне - около 400р.)

та не. из того что есть надо делать. 3858 байт нашел библу. но там нет откл. дисплея

что то неполучается вывести переменную в этой библиотеке. это все что в библе есть.

void OzOLED::printString(const char *String, byte X, byte Y, byte numChar){

	if ( X < 128 )
		setCursorXY(X, Y);

	
	byte count=0;
    while(String[count] && count<numChar){
		printChar(String[count++]);  
	}

}

Отключить дисплей - это как два пальца об асфальт …

это я уже сделал.
а как переменную вывести?
Там где я код вставил , с библиотеки

может с wire надо как то в буфер считывать а потом переменную получится вывести на дисплей?
а то сейчас только так работает:
OzOLED.printString: ( ”текст” );

а вот так нет:
String test = “111”;
OzOLED.printString: (test);

char test[] = "arduino.ru";
...
OzOLED.printString(test);
1 лайк

попробую завтра. но вроде не будет работать так.Сама библиотека не выводит

Arduino: 1.8.7 (Windows 7), Board: “Arduino/Genuino Uno”

C:\Users\AppData\Local\Temp\arduino_modified_sketch_602037\OLED_Hello_World.ino: In function ‘void setup()’:

OLED_Hello_World:11:7: error: expected unqualified-id before ‘.’ token

OzOLED.printString(test);

   ^

Multiple libraries were found for “Wire.h”
Used: C:\Users\Documents\Arduino\libraries\Wire
Not used: C:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire
exit status 1
expected unqualified-id before ‘.’ token

This report would have more information with
“Show verbose output during compilation”
option enabled in File → Preferences.

#include <Wire.h>
#include <OzOLED.h>

void setup(){

OzOled.init(); //initialze Oscar OLED display

char test[] = “arduino.ru”;

OzOLED.printString(test);
OzOled.printString(“Hello World!”); //Print the String

}

Читать сначала научитесь !!!
Там где лежит библиотека есть КУЧА примеров - oled/OzOLED/examples at master · bentor/oled · GitHub

Сравни побуквенно.

1 лайк

ничего нет из того что надо

Для вывод переменных (в моём понимании переменных) - OLED_PrintNumbers

1 лайк

А Вы сделали то, что Вам @sadman41 сказал?

1 лайк

больше 4 символов не выводит.если написать ardui то уже глюки на экране

#include <Wire.h>
#include <OzOLED.h>

char test[] = "ardu";
void setup(){

  OzOled.init();  //initialze Oscar OLED display
  
  //OzOled.clearDisplay();           //clear the screen and set start position to top left corner
  //OzOled.setNormalDisplay();       //Set display to Normal mode
  //OzOled.setPageMode();            //Set addressing mode to Page Mode
  //OzOled.printNumber(test);


}

void loop(){
  OzOled.printString(test, 0, 3); //Print the String  

}