Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

lcd 4bit w asm...

Awatar użytkownika
gruszek
-
-
Posty:178
Rejestracja:20 lis 2003, o 13:31
Lokalizacja:bytom
lcd 4bit w asm...

Postautor: gruszek » 10 kwie 2004, o 16:18

witam, zadalem juz to pytanie wczesniej ale sam nie wiem czemu w innej dyskusji, calkiem nie na temat. teraz sie poprawilem i zamieszczam nowego posta ;)
w jaki sposob sa dzielone i wysylane rozkazy do wyswietlacza lcd po szynie 4 bitowej?
musze wiedziec bo mam wyswietlacz ktory ma tylko 4 bitowa szyne a robie program w assemblerze (AVR)
wiem ze inicjalizacja nie rozni sie od sterowanie 8 bitami bo wykorzystuje tlko 4 pierwsze ale co potem?
i czy po przeslaniu jednej polowki bajta trzeba czekac az wysw. nie bedzie zajety??

wlasne gotowe procedurki tez mile widziane ale przede wszystkim chcialbym sie dowiedziec jak to dziala i samemu napisac (a jak dostane od razu jakis przyklad to wiem ze nie bedzie mi sie chcialo robic i od razu walne gotowca)

_Wojciech_
-
-
Posty:269
Rejestracja:1 kwie 2003, o 20:32
Lokalizacja:Bielsko-Biała

Postautor: _Wojciech_ » 10 kwie 2004, o 23:49

Wysyłasz młodszą cześć bajta i zaraz po niej starszą. Albo odwrotnie, nie pomnę kolejności.
Też nie pamiętam, ale być może trzeba odczekać chwilę po wysłaniu jednej połówki bajta.
Aha, nie ma sensu sprawdzać, czy wyświetlacz jest gotowy. Lepiej odczekać jakiś czas (40us do chyba 1,54ms w zal. od rozkazu) i po sprawie.

JacekR
-
-
Posty:52
Rejestracja:2 kwie 2004, o 18:43
Lokalizacja:PL

Postautor: JacekR » 11 kwie 2004, o 19:59

kawalek kodu : :)

kursor_on: ;wlaczenie migania kursora
ldi temp1, 0b00001111 ;
rcall lcd_command
rcall delay5ms
ret


lcd_command:
mov temp2, temp1
swap temp1
andi temp1, 0b00001111
out PORTD, temp1
rcall lcd_enable
andi temp2, 0b00001111
out PORTD, temp2
rcall lcd_enable
rcall delay50us
ret

moze sie na cos przyda

Awatar użytkownika
gruszek
-
-
Posty:178
Rejestracja:20 lis 2003, o 13:31
Lokalizacja:bytom

Postautor: gruszek » 12 kwie 2004, o 11:16

no wlasnie chcialem zeby sprecyzowac jak dokladnie to jest, ktora polowka pierwsza.... chociaz moze wezme sie za samodzielne testy :)

JacekR
-
-
Posty:52
Rejestracja:2 kwie 2004, o 18:43
Lokalizacja:PL

Postautor: JacekR » 12 kwie 2004, o 11:18

Przeanalizyj te procedure a wyjdzie ci jaka kolejnosc :)

_Wojciech_
-
-
Posty:269
Rejestracja:1 kwie 2003, o 20:32
Lokalizacja:Bielsko-Biała

Postautor: _Wojciech_ » 12 kwie 2004, o 15:25

Albo metodą prób i błędów :lol:
Zresztą pisze w "uC AVR w praktyce".

Wróć do „AVR/AVR32”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość