PANIE I PANOWIE - nadeszło ROZWIĄZANIE - tych efektów - że na wyświetlaczach SPI (zawierających pin tylko CS) były i są te dziwne zjawiska - że po zaprogrogramowaniu procka wsadem wyświetlacz jakby nie reaguje, albo gaśnie albo wyświetla pixele ze skopanymi współrzędnymi X,Y ekranu, że nie są w lewym górnym rogu tylko gdzieś w środku wyświetlacza itp itd
no sam dzisiaj złapałem po prostu taki wyświetlacz w łapki gdzie dorwałem ten efekt i zacząłem go badać ... kurka - rzeczywiście takie objawy jak opisujecie
... ale spokojnie bez nerwów badam, badam
i co się okazuje ? ano chińska indżinier wymyśliła sobie - żeby nie wyprowadzać pinu RST bo resetować można układem RC, a w zamian za to wyprowadzić pin CS (Chip Select) żeby móc wybierać wyświetlacz na magistrali SPI po to gdy chcemy mieć ich np kilka naraz podłączonych. Przyznam, że spodobał mi się ten pomysł
... i dlatego polubiłem te wersje z pinem CS ... no ale ... ale chińska endżinier niezbyt dobrze przemyślała ten obwód RC do resetu bo nie działa on w każdym przypadku - zobaczcie sami (rozrysowałem po krótkim rewerse endżinieringu na stole operacyjnym)
no i teraz przeanalizujcie to sami
.... chyba widzicie , że po włączeniu zasilania owszem nastąpi RESET i to mniej więcej z czasem opisanym w nocie SSD1306 po dobraniu prawidłowych wartości R i C (stałej czasowej) ... ale .... no ale po pierwsze - może niektóre elementy mają zbyt dużą tolerancję i stała czasowa się zmienia, a po drugie to działa w zasadzie TYLKO i WYŁĄCZNIE po włączeniu zasilania .... A my zapaleni programiści .... przecież męczymy te biedne OLEDY i co chwilę testujemy nasze LIB'siki, wgrywamy a tu kicha - wyświetlacz się "jakby nie resetuje"
.... no to resetujemy naszego procka a tu nadal kicha .... no to zasilanie i czasem zadziała ... a czasem jak się kondensator nie zdąży rozładować
no to nie zadziała - dopiero po dłuższym czasie .... ktoś tam pisał wcześniej że jak wyświetlacz poleży dłużej to rusza ...
hmmmm sobie pomyślałem ... lipa ....
ale ... ale w takich wypadkach zawsze sobie myślę ... kurka - JAK ROZWIĄZAĆ PROBLEM a nie panikować
przecież pin CS jest bardzo przydatny - a przydałoby się mieć jeszcze pin RST wprost z SSD1306 .... wtedy mając taką parę wyświetlacz chodziłby jak BRZYTWA ! ... no to postanowiłem uśpić wyświetlacz (no nie młotkiem jak MIS(i)O'a)
i wypruć mu z brzucha organy czyli ten cały sprzętowy KOCI RESET .... wylutowałem po prostu trzy elementy jak na zdjęciu poniżej:
następnie złapałem druta zakończonego żeńską końcówką i dolutowałem go w miejsce gdzie na schemacie widzicie RST
czyli do pinu RST scalaka SSD1306
i w ten oto sposób mam OLED, który posiada następujące wyprowadzenia:
SCK, MOSI, CS, DC oraz RST ! huuurrraa
... no więc BACH do procka ... bo przecież LIB'isk pisany na wizji chcący czy niechcący PRZEŚLICZNIE do takiego układu pasuje. IDEALNIE w trakcie inicjalizacji wyświetlacza działa tylko kod dla RST, a w funkcjach do wysyłania komend i danych pin CS, tylko przydzieliłem im różne piny procka oczywiście
efekt ? .... rewelacja bo działa teraz IDEALNIE
stabilnie , za każdym razem .... powiem więcej - działa (tak mi się wydaje po wstępnych testach że jeszcze stabilniej niż te wyświetlacze, które mają wyprowadzony TYLKO ten pin RST a CS na stałe zwarty do GND. Co więcej - wkrótce przetestuję podłączenie kilku wyświetlaczy naraz do procka - no bo skoro taka możliwość jest - to zaraz we łbie chirurga kłębią się pomysły - jak tu zmajstrować nowego OLED-Steina
----------------------------------------------------------------
ale ok UWAGA!!!!
żeby ktoś nie pomyślał że tym opisem próbuję powiedzieć - dla tych co kupili u mnie wyświetlacze, że RÓBTA CO CHCETA i sobie wylutowujcie, zmieniajcie, naprawiajcie a mnie to nie obchodzi ...
UWAGA!Każdy kto się nie czuje na siłach aby to wylutować i dodać kabelek z RST, proszę bardzo - można do nas odesłać wyświetlacz i wkrótce będziemy mieli te tylko z pinem RST, więc albo odeślemy taki z RST albo zwrócimy pieniążki łącznie z kwotą przesyłki .... ale te specjalne wersje z CS też zostawię jeszcze trochę - tylko opiszę w sklepie o co chodzi albo wręcz sami je już przerobimy żeby miały kabelek i będzie można kupić też takie po operacji ATNELAŃSKIEJ bo - no są warte kurczaczki - grzechu elektronicznego - tak mi się wydaje
uuuf to tyle ... ale com czasu stracił dzisiaj cały dzień od rana do teraz tom stracił. Nie mniej jednak warto było bo narodził się nowy "potwoerk" o fajnych możliwościach
------------------------ [ Dodano po: 1 minucie ]filipo96 napisał(a):
i brakuje wysłania np. 0x40, SSD1306_SETVCOMDETECT.
to poprawimy
filipo96 napisał(a):
Czy to ma znaczenie?
ale nie ma to znaczenia - jeśli chodzi o ten układ resetu wyżej jaki opisałem ...