-
Data: 2013-06-15 14:36:54
Temat: Śmieszny wyświetlacz OLED
Od: "Andrzej W." <a...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Cześć,
Nabyłem sobie tę zabawkę: http://dx.com/p/180386 mikroskopijny
monochromatyczny wyświetlacz oled o rozdzielczości 128x64 z interfejsem
I2C (CRIUS CO-16).
Jego przydatność w projektach profesjonalnych jest raczej znikoma ale
moim zdaniem może to być ciekawy pomysł na "interfejs debugujący" przy
tworzeniu nowych projektów.
Dodanie okresowego lub wywoływanego zdarzeniem przerwania
wyświetlającego najważniejsze zmienne może znacząco ułatwić wykrycie
przyczyn problemów.
Wady a zarazem zalety tego wyświetlacza:
- mały,
- spora rozdzielczość, 128x64 lub 8 linii po 25+ znaków każda (lupę
dokupujemy oddzielnie),
- brak generatora znaków, trzeba litery samemu zdefiniować, ale za to
nie ma problemu ze znakami narodowymi i dowolnie wymyślnymi symbolami.
Wady:
Brak wyprowadzonego wejścia reset.
Jedyny sposób przywrócenia poprawnej pracy gdy wepchnęliśmy śmieci do
przypadkowych rejestrów to odłączenie modułu. Nie ma programowego
polecenia RST.
Brak możliwości odczytu pamięci obrazu.
Model CO-16 używa modułu UG-2864HSWEG01 bazującego na sterowniku SSD1306.
To UG... jest trochę dokumentacji oraz przykładowy kod wraz ze
zdefiniowaną czcionką Times New Roman podstawową, grecką i Katakaną.
http://www.wide.hk/download/UG-2864HSWEG01.rar
Ten przykładowy kod nie obejmuje niestety I2C, a próby jego dostosowania
są raczej bez sensu.
Podstawowe ograniczenia, zmiany CO-16 w stosunku do UG-2864HSWEG01.
- brak wyprowadzonego RST, jest ono niepodłączone można go spróbować
wyprowadzić.
- wybrany na stałe interfejs I2C
- I2C został "okaleczony" i działa tylko jako wejście, CO-16 NIE
WYSTAWIA ACK.
- CO-16 ma na PCB przetwornicę DC/DC 9V nie należy więc włączać
przetwornicy w SSD1306.
- Brak możliwości wybrania alternatywnego adresu, działa tylko adres
0x3C (da się wyrzeźbić).
- Na PCB jest LDO 3.3 V można więc zasilać układ wyższym napięciem (5V)
- Na PCB jest miejsce na na rezystory podciągające SDA i SCL, ale nie są
one wlutowane.
Przykładowy pseudo kod trochę powinien ułatwić zrozumienie dokumentacji
od I2C.
S - Start
P - Stop
0x80 - identyfikator polecenia
0x40 - identyfikator danych
CMD - polecenie
CP - argumenty polecenia
DA - dane.
Polecenia są bez parametru z jednym lub dwoma parametrami.
Przesłanie pojedynczego polecenia może wiec wyglądać tak:
S, 0x3C, 0x80, CMD, P
S, 0x3C, 0x80, CMD, CP, P
S, 0x3C, 0x80, CMD, CP, CP, P
W jednej transmisji można przesłać dowolną ilość danych.
S, 0x3C, 0x40, DA, P
S, 0x3C, 0x40, DA, DA, P
S, 0x3C, 0x40, DA, ..., DA, P
Można w jednej transmisji przesłać kilka poleceń np.:
S, 0x3C, 0x80, CMD, CP, CP, 0x80, CMD, 0x80, CMD, CP, P
Oraz po poleceniach przesłać dane:
S, 0x3C, 0x80, CMD, 0x80, CMD, 0x80, CMD, CP, 0x40, DA, ..., DA, P
Może się to komuś przyda.
Można się pokusić o przerobienie magistrali na SPI, trzy cięcia i dwa
kynarki i zamiast zegara 400 kHz mamy 10MHz.
--
Pozdrawiam,
Andrzej
Następne wpisy z tego wątku
- 15.06.13 21:20 sundayman
- 15.06.13 21:49 LeonKame
- 15.06.13 21:53 J.F.
- 15.06.13 22:14 J.F.
- 16.06.13 00:39 sundayman
- 17.06.13 08:40 AS
- 17.06.13 11:42 Sylwester Łazar
- 17.06.13 12:24 AS
Najnowsze wątki z tej grupy
- Thunderbird i dysk...
- opornosc falowa
- Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- Tani zakup z ali?
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
Najnowsze wątki
- 2025-07-23 Gdańsk => Programista Delphi <=
- 2025-07-23 Gdańsk => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-23 Warszawa => Starszy inżynier DevOps (AWS) <=
- 2025-07-23 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-23 Kraków => Senior Fullstack Engineer (Low-Code Platform) <=
- 2025-07-23 Wrocław => Senior Key Account Manager IT <=
- 2025-07-23 Trójmiasto => Head of Social Media <=
- 2025-07-23 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-23 Lublin => ERP Implementation Consultant (AP Module) <=
- 2025-07-23 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-23 Warszawa => Inżynier oprogramowania .Net <=
- 2025-07-23 Kraków => Kotlin Developer <=
- 2025-07-23 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-07-23 Warszawa => Java Developer <=
- 2025-07-23 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=