21-11-2018, 15:07
(23-03-2017, 11:52)wex napisał(a): Witam,
poszukuję rozwiązania problemu właściwej definicji wyświetlacza OLED poprzez I2C.
Płytkę połączyłem z UNO i generalnie wyświetlacz wyświetla żądany txt.
Jest jednak jedno małe ale:
- standardowa definicja ustawienia kursora "setCursor" daje dziwne umiejscowienie tekstu na ekranie
działa to tak jakby kontynuacją 1linii była 3cia a drugiej - czwarta
np. przy konfiguracji (21,1) print zacznie pisać od drugiego znaku 4 linijki
W związku z tym pytanie: jak prawidłowo inicjować bibliotekę pod taki wyświetlacz?
Aktualnie korzystam z podpowiedzi dla LCD po I2C
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); //tu zmieniłem tylko adres zgodny z chipset I2C
z tego co wiem cyferki wewnatrz nawiasu oznaczają piny, czy są to piny I2C? Widziałem też w różnych przykładach definicje w formie: ...I2C lcd(0x3F, 20,4) co miało by oznaczać adres i wielkość wyświetlacza. Z jakiego powodu stosuje się dwa rodzaje definicji?
lcd.begin(20,4); //tak deklaruję wielkość wyświetlacza
jeśli użyję setCursor(0,3), wyświetlacz zaczyna wyświetlać różne losowe znaki na całej powierzchni
Dzięki za zainteresowanie.
Krzysiek
Też walczyłem z tym lcd. U mnie problem rozwiązała biblioteka U8G2. Co do definicji to wszystko zależy od tego jakiej biblioteki używasz.