SSD1306 driver probléma

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Válasz küldése
Gabca
Újonc
Újonc
Hozzászólások: 1
Csatlakozott: 2017. március 17. péntek, 9:46

SSD1306 driver probléma

Hozzászólás Szerző: Gabca »

Van egy „kis” microkontrolleres problémám, amibe szeretném a segítségetek kérni. Egy OLED-es grafikus kijelzővel küzdök már pár napja, melynek a típusa: 0.96" I2C IIC SPI Serial 128X64 White OLED LCD LED Display Module for Arduino EF (http://www.ebay.com/itm/272545286833?_t ... EBIDX%3AIT). Ez egy I2C-s kijelző 128x64-es felbontással

A rendszerkörnyezet amiben használni szeretném Arduino UNO. Letöltöttem a SSD1306-os drivert (Adafruit_SSD1306-master és Adafruit-GFX-Library-master), ami tartalmazott egy példaprogramot (ssd1306_128x64_i2c), amit más forrásból is kipróbáltam, de...

A kijelzőn megjelenik az információ, csak éppen nem helyesen (mint a linken http://www.instructables.com/id/Arduino ... t-SSD1306/, illetve YouTube videón https://www.youtube.com/watch?time_cont ... IKY6OdQVaY). Kipróbáltam a U8glib drivert is, azzal helyesen jelenik meg a kép nem esik szét, de ennek használata bonyolultabbnak tűnik.

Gyanítom, hogy valahol a kódban meg kellene adni a felbontást is, de nem tudom hol és hogyan és hogy egyáltalán ez-e a probléma. Mi lehet a hiba oka?, Kérem segítsetek mi az ami kimaradt vagy rossz.

Bekötés: 5V, GND, A4 - SCL, A5 -SDA

Előre is köszönöm.

Itt a kód (lecsupaszítva, csak text kiírásra, de így se jó):
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);

void setup() {
Serial.begin(9600);

display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
delay(2000);
display.clearDisplay();
}
void loop() {
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println("Hello, world! 3");
display.setTextColor(BLACK, WHITE);
display.println(3.141592);
display.setTextSize(2);
display.setTextColor(WHITE);
display.print("0x"); display.println(0xDEADBEEF, HEX);
display.display();
delay(2000);
}
Válasz küldése