Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 29 mar 2024, o 03:25


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 
Autor Wiadomość
PostNapisane: 27 sty 2022, o 20:01 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 11 kwi 2014
Posty: 2
Lokalizacja: Zawiercie
Pomógł: 0

Witam,

dostałem od klienta wyświetlacz OLED 1,3" I2C opisany jako SSD1306 (nie na samym wyświetlaczu). Korzystając z wiedzy i materiałów wideo od pana Mirka chciałem stworzyć nową bibliotekę do obsługi tegoż wyświetlacza ale napotkałem problem (już rozwiązany). Nie znalazłem rozwiązania tutaj na forum, dlatego udostępniam ten post dla osób, które mogą trafić na podobny wyświetlacz.

Mianowicie, procedura inicjalizacji za nic miała sobie komendę ustawienia trybu pamięci "Set Memory Addressing Mode" (0x20) i trybu "Horizontal addressing mode" (0x00) (czyli przeskakiwania do następnej strony po osiągnięciu prawej krawędzi ekranu). Za każdym razem podczas wysyłania bufora do pamięci wyświetlacza, dane trafiały tylko do pierwszej strony (ciągle nadpisywał górne 8 pikseli, pozostała część to szum powstały podczas uruchomienia).
Obrazek
Według noty SSD1306 jest to tryb Page Addressing Mode:
Obrazek

Po przeszukaniu internetu pod tym kątem, znalazłem informację że może to być wyświetlacz oparty o sterownik SSH1106 i faktycznie tak musi być. Z tego co podejrzałem w bibliotekach do tych sterowników, adresowanie stron przeprowadzane są ręcznie co każde 128 kolumn. Czyli potrzebujemy w ciągu jednej aktualizacji bufora wysłać 8 razy komendę adresowania strony. A może istnieje możliwość ustawienia tego, tylko ja nie znalazłem?
Obrazek
Według noty SSD1306 powinno to działać z automatu gdy ustawimy tryb Horizontal Addressing Mode (ale nie działa)
Obrazek

Wyświetlacz o którym mowa:
Obrazek

Przedstawiam przykładowy kod, gdyby ktoś spotkał się z podobnym problemem:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 14 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO