FunCard z możliwością podłączenia wyświetlacza LCD

           Wraz z nowa wersją  FunSoft S**A v1.00 została zaimplementowana obsługa wyświetlacza LCD. W poniższym opracowaniu opisuje szczegółowo podłączenie wyświetlacza LCD przez PORTD i przez PORTC. Jednak dla nas najważniejsza będzie wersja wykorzystująca port C - bo ta wersja jest wykorzystywana przez nowe oprogramowanie. A więc nasza karta będzie komunikowała się z wyświetlaczem LCD nie za pomocą 4 - bitowej szyny PD0-PD3, a za pomocą 8 bitowej szyny PC0-PC7 (PORTC). Ta pierwsza możliwość była wykorzystana tylko w pierwszej wersji karty (FunCard HMT v1.0) - obecnie od niej odstąpiono na rzecz portu C (reszta połączeń dla obu wersji pozostaje taka sama tzn. linie: PD4, PD5, PD6 oraz zasilanie i sterowanie jasnością wyświetlacza). Schemat podłączenia przez port C możną znaleźć w dokumentacji do karty: wersja SMT. Dostępne oprogramowanie do testowania LCD obsługuje tylko port D - powstało ono zresztą tylko do pierwszej generacji tej karty.

Wersja dla portu C

           Naszym celem będzie uzyskanie efektu jak na zdjęciu obok (ostatnie znaki zostały celowo zamazane ;-)  )     -> 

 

 

        Aby podłączyć wyświetlacz LCD należy skorzystać z odpowiednio wykonanej płytki. Można wykorzystać projekt karty, który zamieściłem na mojej stronie. 

        Jeśli projektujemy własną płytkę, należy skorzystać ze schematu umieszczonego także w powyższym pliku. Do podłączenia LCD wystarczy 14-sto żyłowy przewód. LCD łączony jest do następujących pinów procesora: PC0, PC1, PC2, PC3, PC4, PC5, PC6, PC7, PD4, PD5, PD6, oczywiście dodatkowo jest łączony z GND, VCC oraz przez potencjometr 10 kohm - służący do regulacji poziomu jasności/kontrastu wyświetlanych znaków. Można jeszcze zrobić tak, że rezystor 10 kohm umieszczamy bezpośrednio przy samym wyświetlaczu, odpada wtedy problem z przeróbką karty i o jeden kabelek jest mniej. W dokumentacji tej wersji karty napisano, że wyświetlacz nie może mieć podświetlenia - prawdopodobnie wtedy byłby za duży pobór prądu i karta by nie działała). Jednak u mnie podczas pierwszych testów, karta z LCD z podświetleniem (diody świecące) poprawnie współpracowała z dekoderem.

Według dokumentacji ten wyświetlacz to: LCD Display  nr. w katalogu ELFA: 75-526-49. I jest to dokładnie:
DMC16207/Opx -> 2 wiersze po 16 znaków, typ o małym kącie obserwacji, bez podświetlenia tła. Poniżej przestawiłem dla przykładu model DMC16230 (z podświetleniem tła - jak napisałem powyżej ten typ też powinien współpracować z kartą).

         A jak ci się znudzi marne i pospolite podświetlanie żółto-zielone możesz także zastosować poniższy typ wyświetlacza:

2x16 znaków

        Równie dobrze można zastosować typ dwuwierszowy po 20 lub 40 znaków na wiersz (ale wiąże się to już z dość dużym kosztem) - dzięki temu na wyświetlaczu zmieści się dłuższa nazwa providera. Oczywiście nie jest konieczne stosowanie dokładnie takich samych modeli jak powyżej. Ja zastosowałem jakiś wyrób z Tajwanu : LMC - SSC 2B16DLYY. Złącza tych wyświetlaczy są ustandaryzowane, więc nie ma tu problemu. 

