<?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=58&amp;t=19844&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-12-22T20:44:50+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=58&amp;t=19844&amp;mode</id>
<entry>
<author><name><![CDATA[Robert_1967]]></name></author>
<updated>2017-12-22T20:44:50+01:00</updated>
<published>2017-12-22T20:44:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200975#p200975</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200975#p200975"/>
<title type="html"><![CDATA[Re: Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200975#p200975"><![CDATA[
Dziękuję kolegom za pomoc.<br />Kawał materiału do przestudiowania. Szczerze gratuluję posiadanej wiedzy.<br />Zdrowych i Wesołych Świąt i Szczęśliwego Nowego Roku dla wszystkich pozytywnie zakręconych w C  <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> .<br /><br /><br />Dodam jeszcze, że przejrzałem moje wcześniejsze tematy i znalazłem, że przecież dambo pokazał zastosowanie wskaźników w podobnym przypadku<br /><a href="http://forum.atnel.pl/topic19715.html"  class="postlink">http://forum.atnel.pl/topic19715.html</a><br />Ponad to znalazłem ciekawy opis Mirka <a href="http://mirekk36.blogspot.com/2013/11/tablica-wskaznikow-we-flash-progmem.html"  class="postlink">http://mirekk36.blogspot.com/2013/11/tablica-wskaznikow-we-flash-progmem.html</a><br /><br />Pozdrawiam.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10257">Robert_1967</a> — 22 gru 2017, o 20:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[andrews]]></name></author>
<updated>2017-12-22T20:02:52+01:00</updated>
<published>2017-12-22T20:02:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200974#p200974</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200974#p200974"/>
<title type="html"><![CDATA[Re: Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200974#p200974"><![CDATA[
Zajrzałeś chociaż tam, gdzie proponowałem wcześniej?<br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Między innymi <a href="http://forum.atnel.pl/topic19149.html#p194736"  class="postlink"><strong>tutaj</strong></a> masz przykłady, jak to zrobić.<br /></div><br />Masz tam przykład, jak zdefiniować ciągi znaków we FLASH, a później tablicę wskaźników do tych ciągów (także we FLASH, żeby nie zajmować pamięci RAM).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14165">andrews</a> — 22 gru 2017, o 20:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Robert_1967]]></name></author>
<updated>2017-12-22T19:49:01+01:00</updated>
<published>2017-12-22T19:49:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200972#p200972</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200972#p200972"/>
<title type="html"><![CDATA[Re: Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200972#p200972"><![CDATA[
Wielkie dzięki kolegom za odpowiedź<br /><br />Tak myślałem, że te teksty wepchane do struktury, to jakaś herezja, dla tego nie mogłem za bardzo nic znaleźć na ten temat, a tak sobie &quot;umyśliłem&quot;.<br />Chciałem pokombinować ze strukturami na przykładzie właśnie tekstów. W takim razie przerobiłem kod. To tak tylko na teraz, ponieważ raczej dane będą<br />zmieniane i flash się nie nada. Czytałem BB, ale jak bym mógł od kolegów zobaczyć, jak tutaj zastosować wskaźniki do wyświetlania tekstów na lcd np. według<br />Was. Każdy ma własne spojrzenie na jakiś temat.<br /><br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />//#include &lt;util/delay.h&gt;<br />#include &quot;LCD/lcd44780.h&quot;<br /><br /><br />const char PROGMEM text_1 &#91;&#93; = {&quot; text_do_wysw. nr1  &quot;};<br />const char PROGMEM text_2 &#91;&#93; = {&quot; text_do_wysw. nr2  &quot;};<br />const char PROGMEM text_3 &#91;&#93; = {&quot; text_do_wysw. nr3  &quot;};<br />const char PROGMEM text_4 &#91;&#93; = {&quot; text_do_wysw. nr4  &quot;};<br />const char PROGMEM text_5 &#91;&#93; = {&quot; text_do_wysw. nr5  &quot;};<br />const char PROGMEM text_6 &#91;&#93; = {&quot; text_do_wysw. nr6  &quot;};<br /><br /><br />int main(void)<br />{<br /><br /><br />lcd_init();// inicjalizacja wyswietlacza<br />lcd_cls();<br /><br /><br />while(1)<br />{<br />lcd_locate(0, 0);<br />lcd_str_P(text_1);<br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10257">Robert_1967</a> — 22 gru 2017, o 19:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[andrews]]></name></author>
<updated>2017-12-22T19:23:48+01:00</updated>
<published>2017-12-22T19:23:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200971#p200971</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200971#p200971"/>
<title type="html"><![CDATA[Re: Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200971#p200971"><![CDATA[
<div class="quotetitle">janusz17 napisał(a):</div><div class="quotecontent"><br />Ale tak nawiasem, to nie rozumiem jaki jest cel upychania tablic do struktury.<br /></div><br />Jeśli tablica znaków jest we FLASH, a struktura w RAM, to nawet nie da się tego inaczej zrobić jak poprzez wskaźnik.<br /><br />Jeśli jedno i drugie jest w tej samej pamięci, umieszczenie tablicy wewnątrz struktury oszczędza dwa bajty pamięci na wskaźnik (może być szczególnie istotne w przypadku użycia pamięci RAM). Trzeba tylko uważać, żeby takiej struktury nie przekazywać do funkcji poprzez wartość, bo to może spowodować problemy, głównie w mikrokontrolerach z małą pojemnością RAM.<br /><br />Druga sprawa - jeśli tablica znaków jest w trakcie programu modyfikowana, to nie może być w pamięci FLASH.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14165">andrews</a> — 22 gru 2017, o 19:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[janusz17]]></name></author>
<updated>2017-12-22T19:11:34+01:00</updated>
<published>2017-12-22T19:11:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200969#p200969</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200969#p200969"/>
<title type="html"><![CDATA[Re: Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200969#p200969"><![CDATA[
Nie zainicjalizowałeś tych tablic w strukturze, to niby co miało by się wyświetlać? Ale tak nawiasem, to nie rozumiem jaki jest cel upychania tablic do struktury. Moim zdaniem lepiej jest zadeklarować tablice z odpowiednimi napisami i to najlepiej w pamięci FLASH a następnie zrobić tablicę wskaźników do tych tablic z tekstami.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1226">janusz17</a> — 22 gru 2017, o 19:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[andrews]]></name></author>
<updated>2017-12-22T19:02:11+01:00</updated>
<published>2017-12-22T19:02:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200968#p200968</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200968#p200968"/>
<title type="html"><![CDATA[Re: Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200968#p200968"><![CDATA[
Jeśli dobrze widzę Twój text ma 20 znaków, więc musisz w tablicy zarezerwować dla niego 21 znaków, bo każdy ciąg znaków w języku C musi mieć na końcu znak terminujący (dołączany zwykle automatycznie przez kompilator np. w przypadku zdefiniowania tablicy znaków <strong><em>char text_1[] = &quot;text1&quot;;</em></strong>).<br /><br /><div class="quotetitle">Robert_1967 napisał(a):</div><div class="quotecontent"><br />To jest oczywiste, no bo niby co ma wyświetlać.<br /></div><br /><br />To dlaczego nie zainicjujesz struktury:[syntax=c]typedef struct<br />{<br />        char text_1&#91;21&#93;;<br />        char text_2&#91;21&#93;;<br />        char text_3&#91;21&#93;;<br />        char text_4&#91;21&#93;;<br />        char text_5&#91;21&#93;;<br />        char text_6&#91;21&#93;;<br />} TTEXTY;<br /> <br /> <br />TTEXTY texty = {<br />    &quot; text_do_wysw. nr1  &quot;,<br />    &quot; text_do_wysw. nr2  &quot;,<br />    &quot; text_do_wysw. nr3  &quot;,<br />    &quot; text_do_wysw. nr4  &quot;,<br />    &quot; text_do_wysw. nr5  &quot;,<br />    &quot; text_do_wysw. nr6  &quot;<br />};[/syntax]<br /><br />No i na koniec, jeśli tablica znaków zawierająca tekst nie zmienia zawartości podczas działania programu, lepiej umieścić ją w pamięci FLASH, bo pamięci RAM w 8-bitowych AVRach nie ma zbyt wiele. Między innymi <a href="http://forum.atnel.pl/topic19149.html#p194736"  class="postlink"><strong>tutaj</strong></a> masz przykłady, jak to zrobić.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14165">andrews</a> — 22 gru 2017, o 19:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Robert_1967]]></name></author>
<updated>2017-12-22T17:49:04+01:00</updated>
<published>2017-12-22T17:49:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200963#p200963</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200963#p200963"/>
<title type="html"><![CDATA[Struktury-wyświetlanie tekstów.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19844&amp;p=200963#p200963"><![CDATA[
Witam.<br />Chciałem ponownie podejść do struktur, ponieważ w niektórych sytuacjach jakoś sobie radzę, ale chciałem przećwiczyć sobie tablice tekstowe w powiązaniu<br />ze strukturami i mi nie wychodzi. Czasem zmiana tematu na inny i powrót po jakimś czasie pomaga, ale coś nie czaję. Napisałem kawałek kodu do wyświetlania<br />dowolnych tekstów. Oczywiście w strukturze będą inne zmienne różnych typów, ale chodzi mi o teksty. Programik wygląda następująco i się kompiluje, ale<br />na lcd nic się nie wyświetla. To jest oczywiste, no bo niby co ma wyświetlać. Pytanie, czy dobrze zacząłem (kompilacja na tym etapie ok), czy tak się robi i jak<br />dalej postępować. Wiem, że przygotowania do świąt itd..., ale może ktoś przegląda forum i zechce coś dołożyć od siebie.<br /><br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />//#include &lt;util/delay.h&gt;<br />#include &quot;LCD/lcd44780.h&quot;<br /><br />//char text_1&#91;20&#93; = &quot; text_do_wysw. nr1  &quot;;<br />//char text_2&#91;20&#93; = &quot; text_do_wysw. nr2  &quot;;<br />//char text_3&#91;20&#93; = &quot; text_do_wysw. nr3  &quot;;<br />//char text_4&#91;20&#93; = &quot; text_do_wysw. nr4  &quot;;<br />//char text_5&#91;20&#93; = &quot; text_do_wysw. nr5  &quot;;<br />//char text_6&#91;20&#93; = &quot; text_do_wysw. nr6  &quot;;<br /><br /><br />typedef struct<br />{<br />char text_1&#91;20&#93;;<br />char text_2&#91;20&#93;;<br />char text_3&#91;20&#93;;<br />char text_4&#91;20&#93;;<br />char text_5&#91;20&#93;;<br />char text_6&#91;20&#93;;<br /><br />}TTEXTY;<br /><br /><br />TTEXTY texty;<br /><br /><br />int main(void)<br />{<br />lcd_init();// inicjalizacja wyswietlacza<br />lcd_cls();<br /><br /><br /><br />while(1)<br />{<br />//lcd_locate(0, 0);<br />//lcd_str(text_1);<br /><br />lcd_locate(0, 0);<br />lcd_str(texty.text_1);<br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10257">Robert_1967</a> — 22 gru 2017, o 17:49</p><hr />
]]></content>
</entry>
</feed>