<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=20475&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2018-03-26T16:44:52+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=20475&amp;mode</id>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2018-03-26T16:44:52+01:00</updated>
<published>2018-03-26T16:44:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206085#p206085</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206085#p206085"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206085#p206085"><![CDATA[
<div class="quotetitle">dbaran napisał(a):</div><div class="quotecontent"><br />Do mojego nie znalazłem, jedyne co mogłem to szukać jakiegokolwiek datasheet'u. Do mojego, jedyne co znalazłem to rysunek techniczny.<br /></div> Jeśli masz wyświetlacz ze sterownikiem zgodnym z HD44780 to nie musisz szukać datascheet-u od konkretnie tego modelu wyświetlacza (bo takie właśnie zazwyczaj mają tylko rysunek techniczny, ewentualnie specyfikację napięciową bo są wersje na 5V lub 3,3V). Notę potrzebujesz jedynie do drivera czyli do HD44780 a ta np jest tu <a href="https://www.sparkfun.com/datasheets/LCD/HD44780.pdf"  class="postlink">https://www.sparkfun.com/datasheets/LCD/HD44780.pdf</a> - i będzie ona dobra do wyświetlacza 2x16 czy 4x20 bo sterownik jest jeden i ten sam  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br />A do Mirka nie miej żalu. Przy takim ogromie pracy jaką wkłada w przekazywanie wiedzy spotyka się bardzo często z atakami malkontentów i niestety ale wtedy czasem dostaje się komuś kto nie miał złych zamiarów a napisał coś co zabrzmiało dwuznacznie...<br />Nie dalej jak kilka dni temu trafił się taki jeden co to żale swe wylewał, założył kilka kont i próbował mącić... Ech, szkoda gadać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 26 mar 2018, o 16:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[dbaran]]></name></author>
<updated>2018-03-26T11:16:19+01:00</updated>
<published>2018-03-26T11:16:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206069#p206069</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206069#p206069"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206069#p206069"><![CDATA[
Xentis jeszcze raz dzięki za wyjaśnieni. Niestety jak sam autor zaznaczył w książce &quot;jeżeli uda Ci się zdobyć&quot;. Do mojego nie znalazłem, jedyne co mogłem to szukać jakiegokolwiek datasheet'u. Do mojego, jedyne co znalazłem to rysunek techniczny. Z ciekawości poszukam jakiegokolwiek i sprawdzę czy będzie tam gdzieś odpowiedź na moje pytanie. <br /><br /><div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />To napisz i będzie napisane ...<br /></div><br /><br />Napisałem, a raczej dopisałem w książce, w razie gdybym kiedyś znów chciał wrócić i sobie przypomnieć. <br /><br /><div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />I to jest właśnie tragedia wg mnie - jak ktoś bawi się tylko teoretycznie<br /></div><br /><br />Najpierw teoria, później praktyka, takie mam podejście. Czytam rozdział/podrozdział, a później praktykuje. Tutaj miałem wątpliwości, wolałem je wyjaśnić nim wrócę do domu z podróży i będę mógł &quot;pobawić się&quot;. Dobrze, że ktoś bardziej wyrozumiały umiał rozwiać, a raczej potwierdzić moje wątpliwości. <br /><br /><div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />I na koniec - książka nie jest źródłem jakiejś cudownej wszystko mającej biblioteki, która zrobi nie wiadomo co się tobie wydaje ...<br /><br />Ta książka - mówię o Bluebooku ma zmuszać do samodzielnego myślenia, pokazuję drogę jaką można pójść<br /></div><br /><br />Nie traktuję tego jako gotowca, cudownej biblioteki. Gdyby tak było to bym nie zastanawiał się nad działaniem dopóki nie wystąpiłby problem. Byłoby copy/paste i wykorzystywanie. A jak xentis napisał w kodach programu już jest locate, więc pewnie &quot;zapomniałbym o sprawie&quot;.<br /><br /><div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />idź zatem tą drogą zamiast mieć pretensje i zgłaszać co powinno być napisane a co nie ... albo ... albo napisz własną książkę i mówię to bez żadnej złośliwości bo ja przed napisaniem książki nigdy w życiu bym się nie spodziewał, że ja napiszę w życiu jakąś książkę - ale postarałem się ... i się udało - więc ty masz równe szanse.<br /></div><br /><br />Ograniczenia w moim wolnym czasie są na tyle duże, że tworzenie poradników czy pisanie książek nie wchodzą w grę. Dodatkowo jestem osobą &quot;ścisłą&quot; co już sprawia, że pisanie książek raczej nie było by dla mnie odpowiednim zadaniem. Starcza mi, że musiałem pisanie instrukcji dla operatorów na fabryce. <br /><br />Na tym kończę tą dyskusję, bo nie ma ona sensu. Wiem co chciałem się dowiedzieć na chwilę obecną, a dalsze pytania i stwierdzenia to chyba trzeba będzie &quot;1000 razy przemyśleć&quot; ( o ile zdecyduje się takie zadać ), żeby nie były odebrane jako &quot;atak&quot;, bo chyba tak Pan odebrał wpis, że &quot;to powinno być napisane&quot;. Jeżeli tak to źle mnie Pan zrozumiał albo ......<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=16905">dbaran</a> — 26 mar 2018, o 11:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2018-03-25T11:40:32+01:00</updated>
<published>2018-03-25T11:40:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206031#p206031</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206031#p206031"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206031#p206031"><![CDATA[
<div class="quotetitle">dbaran napisał(a):</div><div class="quotecontent"><br />Moim zdaniem powinno to być napisane<br /></div><br />To napisz i będzie napisane ...<br /><br /><div class="quotetitle">dbaran napisał(a):</div><div class="quotecontent"><br />zwłaszcza, że nie każdy czytając książkę, od razu robi testy na procesorze albo sprawdza kody dodane do książki.<br /></div><br />I to jest właśnie tragedia wg mnie - jak ktoś bawi się tylko teoretycznie ... tzn owszem, można bo kto komu zabroni - tyle że ja zawsze mówię, że taka zabawa teoretyczna i działanie na symulatorze to jak lizanie lizaka ale w papierku - wtedy nie czuć smaku <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />I na koniec - książka nie jest źródłem jakiejś cudownej wszystko mającej biblioteki, która zrobi nie wiadomo co się tobie wydaje ...<br /><br />Ta książka - mówię o Bluebooku ma zmuszać do samodzielnego myślenia, pokazuję drogę jaką można pójść  - PRZEDE WSZYSTKIM jak zabierać się samemu za pisanie takiej biblioteki - zaś sam proces pisania biblioteki, który pokazuję w książce ma za zadanie pokazać różne techniki programowania w C ... Nie ma np w tej bibliotece &quot;jak to niektórzy później piszą i narzekają&quot; obsługi wyświetlania liczb bez znaku większych niż zakres int dla AVR i nie ma być - bo pozostawiam pewne zadania dla czytelnika ... <br /><br />Tak więc te osoby, które oczekują że książka BB jest po to aby podać na tacy jakąś cudowną bibliotekę - popełniają błąd i to dość bzdurny błąd ... nie oczekuj tylko włóż troszkę własnego wysiłku w poznanie sterownika HD44780 i napisz jeszcze lepszą własną bibliotekę do obsługi LCD - <strong><span style="color: #0080FF">TO JEST MOIM CELEM JAKO AUTORA KSIĄŻKI</span></strong> panie kochany .... i podpowiem ci, że takie podejście do dydaktyki sprawdza się ZNAKOMICIE ... oczywiście w stosunku do tych osób które chcą się czegoś nauczyć a nie oczekują cudownego gotowca....<br /><br />to nie kto inny jak użytkownik naszego forum - zamiast oczekiwać gotowca stworzył TAKI OTO PORADNIK:<br /><br /><div style="width: 583px; height: 471px; margin: 0 auto; padding-left: 26px; padding-top: 48px; background: url('https://www.atnel.pl/download/atnel_tv.png') no-repeat;"> <strong>iframe</strong> </div><br /><br />idź zatem tą drogą zamiast mieć pretensje i zgłaszać co powinno być napisane a co nie ... albo ... albo napisz własną książkę i mówię to bez żadnej złośliwości bo ja przed napisaniem książki nigdy w życiu bym się nie spodziewał, że ja napiszę w życiu jakąś książkę - ale postarałem się ... i się udało - więc ty masz równe szanse.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 25 mar 2018, o 11:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2018-03-25T11:49:09+01:00</updated>
<published>2018-03-25T11:40:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206030#p206030</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206030#p206030"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206030#p206030"><![CDATA[
No może i mogło by być napisane, ale zauważ że Mirek stara się wpoić również naturalny odruch sięgania po noty aplikacyjne klocków elektronicznych z których korzystasz (bo co dziwne bardzo dużo osób unika tego jak ognia, owszem są po angielsku - czasem po chińsku - ale czasy w których trzeba było siedzieć ze słownikiem w dłoni już przeminęły. Tera można wejść np na stronkę <!-- m --><a class="postlink" href="https://translate.google.pl/" >https://translate.google.pl/</a><!-- m --> i przetłumaczyć duże fragmenty tekstu, ba nawet cały dokument. Fakt, tłumaczenie nie będzie idealne bo to język techniczny ale do zrozumienia zazwyczaj wystarcza). Więc może i jest to niedopatrzenie, a może mała zachęta do poszerzania horyzontów...<br />Druga rzecz to książka jest o nauce programowania w C na &quot;przykładzie avr-ów&quot; więc znajomość hardware jest niejako wysoce wskazana. Dla tego Mirek stworzył wiele dodatkowych kanałów informacyjnych wspomagających wiedzę z książek: <br />kanał no youtube z wieloma treściwymi poradnikami <a href="https://www.youtube.com/channel/UC9helAwUtau_y4qyTcSR4Tg"  class="postlink">https://www.youtube.com/channel/UC9helAwUtau_y4qyTcSR4Tg</a>,<br />nawet napisał program dla wygodniejszego oglądania poradników z możliwością tagowania fragmentów <a href="http://www.atnel.pl/atnel-video-player.html"  class="postlink">http://www.atnel.pl/atnel-video-player.html</a><br />blog <a href="http://mirekk36.blogspot.com/"  class="postlink">http://mirekk36.blogspot.com/</a><br />i to zacne forum  <img src="https://forum.atnel.pl/images/smilies/icon_cool.gif" alt="8-)" title="Cool" />;<br />wszystko udostępnione za darmo nawet dla tych co książek nie zakupili.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 25 mar 2018, o 11:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[dbaran]]></name></author>
<updated>2018-03-25T11:04:54+01:00</updated>
<published>2018-03-25T11:04:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206028#p206028</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206028#p206028"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206028#p206028"><![CDATA[
W kodzie jest, ale jeżeli jest ktoś tak mało domyślny jak ja <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> to może nie skojarzyć, że &quot;locate&quot; jest również po to, aby przesłać do wyświetlacza informację, że teraz kończę zapisywanie w CGRAM, a zaczynam normalne wyświetlanie. Bardziej bym pomyślał, że jest to po to, aby napis wyświetlić tam, gdzie chcemy, a nie tam gdzie pozostał kursor po poprzednim wyświetlaniu. Moim zdaniem powinno to być napisane ( tak jak to wyjaśniłeś wyżej ), zwłaszcza, że nie każdy czytając książkę, od razu robi testy na procesorze albo sprawdza kody dodane do książki. Jeszcze raz dziękuję za wyjaśnienie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=16905">dbaran</a> — 25 mar 2018, o 11:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2018-03-24T22:19:51+01:00</updated>
<published>2018-03-24T22:19:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206020#p206020</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206020#p206020"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206020#p206020"><![CDATA[
Tak zgadza się, powinna tam się znaleźć funkcja lcd_locate(), ale jak już zajrzysz do kodów źródłowych ćwiczenia, to tam jest to zrobione tak jak być powinno.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 24 mar 2018, o 22:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[dbaran]]></name></author>
<updated>2018-03-24T18:52:56+01:00</updated>
<published>2018-03-24T18:52:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206015#p206015</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206015#p206015"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206015#p206015"><![CDATA[
Dzięki za wyjaśnienie, choć to by oznaczało, że w książce jest &quot;skrót myślowy&quot; albo ja jestem taki mało domyślny. Bo na stronie 234 jest przykład definicji znaki z różnych pamięci, a później ładnie lcd_str. W międzyczasie nie ma żadnej komendy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=16905">dbaran</a> — 24 mar 2018, o 18:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2018-03-24T18:33:01+01:00</updated>
<published>2018-03-24T18:33:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206014#p206014</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206014#p206014"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=206014#p206014"><![CDATA[
Musisz zrozumieć jedną rzecz. Jeśli zapisujesz komendę wyboru adresu CGRAM to ustawiasz sterownik na zapis na tę pamięć od adresu który ustawiłeś. I teraz wszystkie dane jakie nadlecą będą zapisywane w kolejnych komórkach pamięć CGRAM - obojętnie jaka to będzie ilość. Więc gdy po komendzie ustawienia adresu CGRAM wyślesz 5 bajtów znaku a następnie użyjesz lcd_str() to niestety ale bajty przekazane do tej funkcji wylądują również w kolejnych komórkach pamięci CGRAM. Widzisz funkcja lcd_str() została napisana tak by wysyłać znaki na wyświetlacz ale, aby to zrobić najpierw powinieneś ustawić pozycję gdzie mają się te znaki pojawić czyli użyć funkcji lcd_locate() - ta funkcja wysyła komendę do wyświetlacza ustawiającą adres w pamięci DDRAM czyli wybiera zapis do tej pamięci i jednocześnie od której komórki mają być zapisywane znaki. Od tego momentu wszystkie dane które nadlecą będą traktowane jako znaki do wyświetlenia w kolejnej pozycji wyświetlacza (adres komórki pamięci jest automatycznie inkrementowany po zapisie bajtu).<br />Sterownik nie liczy ilości danych które są zapisywane do poszczególnych pamięci, nie ma też zdefiniowanych ilości jakie powinny zostać zapisane po danej komendzie. Poprostu dopóki nie wyślesz nowej komendy zmieniającej stan rzeczy sterownik wykonuje ostatnią funkcję, czyli jeśli po zapisie definicji znaku do CGRAM nie zrobisz lcd_locate() dane będą cały czas upychane do CGRAM w kółko (licznik adresu będzie się zapętlał czyli po osiągnięciu max zacznie od 0).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 24 mar 2018, o 18:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[dbaran]]></name></author>
<updated>2018-03-24T10:46:14+01:00</updated>
<published>2018-03-24T10:46:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205996#p205996</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205996#p205996"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205996#p205996"><![CDATA[
No i tutaj pojawiają się moje wątpliwości. <br />Bo schemat jest taki: <br />CLR_RS<br />Wysyłam komende &quot;adres Pamięci CGRAM&quot;<br />SET_RS<br />Wysyłam 5 bajtów - wysyłanie danych <br />Wysyłam łańcuch znaków - wysyłanie danych<br /><br />Pomiędzy wysyłaniem 5 bajtów, a łańcuchem znaków, nie ma żadnej komendy. Czyli RS jest cały czas na 1. <br />Chyba, że źle rozumuję i powinno się coś dać przed lcd_str().<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=16905">dbaran</a> — 24 mar 2018, o 10:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2018-03-23T23:01:59+01:00</updated>
<published>2018-03-23T23:01:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205993#p205993</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205993#p205993"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205993#p205993"><![CDATA[
Fakt, źle spojrzałem i mój błąd  <img src="https://forum.atnel.pl/images/smilies/icon_rolleyes.gif" alt=":roll:" title="Udaje, że to nie on" /> . W takim razie sterownik zapewne przerwie zapis do CGRAM i wykona komendę zgodną z tym co zostanie wysłane gdy RS będzie w stanie niskim. Ale to też oznacza tyle że jeśli w danym bloku był już jakiś znak to jego fragment zostanie (ten nienadpisany).<br />Generalnie sprawa jest dosyć prosta sterownik wykonuje komendy a te podajemy gdy RS jest w stanie niskim. Gdy RS jest w stanie wysokim sterownik traktuje je jako dane dla komendy którą wcześniej dostał. Czyli biorąc Twój przypadek w drugą stronę tzn wydłużając pętlę for o kilka obiegów. Sterownik nie wykryje żadnej nieprawidłowości ponieważ nie dostał nowej komendy, a tylko kolejne dany, więc poprostu zinkrementuje licznik adresu i zapisze kolejne dane w następnych komórkach pamięci czyli nadpisze bajty kolejnego znaku.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 23 mar 2018, o 23:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[dbaran]]></name></author>
<updated>2018-03-23T22:31:43+01:00</updated>
<published>2018-03-23T22:31:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205991#p205991</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205991#p205991"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205991#p205991"><![CDATA[
<div class="quotetitle">xentis napisał(a):</div><div class="quotecontent"><br />Przy próbie skorzystania z lcd_str() jak i z innych funkcji wysłania danych jako znaki do wyświetlenia, sterownik zapewne zachowa się prawidłowo bo musisz zmienić linię RS na stan wysoki.<br /></div><br /><br />W obu przypadkach będzie zmiana/ustawienie sygnału RS. <br /><br />lcd_defchar -&gt; lcd_write_data -&gt;SET_RS; -&gt; _lcd_write_byte<br /><br />lcd_str -&gt; lcd_char -&gt; lcd_write_data -&gt;SET_RS; -&gt; _lcd_write_byte<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=16905">dbaran</a> — 23 mar 2018, o 22:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2018-03-23T22:03:54+01:00</updated>
<published>2018-03-23T22:03:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205988#p205988</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205988#p205988"/>
<title type="html"><![CDATA[Re: Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205988#p205988"><![CDATA[
Przy próbie skorzystania z lcd_str() jak i z innych funkcji wysłania danych jako znaki do wyświetlenia, sterownik zapewne zachowa się prawidłowo bo musisz zmienić linię RS na stan wysoki (ale na żywo tego nie sprawdzałem więc to teoria). Natomiast jeśli po wysłaniu 5 bajtów spróbował byś wysłać inną komendę sterującą to zapewne 3 bajty nadane zaraz po tamtych pięciu wylądowały by w CGRAM.<br /><br />PS na forum nie umieszczamy żadnych kodów bibliotecznych z Mirka książek! Większość aktywnych forumowiczów posiada zarówno książki jak i dołączone do nich kody więc wystarczy jak podasz z jakiego działu i jaka funkcja.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 23 mar 2018, o 22:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[dbaran]]></name></author>
<updated>2018-03-23T21:42:10+01:00</updated>
<published>2018-03-23T21:42:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205987#p205987</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205987#p205987"/>
<title type="html"><![CDATA[Zapis znaków do CGRAM w LCD]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20475&amp;p=205987#p205987"><![CDATA[
Witam<br />Chciałbym się dopytać/potwierdzić swoje przypuszczenia na temat zapisu znaków do pamięci CGRAM w wyświetlaczu LCD z kontrolerem HD44780. <br />Chodzi mi o funkcje: <br /><br />[syntax=c]void lcd_defchar(uint8_t nr, uint8_t *def_znak)<br />{<br />register uint8_t i,c;<br />lcd_write_cmd( 64+((nr&amp;0x07)*8) );<br />for(i=0;i&lt;8;i++)<br />{<br />c = *(def_znak++);<br />lcd_write_data(c);<br />}<br />}<br />#endif[/syntax]<br /><br />Jest tutaj komenda ustawienia adresu CGRAM, a następnie wysłanie do LCD 8 bajtów definiujących znak. <br />Pytanie czy, gdyby zrobić pętlę z mniejszą ilością powtórzeń to by również poprawnie funkcjonowało ? <br />Chodzi mi o przypadek, że np. wysyłam komendę do ustawienia adresu CGRAM zapisuję element zdefiniowany 5 bajtami. Następnie chce wysłać już normalny napis za pomocą lcd_str() do wyświetlenia na wyświetlaczu. <br />Czy 3 bajty z tego napisu będą zapisane do CGRAM bo kontroler spodziewa się 8 bajtów. Podobnie jak trzeba odczytać cały bajt BF, bo kontroler na siłę wysyła całość mimo, że &quot;nam&quot; potrzebny jest tylko starsza część.<br />Pytanie czysto teoretyczne. Od razu mówię, że nie mam przy sobie układu do testów, żeby sprawdzić co się stanie, a chciałbym rozwiać wątpliwości.<br />Pytam, bo nie widzę nic co &quot;dało by znać&quot; do kontrolera, że wysyłanie definicji znaku zostało zakończone, teraz już dane do wyświetlania będą wysyłane.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=16905">dbaran</a> — 23 mar 2018, o 21:42</p><hr />
]]></content>
</entry>
</feed>