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



Teraz jest 28 mar 2024, o 12:49


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 5 lip 2019, o 12:54 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Witam
Mam problem z uruchomieniem wyświetlacza OLED 0.96".

Przepisałem kod z poradnika Mirka, to jest ten pierwszy oradnik o wyświetlaczach oled, który się ukazał kilka lat temu. Chciałbym dokończyć zmagania z tym właśnie poradnikiem, ale nie mogę nic uzyskać.

Wyświetlacz podłączony jest do płytki Arduino Uno, jako platformy sprzętowej, sprawdziłem podłączenie oraz działanie, programując procesor programem Arduino, wyświetlacz działa oprawnie. Niestety po wgraniu kodu przepisanego z Mirka poradnika na wyświetlaczu nic się nie pokazuje. Wgrywam więc ponownie kod Arduino i jest ok. Tak więc zarówno połączenia są ok jak i sam wyświetlacz.
Wyświetlacz jest I2C, procesor Atmega 328p 16MHz. Poniżej wklejam cały kod, który jest dostępny na YouTube wiec chyba mogę.

Kod ograniczyłem tylko do inicjalizacji, ale nawet żadnych śmieci nie ma.
Podobny eksperyment zrobiłem z kodem Arduino, czyli jedynie inicjalizacja i w tym przypadku uzyskuję "śnieg" na ekranie, a w C i "moim" kodzie nie.

Piny I2C w programie C zmienione na SCL PC5, SDA PC4 (Atmega328p)

Zmieniłem też adres, mój wyświetlacz ma 0x3C.
Nie mam żadnych błędów kompilacji.

Proszę o podpowiedź, co jest nie tak?


Main
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


k_ssd1306.c
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


k_ssd1306.h
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  
PostNapisane: 5 lip 2019, o 13:54 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Biblioteki z arduino mają inaczej zorganizowane adresowanie modułu. Poszukaj na forum, była o tym mowa. Chyba (ale tego nie jestem pewien) arduino wymaga adresu na 8 bitach, a w bibliotekach Mirka podaje się adres na 7. Ale tak jak piszę, poszukaj, to, co napisałem może nie mieć sensu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lip 2019, o 16:50 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 15 lis 2014
Posty: 19
Pomógł: 3

Jeśli na arduino działa Ci z 7 bitowym adresem 0x3C to w Mirkowej bibliotece użyj 0x78 i też będzie działać.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lip 2019, o 10:50 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Niestety nadal nic.
Adres który wpisuję 0x3C odczytałem jakimś skanerem I2C na Arduino bezpośrednio z podłączonego wyświetlacza.

Wpisałem 0x78 niestety wyświetlacz nie wyświetla nawet śniegu.

Chyba chodziło o ten wątek
https://forum.atnel.pl/post206321.html?hilit=adres%20I2c%20z%20arduino#p206321


edit

JEST DZIAŁA !!! :D



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: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 11 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:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO