„stary” wyświetlacz „nowe” możliwości, wyświetlacz LCD znakowy

5/5 - (2 votes)

LCD StandardowyWyświetlacz LCD znakowy, dla majsterkowicza parającego się technologią związaną z µC nie jest niczym nowym, a i jego atrakcyjność chyba już przeminęła, powoli wypierana przez coraz nowsze i ciekawsze rozwiązania. Nowe konstrukcje nie dość, że pobierają mniej prądu, mają mniejszą ilość wyprowadzeń, to często po mimo mniejszej powierzchni ekranu potrafią pomieścić więcej treści. Tak, mam tu na myśli, też wyświetlacze graficzne, niechlubną ich cechą za to jest wymagana większa pojemność pamięci na kod, który znacznie puchnie od tych wszystkich treści komunikatów, które mają się pojawiać, w stosownych momentach. Od pewnego czasu obserwuję się „świeży” trend gdzie jakość i czytelność ekranów wyświetlaczy LCD , nie tylko znakowych uległa rewolucyjnej poprawie. To wszystko dzięki technologii negatywowej.

Na czym to polega? Na zmianie podejścia do tematu i odwróceniu kota ogonem ;-P Hehehe Standardowo wyświetlanie polega na zapaleniu pikseli w kształt znaków, które są dla nas rozpoznawalne i zrozumiałe. Są to ciemne punkty. Dodatkowo całość jest przeważnie podświetlana ładnym kolorkiem.

widok LCD Negatywowego

Natomiast wyświetlacz negatywowy działa dosłownie „w negatywie”. Powiedzmy, iż wszystkie piksele są na wstępie aktywne (zapalone), a gaszone są te by powstały znaki, które potrafimy przeczytać. Jeśli teraz cały ekranik się podświetli bajeranckim kolorkiem ujrzymy efekt „świecących napisów”. Taka prezentacja baaaardzo dużo zyskuje na czytelności . Niemniej zrobić dobrą fotkę pracującego wyświetlacza (tego egzemplarza) nie jest łatwo przynajmniej dla mnie ….

Ale nie to miałem na myśli nadając artykułowi tytuł „„stary” wyświetlacz – „nowe” możliwości, LCD znakowy„. Jakiś spory kawałek czasu temu trafiłem na wpis użytkownika EDC na pewnym forum. Cały ambaras polega na odmiennym spojrzeniu na sprawę, podobnie jak w przypadku wyświetlacza negatywowego ;-P Zdaje się nie jest on autorem tego pomysłu, ale ale dzięki niemu wyświetlacz LCD nabrał dla mnie nowego wyrazu. Kolega EDC udoskonalił za to ten patent, stworzył różne jego warianty, i przedstawił praktyczne sposoby na zwolnienie pamięci flash dla kodu związanego z obsługą wyświetlacza. Od pewnego czasu prowadzi też swojego bloga, gdzie dodatkowo uwypuklił istotne fakty, o których się zapomina w trakcie budowania kodu programu związanego z obsługą wyświetlacza znakowego LCD. Przedstawił też mapę pamięci typowego wyświetlacza LCD, z wizerunkami ulokowanych tam znaków. Tutaj warto dodać, iż znaki predefiniowane są przez producenta. I na przykład w zakresie adresów 33 do127 znajdują się standardowe litery, cyfry oraz inne znaki specjalne. Natomiast znaki ulokowane po adresami 160 do 255 nie są już identyczne dla wszystkich wyświetlaczy i producenci ładują tam różną zawartość, choć część z nich jest stała (niezmienna). Tak że proszę nie być zdziwionym gdy posługując się identycznym adresem znaku na rożnych wyświetlaczach możemy otrzymać różny efekt.
W tym celu postanowiłem przeprowadzić małe doświadczenie. Polega ono na cyklicznej prezentacji wszystkich znaków zaszytych w pamięci wyświetlacza, dla różnych typów i modeli wyświetlaczy. Obrazują to poniższe filmy.

Mam bardzo fajny wyświetlacz, to ten niebieski z białym podświetleniem jest niezmiernie wyraźny i czytelny lecz bardzo trudno przynajmniej dla mnie było wykonać realistyczne czytelne zdjęcie i film podczas pracy tego modelu. Może dlatego, że elektronika do robienia zdjęć dostawała głupawki od tego koloru ekranu? Ciekawe czy zna ktoś jakieś logiczne wytłumaczenie dla tego faktu …. Bo przy użyciu już innego typu wyświetlacza negatywowego (czarny) nie było już takich problemów.

Przeprowadzę teraz zwięzłą analizę wyników. Pod adresami 0 – 8 siedzą znaki zdefiniowane przez użytkownika. Na filmach widać co tam wpisałem do niektórych wyświetlaczy. Ciekawy jest fakt, iż znaki te zostały powtórzone pod adresami 9 -15 … Adresy 16 – 32 oraz 128 do 159 lub 160 (w zależności od modelu i producenta) zawierają pustą przestrzeń.  I tutaj zwracam uwagę na rozbieżność jeden z egzemplarzy ma już zdefiniowany znak pod adresem 160 a pozostałe od 161. Pod adresami 33 – 127 jak wspominałem wcześniej umieszczone są znaki do których przywykliśmy, a pod adresami od 160 lub 161 do siedzą znaki predefiniowane indywidualnie przez producenta. Na filmach widać w tej przestrzeni adresowej na jednym z wyświetlaczy cyrylicę, ma innym pismo „obrazkowe” dalekowschodnie, a na jeszcze kolejnym zawartość zgodną z przedstawianą na witrynie przez kolegę EDC.

Wracam do patentu, który mnie zachwycił i stanowi bardzo ciekawą alternatywę prezentacji wyników na wielowierszowym wyświetlaczu LCD. Dzięki dobremu pomysłowi można prezentować numeryczne wyniki pomiarów czy też obliczeń za pomocą dużych, czytelnych z większej odległości cyfr, „budowanych” w dwóch wierszach na raz! Jak dla mnie rewelacja! I tu przychylam się do stwierdzenia, że najtrudniej jest wymyślić prostą ale zarazem bardzo funkcjonalną użyteczność. Dzięki niej dla mnie wyświetlacz LCD dostał kolejne nowe życie. :mrgreen: A w połączeniu z wyświetlaczami negatywowymi uzyskać można rewelacyjną funkcjonalność.

Osobiście uzyskałem następujący efekt

wyświetlacz LCD alfanumeryczny, demonstracja dużych cyfr

wyświetlacz LCD alfanumeryczny,
demonstracja dużych cyfr

Ikonka kranika podpatrzona, lecz wykonałem swój wzór. Ten mi się jakość bardziej podoba.
Przygotowuję sobie zawartość ekranu do projektu na µC AT98C4051 gdzie będzie zrealizowane sterowaniem grzania wody użytkowej i wskazanie temperatury otoczenia. Stary układ dostanie nową funkcjonalność, ale pewno o tym coś jeszcze napiszę w innym miejscu. Tak sobie zaglądam na tą fotkę i myślę, że na znak stopnia można wykorzystać małą literę „o”, ja posłużyłem się znakiem predefiniowanym o kodzie 239 wyświetlacza z załadowaną cyrylicą. Znak umieszczony jest wyżej niż literka „o”.

 Opracowane na podstawie udostępnionych kodów.
Na potrzeby takiej demonstracji generowany kod zajmuje 1685 bajtów (bez tego -> $large będzie ociupinkę mniej).

A.D. 2015-03-17 Wygrzebałem dwie mapy znaków więc je tutaj zamieszczę. Można się przyjrzeć co gdzie siedzi w zależności od zlokalizowanej (międzynarodowej) wersji.

mapa znaków - standardowa

standardowa mapa znaków A00 generatora HD44780

mapa znaków - europejska

europejska mapa znaków A02 generatora HD44780

 

A.D. 2015-12-01 z ostatniej chwili 😉
BARTek zrobił super odkrycie, dzięki któremu można zaoszczędzić ponad pół KB pamięci flash. Oszczędność taka wynika z innego zapisu kodu dla dużych cyfr, a co za tym idzie kompilator generuje mniejszą ilość kodu wynikowego. Tak jak widać na pierwszy rzut oka nie jest używana funkcja Chr() oraz brak operacji sumowania znaków … Lepszy zapis wyglądać może następująco:

Ot sztuczka :mrgreen:


Dzięki uprzejmości autora zamieszczam opracowaną receptę, z opisem jak uzyskać duże cyfry na wyświetlaczu wielowierszowym, w postaci załącznika Duże_cyfry_na_alfanumerycznym_LCD_-_2015-02-07_bart-projects.cba_.pl_.pdf (5350 pobrań ) witryna z opisem bart-projects.cba.pl/


nota katalogowa wyświetlacza LCD ABC016002E14-FHW-R biały dwie linie 16 znaków lcd_ac_1602f-ABC016002E.pdf (4039 pobrań )
nota katalogowa wyświetlacza LCD WC1602A0-SFYLYNC06 żółtozielony 2 linie 16 znaków WC1602A0.pdf (4829 pobrań )
nota katalogowa wyświetlacza LCD QAPASS 1602A1 negatywowy niebieski 2 linie 16 znaków eone-QAPASS_1602a1.pdf (5402 pobrania )
nota katalogowa wyświetlacza LCD ACB016004A16-D1W-R negatywowy czarny 4 linie 16 znaków – brak

Otagowano , , , , , , , , , .Dodaj do zakładek Link.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

11 + 15 =

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.