ATNEL tech-forum
https://forum.atnel.pl/

Jak przesunąć napis z dolnej linii do górnej w LCD 2x16
https://forum.atnel.pl/topic20375.html
Strona 1 z 1

Autor:  Dzonzi [ 7 mar 2018, o 21:05 ]
Tytuł:  Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Witam serdecznie
Nie mam pomysłu jak przesunąć napis z dolnej linii na górną. Chcę zrobić małe menu. Na ekranie głównym będzie pare opcji i przyciskami chcę się poruszać w górę i w dół.
Czy moglibyście mi zarzuć jakimś pomysłem? Nie używam dedykowanych bibliotek do LCD.
Pozdrawiam serdecznie

Autor:  karolen [ 7 mar 2018, o 22:53 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Jak rozumiem nie używasz bibliotek z BB, to może powiedz z jakich korzystasz. Bo na chwilę obecną jest to praca bardziej ze szklaną kulą aniżeli z kodem i programowaniem.
Na pewno tu na forum znajdzie się kilka osób które Ci pomogą, ale daj im na to szansę. Daj jakieś materiały na których planujesz opierać swoją pracę...

Autor:  Dzonzi [ 8 mar 2018, o 06:52 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Z żadnych bibliotek nie korzystam oprócz standardowej avr/io i delay. Opieram się na dokumentacji wyświetlacza, a raczej chyba sterownika hd44780

Autor:  SP2LUB [ 8 mar 2018, o 07:33 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Cześć Dzonzi
Żeby zmieniać linie musisz wysłać do wyświetlacza adres linii. Skoro znalazłeś się już w drugiej linii to zapewne wiesz jak zainicjować wyświetlacz, wiesz jak wysłać do niego dane i komendy... zatem posiadając tę wiedzę, po prostu wyślij do wyświetlacza rozkaz zmiany linii.
Jeżeli linia druga to 0x40 to pierwsza będzie 0x00?
Generalnie żebyśmy mogli Tobie pomóc to wypadało by z Twojej strony umieścić chociaż fragment kodu jakim się posługujesz.. bez tego możemy jedynie.... zgadywać co też Ty tam naskrobałeś

Autor:  Nefarious19 [ 8 mar 2018, o 07:51 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Czy masz napisane jakieś funkcje do obsługi lcd?

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


itd, itp?

Jeśli nie to je napisz, jeśli tak pokaż co i jak juz sam zrobiłeś?

Autor:  Dzonzi [ 8 mar 2018, o 09:00 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


A taki mam kod, który działa bardzo śrtednio. Górny napis Up jest wyświetlany tak jak powinien, w pierwszej linii, za do na dolnym ekranie nie jest nic wyświetlone, ale kursor jest przesunięty na piątek miejsce, czyli tak jakby było Down_ tylko nie wyświetla napisu, a sam kursor na 5 miejscu.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Proszę nie zwracać uwagi na niepotrzebne delaye, czy sprawdzenie != 0 w warunku pętli, bo to nie jest powodem błędnego działania, a mi pomaga czytelniej patrzeć na kod.

Autor:  Nefarious19 [ 8 mar 2018, o 10:36 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

proponuje zacząć od książki:

Mikrokontrolery AVR - język C podstawy programowania

Bo patrząc na twój kod to jeszcze długa droga przed Tobą ale pokonasz ją szybciej czytajac powyższą pozycję.

------------------------ [ Dodano po: 1 minucie ]

Nie jestem złośliwy i chce pomóc ale musisz "dać z siebie mąke" zktóre da się zrobić "chleb" w postaci porządnego kodu.

------------------------ [ Dodano po: 3 minutach ]

Mozesz też przeanalizować kod z tej strony: http://radzio.dxp.pl/hd44780/hd44780_av ... _rw_c.html

Autor:  Dzonzi [ 8 mar 2018, o 10:44 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

A więc w którym miejscu jest błąd powodujący niewyświetlenie napisu na dolnej linii?

Autor:  mirekk36 [ 8 mar 2018, o 10:56 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Nefarious19 napisał(a):
proponuje zacząć od książki:

Mikrokontrolery AVR - język C podstawy programowania

Bo patrząc na twój kod to jeszcze długa droga przed Tobą ale pokonasz ją szybciej czytajac powyższą pozycję.

Nie pamiętasz z innych wątków tego użytkownika (nomen omen wciąż o tym samym) ... że on nie korzysta z żadnych bibliotek a tym bardziej z książek bo to strzelanie z armaty do komara ;) ?

A brnie dalej że aż strach się bać ...

Dzonzi napisał(a):
Proszę nie zwracać uwagi na niepotrzebne delaye, czy sprawdzenie != 0 w warunku pętli, bo to nie jest powodem błędnego działania, a mi pomaga czytelniej patrzeć na kod.

to nie jest kod - to jest jakiś groch z kapustą

Dzonzi napisał(a):
A więc w którym miejscu jest błąd powodujący niewyświetlenie napisu na dolnej linii?

a to pytanie wygrywa konkurs roku! ;)

Autor:  Nefarious19 [ 8 mar 2018, o 11:05 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

ja mam propozycje dla Kolegi Dzonzi że jak się chce "uczyć Ce z dataszita" to jest od tego specjalizowane forum na e ;)

Autor:  Dzonzi [ 8 mar 2018, o 14:00 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Udało się. Trzeba było zmienić wartość komendy na C0. W dokumentacji na st. 43 jest napisane Sets DDRAM address so that
the cursor is positioned at the
head of the second line.

Czy nie mogliście od razu mi tego powiedzieć? :D

Teraz muszę zrobić tak, żeby po wciśnięciu przycisku, napis dolny przeszedł do górnej linii. Jakieś sugestie? Tak sobie myślę, że by nie wpisać tych wszystkich "opcji" menu do tablicy, każdy klik powoduje że do górnej linii będzie wpisana kolejna zawartość tejże tablicy, a do dolnej zawartość tablicy n+1, a jeżeli n+1> od rozmiaru tablicy to n=0, więc wpisze znów pierwszy element tablicy i w ten sposób ta się zapętli.
Czy dobrze myślę? Czy może da się to zrobić łatwiej/lepiej?

Autor:  mirekk36 [ 8 mar 2018, o 15:05 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Dzonzi napisał(a):
Czy może da się to zrobić łatwiej/lepiej?

Wierzę w ciebie i na pewno wymyślisz jeszcze lepiej i jeszcze łatwiej, powodzenia ;)

Autor:  Dzonzi [ 8 mar 2018, o 15:31 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Panie Mirku, ale może podsunie Pan jakiś ciekawy i sprytny pomysł?

Autor:  mirekk36 [ 8 mar 2018, o 16:13 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Dzonzi napisał(a):
Panie Mirku, ale może podsunie Pan jakiś ciekawy i sprytny pomysł?

Ja się tam nie znam Panie ;) ja tu tylko sprzątam ... za bardzo początkujący jestem w te klocki - a widzę, że prujesz z pomysłami do przodu jak strzała więc lada moment będziesz miał rozwiązanie.

Autor:  Dzonzi [ 8 mar 2018, o 22:24 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

Udało mi się zrobić to pionowo przesuwane menu, co prawda nie po inżyniersku, ale za to jako tako. Muszę jeszcze nad tym posiedzieć i może uda się lepiej to zrobić.

Autor:  mirekk36 [ 8 mar 2018, o 22:33 ]
Tytuł:  Re: Jak przesunąć napis z dolnej linii do górnej w LCD 2x16

bravo!

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/