Skocz do zawartości

Problem z wyświetlaczem OLED na arduino


darkhannibal

Pomocna odpowiedź

Witam,
Niedawno kupiłem na allegro wyświetlacz OLED 0,96" w celu podłączenia do płytki arduino. Wyświetlacz posiada możliwość komunikacji przez I2C, SPI trój- i cztero- przewodowe. Aby "wybrać" odpowiedni rodzaj wyjścia należy przelutować zworkę z tyłu płytki PCB.

Po zmienieniu owej zworki na I2C, po podłączeniu do arduino i wgraniu przykładu z biblioteki adafruit SSD1306 wyświetlacz działa tylko w rozdzielczości 128x32px wyświetlając co drugą linię punktów. Przesyłam link do strony producenta 0,96inch OLED

Wyświetlacz jest podzielony i powinien wyświetlać szesnaście linii żółtych i 48 niebieskich, wyświetla jednak o połowę mniej. Proszę o pomoc 😉

Link do komentarza
Share on other sites

A którego przykładu spróbowałeś? Tego dla wyświetlaczy 128x32?

[ Dodano: 09-03-2016, 22:27 ]

Cytując z pliku .h:

/*=========================================================================
   SSD1306 Displays
   -----------------------------------------------------------------------
   The driver is used in multiple displays (128x64, 128x32, etc.).
   Select the appropriate display below to create an appropriately
   sized framebuffer, etc.
   SSD1306_128_64  128x64 pixel display
   SSD1306_128_32  128x32 pixel display
   SSD1306_96_16
   -----------------------------------------------------------------------*/
//   #define SSD1306_128_64
  #define SSD1306_128_32
//   #define SSD1306_96_16
/*=========================================================================*/
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Dobrze, tylko co ja z Twoim kodem zrobić, bo średnio wiem 😕

Szkoda, że nie wiem jak zrobić to, co wysłałeś 🙁

Znalazłem plik z rozszerzeniem .h i zmieniłem na 128_64, teraz błędu nie ma, ale na wyświetlaczu... ni ma nic

Link do komentarza
Share on other sites

Przykład 128x64 zwraca błąd, bo dowiedział się od biblioteki, że ta jest ustawiona (domyślnie) na 128x32. Zajrzyj do pliku Adafruit_SSD1306.h i zmień te trzy wskazane przez deshipu linie tak, by aktywna była definicja trybu 128x64. Przecież to jest napisane wielkimi literami na czerwonym polu z wielkim wykrzyknikiem na pierwszej stronie opisującej tę bibliotekę:

https://learn.adafruit.com/monochrome-oled-breakouts/arduino-library-and-examples

EDIT: Dobra, nie zauważyłem, że dopisałeś do swojego wcześniejszego postu wykonanie zmiany. A skompilowało się poprawnie? Załadowało do procka bez błędów? Nic więcej nie zmieniałeś? Nigdy nie miałem problemów z tą biblioteką.

Link do komentarza
Share on other sites

Hmm Niby proste, ale ja się potrafię zgubić.

/*=========================================================================
   SSD1306 Displays
   -----------------------------------------------------------------------
   The driver is used in multiple displays (128x64, 128x32, etc.).
   Select the appropriate display below to create an appropriately
   sized framebuffer, etc.

   SSD1306_128_64  128x64 pixel display

   SSD1306_128_32  128x32 pixel display

   SSD1306_96_16

   -----------------------------------------------------------------------*/
  	#define SSD1306_128_64
//	#define SSD1306_128_32
//   #define SSD1306_96_16

Zrobiłem to dobrze?

Link do komentarza
Share on other sites

Użyłem przykładu I2C 64, nie wiem co tu się dzieje! Mam do resetu podłączony, ale on musi być na stanie wysokim czyli równie dobrze w zasilaniu +5V bo zmieniłem to dobrze, prawda? A komunikatów teraz nie ma, tylko że normalnie załadowane, diody od komuniacji na arduino migają, a wyświetlacz milczy...

Poprawka. Chyba coś robiłem źle, ale wyświetlacz działa już prawidłowo! Dzięki wielkie za zainteresowanie i pomoc! 😃😃

  • Pomogłeś! 1
Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.