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

Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?
https://forum.atnel.pl/topic23869.html
Strona 1 z 1

Autor:  RadekB86 [ 1 sie 2021, o 12:12 ]
Tytuł:  Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Witam mam taką zagwozdkę mianowicie mam wykorzystane wszystkie znaki w pamięci :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Oczywiście zdefiniowałem sobie znak do pomięci flash:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Ale teraz chcę dodać nowy i tutaj pojawia się problem bo
nowy znak zdefiniowany musiałby być \x88 ale nie ma takiej możliwości i program to odczyta jak x80i tym samym w miejsce x80 da mi mój nowy znak a tego niechcę ;)
więc jak to zrobić aby nowy znak mi działał i starych nie kasować? :)

Autor:  tonygryps [ 1 sie 2021, o 12:36 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Cytuj:
Ale teraz chcę dodać nowy i tutaj pojawia się problem bo
nowy znak zdefiniowany musiałby być \x88 ale nie ma takiej możliwości i program to odczyta jak x80i tym samym w miejsce x80 da mi mój nowy znak a tego niechcę ;)
więc jak to zrobić aby nowy znak mi działał i starych nie kasować?


Chyba nie do końca rozumiesz jak to działa.
funkcja lcd_defchar zapisuje wzór znaku do pamięci cgram wyświetlacza (wyświetlacz ma 8 miejsc na te znaki w swojej pamięci ) pod określony adres który podajesz też w tej funkcji czyli od 0x80 do 0x87 .
Więc jak brakuje Ci tych znaków to masz jedno wyjście zdefiniować sobie znaki w pamięci procka a później w programie wlocie je zapisywać zgodnie z potrzebami do pamięci cgram wyświetlacza.

Autor:  mirekk36 [ 1 sie 2021, o 13:11 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

RadekB86 napisał(a):
więc jak to zrobić aby nowy znak mi działał i starych nie kasować?

Panie, tak jak pisze kolega wyżej, ja krótko tylko podsumuję

MASZ 8 miejsc na własne znaki i ani grosza więcej ;) więc nic nie wymyślisz dla HD44780 ;)

Autor:  RadekB86 [ 1 sie 2021, o 13:15 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Czyli rozumiem że np. tuż przed użyciem w funkcji w której chcę wyświetlić ten znak musiałbym od nowa zapisać ten znak do CGRAM (pamięć LCDka) i dopiero go odczytać...
a czy to nie wpłynie na skrócenie żywotności wyświetlacza?

Autor:  tonygryps [ 1 sie 2021, o 13:43 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Dokładnie tak jak piszesz
Cytuj:
zyli rozumiem że np. tuż przed użyciem w funkcji w której chcę wyświetlić ten znak musiałbym od nowa zapisać ten znak do CGRAM (pamięć LCDka) i dopiero go odczytać...


Cytuj:
a czy to nie wpłynie na skrócenie żywotności wyświetlacza?

Nie bo to nie pamięć eprom tylko cgram.

Autor:  Tom92 [ 2 sie 2021, o 18:03 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

tonygryps napisał(a):
Cytuj:
a czy to nie wpłynie na skrócenie żywotności wyświetlacza?

Nie bo to nie pamięć eprom tylko cgram.


Sorki, że się wtrącę, ale chciałem tylko dopytać czy jest gdzieś określone ile razy można zapisać coś do pamięci eeprom?

Autor:  tonygryps [ 2 sie 2021, o 19:18 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Oczywiście że jest w nocie PDF danego układu (pamięci bądź scalaka który zawiera tą pamięć ). zobacz sobie notę byle jakiej atmegi na początku masz opisane jakie rodzaje i ile pamięci zawiera i ilość możliwych zapisów do tej pamięci.

Autor:  jacekrv1 [ 3 sie 2021, o 23:19 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

RadekB86 napisał(a):
Składnia: [ Pobierz ] [ Ukryj ]
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Z ciekawości zapytam: co kombinujesz pod Froniusa? I dla falownika czy spawarki?

Autor:  RadekB86 [ 4 sie 2021, o 04:50 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Cytuj:
Z ciekawości zapytam: co kombinujesz pod Froniusa? I dla falownika czy spawarki?

Obrazek Dla "spawarki" a właściwie do testowania przycisków uchwytów spawalniczych...

Autor:  jacekrv1 [ 5 sie 2021, o 16:32 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

Wow! Ekstra. Świetnie Ci to Froniusowe F wyszło, prawie jak żywe ;-) Gratulacje!
Pochwalisz się konstrukcją w innym dziale?

Autor:  RadekB86 [ 5 sie 2021, o 17:32 ]
Tytuł:  Re: Gdzie zapisać nowe znaki do LCD gdy CGRAM wykorzystane?

jacekrv1 napisał(a):
Wow! Ekstra. Świetnie Ci to Froniusowe F wyszło, prawie jak żywe ;-)

to akurat najmniejszy problem i w sumie mało ważny ;)


jacekrv1 napisał(a):
Pochwalisz się konstrukcją w innym dziale?

Nie wiem czy jest się czym chwalić... niby wszystko fajnie działa wszystkie kombinacje klawiszy ale nie do końca zgodnie z moimi oczekiwaniami :| chciałem żeby mi pokazywał rezystancję obwodu ale kabel jest jednak dość długą anteną 4,5m x2 więc 9m ;) i prawdopodobnie są zakłócenia i mi to lata trochę i co do dokładności obliczeń rezystancji można dużo dyskutować


temat już niejako poruszałem i są to tematy związane z tym urządzeniem tutaj:
topic20954.html
topic23675.html -schemat układu klawiszy w rączce jednak okazał się inny od tego który przypuszczałem na początku (myślałem że każdy klawisz ma swoje 2 styki
ale po dokładnym przeanalizowaniu połączeń okazało się że jest do drabinka jak w temacie tutaj(tylko w szeregu z rezystorami r7 r8 r9 przyciski):
topic23815.html
i w efekcie musiałem dorobić drabinkę co widać na zdjęciu wyże :lol:

Problemem był dobór rezystancji w drabince tak aby każda kombinacja wciśnięcia klawiszy wywoływała inną wartość ADC dzięki temu wiem kiedy konkretnie i ile przycisków wciskam w tym pomogła mi bardzo ta strona:
http://falstad.com/circuit/
TUTAJ MASZ GOTOWĄ DRABINKĘ JAKĄ ZASTOSOWAŁEM

i własna regulowana drabinka
Obrazek

oGÓLNIE TO NAUCZYŁEM SIĘ przy tym projekciku :? :roll: że najpierw w 100% działający prototyp a potem zamawiamy PCB :lol: Ale tak to jest jak się 1WSZĄ płytkę w chinach zamawia i człowiek nie może się doczekać xD :lol:

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