[pytanie laika] LCD przez LPT, jak zainicjowac

Witam

Podlaczylem wyswietlacz LCD 2x16 na sterowniku HD44780 do portu LPT. Napisalem juz program tak, ze moge dowolnie zmieniac stany logiczne na pinach wyswietlacza, zasilanie rowniez doprowadzilem. Proboje sterowac wyswietlaczem tak jak jest to opisane w karcie katalogowej sterownika (jest tam podany przyklad krok po kroku) ale narazie zadnych efektow nie ma...

Pierwsze pytanie bardzo banalne - nie mialem jeszcze kontaktu z cyfrowka i nie wiem jak wysylac sygnaly do wyswietlacza LCD. Na jak dlugo nalezy na niektorych pinach podniesc napiecie do +5 V ? czy czas utrzymywania sie tego stanu ma jakies znaczenie ?

Czy przed wyslaniem kolejnej instrukcji trzeba ustawic na wszystkich pinach stan niski czy po prostu "plynnie" przjesc z jednej instrukcji do drugiej ? jesli tak, to jak dlugo ma trwac ten stan "wyzerowania" ?

Zamierzam uzywac interfejsu 4-o bitowego wiec kazda instrukcja bedzie podzielona na dwa sygnaly - jak wyslac dwa sygnaly tak, aby sterownik potraktowal to jako 1 instrukcji ? (oczywiscie juz po ustawieniu go w prace 4-o bitowa) czy do tego celu sluzy wejscie ENABLE ?

Przy ustawionym kontrascie na maximum zapala sie cala gorna linia wyswietlacza, czy moze tak byc czy nalezy zmniejszyc kontrast aby cokolwiek moc wyswietlic ?

Pozdrawiam i z gory dziekuje.

Reply to
Keeller
Loading thread data ...

Dokladniej chodzi mi o to jak uzywac wyprowadzenia ENABLE.

W specyfikacji sterownika na przykladzie wyswietlania przez interfejs 4-o bitowy w tabeli nie ma podanego stanu ENABLE.

  1. Podlaczam napiecie zasilania
  2. Function set RS=0 R/W=0 DB5=1 Punkt ten odpowiada za przejscie sterownika w tryb 4-o bitowy.

Czy w tym momencie wystarczy na chwile podniesc napiecie na pinie DB5 do +5V, a potem obnizyc z powrotem do 0, a moze napiecie ma zostac az do nastepnego rozkazu ? czy podczas tej instrukcji nalezy uzyc sygnalu ENABLE ? Jesli tak ktory sygnal ma byc zalaczony jako pierwszy i ktory ma wygasnac pierwszy ?

  1. I tutaj mamy pierwszy rozkaz rozlozony na 2 sygnaly, wiem ze najpierw trzeba wyslac bardziej znaczaca czesc bajtu, a potem mniej. Probowalem w rozny sposob wysylac te sygnaly do wyswietlacza, ale niestety nic nie chcialo dzialac prawidlowo :(

Jak ma wygladac uzywanie sygnalu ENABLE przy wysylaniu tego rozkazu ? Chodzi mi o opis typu:

  1. Na wszystkich pinach napiecie 0V
  2. RS=H ENABLE=L
  3. RS=H ENABLE=H
  4. RS=H ENABLE=H + bardziej znaczaca czesc bajtu
  5. RS=H ENABLE=L
  6. RS=H ENABLE=H
  7. RS=H ENABLE=H + mniej znaczaca czesc bajtu
  8. RS=H ENABLE=L
  9. Na wszystkich pinach napiecie 0V To tylko przyklad, ktory niestety nie dziala... Jak powinny wygladac poszczegolne kroki aby wyswietlacz potraktorwal to jako jedno polecenie wyslane interfejsem 4-o bitowym ?

Pozdrawiam

Reply to
Keeller

Użytkownik Keeller napisał:

[...]

na

formatting link
znajdziesz gotowy program, kolega pisal go w pascalu, moze da zrodlo.

przeanalizuj

formatting link
niestety nie znalazlem strony w normalniejszym jezyku

Reply to
AlexY

bo jeśli przypadkiem LCD był w trrybie 4-bitowym, to oczekuje na dwie "połówki" rozkazu. Jedna "wysyłka" spowodowałaby w takim przypadku, że połowa następnego rozkazu zostałaby potraktowana przez LCD jako młodsze bity tego rozkazu - lub innymi słowy: wszystkie dalsze rozkazy były przesunięte "o pół bajtu"

Reply to
Jarek Andrzejewski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.