Wyświetlacze możesz kupić m.in. tu:
http://www.cyfronika.com.pl/  ->   /matryce.htm 
http://www.lcd.elementy.pl/     ->   /lcd/standard.htm#02x16
A to właśnie zastosowany przeze mnie wyświetlacz LCD   ->

          Po zmontowaniu/przeróbce karty można sprawdzić poprawność działania wyświetlacza LCD. Robimy to tak: programujemy kartę plikiem FunTest.hex (plik ten znajduje się w pliku FunTest_new by DaD, dostępnym na mojej stronie [Jest to prosta integracja starych testów FunLed i FunLcd do 2in1, LCD testowane tym razem na PORTC i 8 bitowo] ). Następnie kartę podłączamy zgodnie ze poniższymi wskazówkami:

  +5V, GND, ~4MHz clock needed for testing.

Ja ją włożyłem do Phoenix-a -> zapewnia wszystkie potrzebne sygnały. Jeśli wszystko wykonaliśmy poprawnie, to na wyświetlaczu LCD pojawia się napis: 

F u n c a r d                  
T e s t                        
Po poprawnym zmontowaniu karty + LCD (przed jej zaprogramowaniem) należy sprawdzić, czy wyświetlacz został włączony/uaktywniony. Sprawdzamy to w menu "Edit SECA -> Config" w programie FunProm (2.33). 

        W tym menu aktywujemy/dezaktywujemy także diody LED odpowiedzialne za wskazanie numeru klucza oraz LEDy kontrolne. 

Jeśli wszystko zrobiliśmy poprawnie to na wyświetlaczu powinniśmy zobaczyć dwie linie tekstu odświeżane w czasie rzeczywistym :

p

p

p

p

/  

k

k

   

n

n

n

n

n

n

n

n

b

b

b

b

b

b

b

b

b

b

b

b

b

b

b

b

gdzie :

p p p p to aktualny identyfikator providera (Id) 
k k to aktualny numer klucza lub 'SA' dla PPUA
n n n n n n n n to aktualna nazwa providera, którego kanał aktualnie oglądamy
b b b b b b b b b b b b b b b b to aktualnie używany klucz zakodowany heksadecymalnie

Ponieważ nie miałem pod ręką odpowiedniej płytki dla FunCard + LCD, więc przerobiłem kartę przedstawioną na stronie (tą wersję jednostronną). Nie będę dokładnie opisywał co i jak przerobiłem - trzeba po prostu połączyć odpowiednie styki wyświetlacza z kartą FunCard według schematu zamieszczonego we wcześniej wspomnianym projekcie. Na razie nie pokażę tych moich przeróbek gdyż jest to już przeróbka karty opisane poniżej (czyli z wersji port D przeszedłem do wersji port C), jest więc tu już niezły bałagan :-)

