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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2019-03-12T21:09:40+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=22071&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2019-03-12T21:09:40+01:00</updated>
<published>2019-03-12T21:09:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217324#p217324</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217324#p217324"/>
<title type="html"><![CDATA[Re: EEprom co źle robie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217324#p217324"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Po zapisie zmiennej tz jako uint16_t i pozniejszym odczycie eprom wyskakują bzdury . Co znów pomieszałem lub przegapiłem???<br /></div><br /><br />To tak jakbyś wsadzał (wciskał na siłę kolanem!) CAŁY BOCHENEK CHLEBA do chlebaka o pojemności połówki chleba ... a później się dziwił, że gdy otwierasz ten mały chlebak to tam siedzi tylko połówka <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ... tzn większość to by się pewnie cieszyła z &quot;połówki&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> zawsze to coś <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 12 mar 2019, o 21:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kaz K]]></name></author>
<updated>2019-03-12T20:58:53+01:00</updated>
<published>2019-03-12T20:58:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217323#p217323</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217323#p217323"/>
<title type="html"><![CDATA[Re: EEprom co źle robie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217323#p217323"><![CDATA[
Dzieki dla kol.xentis już działa.<br />Do kol. Mirka ogladałem już kilka razy i wiem o co biega ale chciałem poprobować pojedynczych zapisów taki moj &quot;osli upór&quot;.<br /><br />Ale za to mam inną zagwóżdkę i jak to wyjaśnię , będe spał spokojnie (no może do prób następnej funkcji ;_) ):<br />Po zapisie zmiennej tz jako uint16_t i pozniejszym odczycie eprom wyskakują bzdury . Co znów pomieszałem lub przegapiłem???<br />[syntax=c]uint16_t tz;  //deklar zmiennych<br />uint8_t hi;<br /><br />uint8_t  EEMEM tt;  //????? czy to prawidłowe dla w/w zmiennej tz<br />uint8_t EEMEM th;<br /><br />while<br />{<br />if( klawi_n(KEY_E) ){ <br />eeprom_write_byte(&amp;tt, tz );   // po takim zapisie i pozniejszym odczycie wypisuje bzdury dla zmiennej tz<br />eeprom_write_byte(&amp;th, hi );<br /><br /><br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20460">Kaz K</a> — 12 mar 2019, o 20:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2019-03-12T20:41:26+01:00</updated>
<published>2019-03-12T20:41:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217322#p217322</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217322#p217322"/>
<title type="html"><![CDATA[Re: EEprom co źle robie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217322#p217322"><![CDATA[
Panowie, UWAGA! ja wiem, że od tego poradnika minęło już sporo czasu:<br /><br /><!-- m --><a class="postlink" href="https://mirekk36.blogspot.com/2012/11/avr-eeprom-struktury-poradnik-do-ksiazek.html" >https://mirekk36.blogspot.com/2012/11/a ... iazek.html</a><!-- m --><br /><br />ale POLECAM go oglądać - bo od niedawna na forum znowu szerzy się <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> taka mikro herezja i niewiedza - jak postępować w przypadku EEPROM'a w prockach AVR i ludziska zaczynają na wzór BASCOMA lubaszne i przaśne zabawy z zapisywaniem pojedynczych bajtów do i z EEPROM'a co jest generalnie bezsensem<br /><br />Na prawdę proponuję obejrzeć ten poradnik składający się z dwóch części, już nie setki ale chyba tysiące osób skorzystało z tego podejścia z powodzeniem - przy okazji rozumiejąc w czym rzecz i ew modyfikując podane przykłady z wykorzystaniem struktur do swoich potrzeb<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 12 mar 2019, o 20:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2019-03-12T20:01:42+01:00</updated>
<published>2019-03-12T20:01:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217320#p217320</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217320#p217320"/>
<title type="html"><![CDATA[Re: EEprom co źle robie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217320#p217320"><![CDATA[
Składnia polecenia zapisującego jest następująca:<br />[syntax=c]void eeprom_write_byte ( uint8_t *  __p, uint8_t  __value ) <br /><br />Write a byte __value to EEPROM address __p.[/syntax]<br />Natomiast ty zrobiłeś jakiś dziwny miks podając jako adres zamiast zmiennej eeprom to zmiennej w ram<br />[syntax=c]eeprom_write_byte(&amp;t1gz, t1gz );[/syntax]<br /><br />a powinno być tak:<br />[syntax=c]eeprom_write_byte(&amp;t1g, t1gz );[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 12 mar 2019, o 20:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[tonygryps]]></name></author>
<updated>2019-03-12T19:38:05+01:00</updated>
<published>2019-03-12T19:38:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217319#p217319</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217319#p217319"/>
<title type="html"><![CDATA[Re: EEprom co źle robie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217319#p217319"><![CDATA[
witam,<br />wydaje mi się że w tych liniach kodu masz błąd<br />[syntax=c]eeprom_write_byte(&amp;t1gz, t1gz );  <br />          eeprom_write_byte(&amp;t1mz, t1mz );[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12014">tonygryps</a> — 12 mar 2019, o 19:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kaz K]]></name></author>
<updated>2019-03-12T19:09:53+01:00</updated>
<published>2019-03-12T19:09:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217318#p217318</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217318#p217318"/>
<title type="html"><![CDATA[EEprom co źle robie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22071&amp;p=217318#p217318"><![CDATA[
Witam znów będe nudził szanownych Kolegów. Co źle robię,  bo po zapisie do eprom i restarcie procka pamieć jest czysta. Coś źle inicjuje czy w złym miejscu. Wiem że można dużo lepiej ale na razie  testuje podstawy funkcji na najprostszych przykładach (muszę zrozumieć jak wszystko działa  <img src="https://forum.atnel.pl/images/smilies/icon_question.gif" alt=":?:" title="Znak zapytania" /> ). Z góry dziekuje za wyrozumiałośc i cierpliwość.<br /> [syntax=c]/*<br /> * main.c<br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;avr/eeprom.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />uint8_t t1gz; /inicj zmiennych<br />uint8_t t1mz;<br />uint8_t t1gw;<br />uint8_t t1mw;<br /><br />uint8_t EEMEM t1g ;<br />uint8_t EEMEM t1m ;<br />uint8_t EEMEM t11g;<br />uint8_t EEMEM t11m ;<br /><br />int main( void ) {<br />  t1gz = eeprom_read_byte(&amp;t1g);  //odczyt z eeprom<br />  t1mz = eeprom_read_byte(&amp;t1m);<br />  t1gw = eeprom_read_byte(&amp;t11g);<br />  t1mw = eeprom_read_byte(&amp;t11m);<br /><br />  while(1) {<br />     ....program w petli....<br /> ..<br /> ..<br />.....ustawiam jakies wartosci zmiennej t1gz i t1mz<br /><br />  if( klawi_n(KEY_E) ){             /zapis do eeprom ustawien<br />  eeprom_write_byte(&amp;t1gz, t1gz );  <br />  eeprom_write_byte(&amp;t1mz, t1mz );<br /> .......<br /> .......<br />  lcd_locate(0,0);<br />  lcd_str_P( PSTR(&quot;zapis danych &quot;));    /komunikat o wykonanym zapisie<br />  _delay_ms(1000);<br />}<br />  }[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20460">Kaz K</a> — 12 mar 2019, o 19:09</p><hr />
]]></content>
</entry>
</feed>