Wersja dla portu D - czyli wersja dla osób które nie maja co robić z wolnym czasem  ;-)

        Aby podłączyć wyświetlacz LCD należy skorzystać z odpowiednio wykonanej płytki. Można wykorzystać projekt karty, który zamieściłem na mojej stronie ale wymagana jest w nim mała modyfikacja: Pin 31 łączymy z pinem 7, przykład pokazałem na poniższym rysunku:

        Jeśli projektujemy własną płytkę, należy skorzystać ze schematu umieszczonego także w powyższym pliku. Do podłączenia LCD wystarczy dziesięcio żyłowy przewód. LCD łączony jest do następujących pinów procesora: PD0, PD1, PD2, PD3, PD4, PD5, PD6, oczywiście dodatkowo jest łączony z GND, VCC oraz przez potencjometr 10 kohm - służący do regulacji poziomu jasności wyświetlanych znaków. W dokumentacji tej wersji karty napisano, że jednocześnie nie można używać czterech LEDów (tych służących do wskazywania numeru używanego klucza) i wyświetlacza LCD oraz że wyświetlacz nie może mieć podświetlenia - prawdopodobnie wtedy byłby za duży pobór prądu i karta by nie działała). Jednak u mnie podczas pierwszych testów, karta z LCD z podświetleniem (diody świecące) poprawnie współpracowała z dekoderem.

        Po zmontowaniu/przeróbce karty można sprawdzić poprawność działania wyświetlacza LCD. Robimy to tak: programujemy kartę plikiem Funlcd1.hex (plik ten znajduje się w FUNTEST.zip dostępnym pod: http://www.funcard.net/ -> Funcard (Misc.) lub na mojej stronie ). Następnie kartę podłączamy zgodnie ze wskazówkami z Readme.txt :

  To get these programs to work, the FunCard needs to be connected to 
+5V
0V (GND)
clocksignal (shold be 3-4MHz)

Ja ją włożyłem do Phoenix-a -> zapewnia wszystkie potrzebne sygnały. Jeśli wszystko wykonaliśmy poprawnie, to na wyświetlaczu LCD pojawia się napis: 

F u n C a r d -                
T e s t !                      

a diody LED zaczynają migać.

        Ponieważ nie miałem pod ręką odpowiedniej płytki dla FunCard + LCD, więc przerobiłem kartę przedstawioną na stronie (tą wersję jednostronną). Nie będę dokładnie opisywał co i jak przerobiłem - trzeba po prostu połączyć odpowiednie styki wyświetlacza z kartą FunCard według schematu zamieszczonego we wcześniej wspomnianym projekcie. Dla zobrazowania jak to wyglądało w moim przypadku, poniżej prezentuję odpowiednie zdjęcia.

FunCard - widok od strony na której dokonałem odpowiednich połączeń za pomocą taśmy 10-cio żyłowej FunCard - widok od strony na której wstawiłem potencjometr 10 kohm
Zastosowany przeze mnie wyświetlacz LCD  Zastosowany przeze mnie wyświetlacz LCD - widok od strony, gdzie przylutowałem taśmę 10-cio żyłową

 

 

        Poniżej widać, jak może wyglądać profesjonalnie wykonana karta z wyświetlaczem LCD

Widok ogólny
Widok od strony złącza dla LCD
Widok od spodu

        Jeszcze kilka informacji na temat wyświetlaczy LCD.

Wyświetlacze LCD, 8 - 40 znaków x 1-4 wierszy, ASCII. Kompletne moduły LCD z układami zasilającymi i generatorami znaków w kodzie ASCII, z 8-bitowym wejściem równoległym. Układ sterujący z pamięcią użytkownika. W pamięci RAM można zapisać do 8 własnych znaków. Matryca 5 x 7 punktów, z kursorem lub bez. Typy z wyświetleniem "super twist" o dużym kącie obserwacji. W celu poprawienia czytelności w ciemnościach, dostępne są typy z podświetleniem tła, z panelem EL lub diodami świecącymi. Napięcie zasilania +5 V. Niski pobór prądu, typ. 0,5 mA. 



Typ
Ilość
znaków
x wiersz
Wymiar
znaku w mm
szer. × wys.
Wymiar
okna w mm
szer. × wys.

Podsw.
tła

Super
Twist
DMC16207 16×2 2,95×5,55 61×16 --- Nie
DMC16202NY-LY 16×2 2,95×5,55 61×16 LED3) Tak
DMC16230NY-LY 16×2 4,84×9,66 99×24 LED3) Tak
DMC20434 20×4 2,95×4,75 76×25,2 --- Nie
DMC20481NY-LY 20×4 2,95×4,75 76×25,2 LED3) Tak
DMC40218 40×2 3,25×5,55 152,5×16,5 --- Nie
DMC40218NY-ED 40×2 3,2×5,55 152,5×16,5 EL Tak
4) Bez kursora     3) Żółty (568 nm)
Powyższe dane pochodzą z katalogu ELFA.

Wyświetlacze można kupić np. tu: http://www.elementy.pl/ - znajdziesz tu także dokumentacje do wielu typów wyświetlaczy LCD.

 Ostatnia aktualizacja: 02.11.2001

Wróć