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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-11-11T22:51:54+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=9192&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-11-11T22:51:54+01:00</updated>
<published>2014-11-11T22:51:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103470#p103470</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103470#p103470"/>
<title type="html"><![CDATA[Re: Ogromny kod, a ja mam 1kB miejsca]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103470#p103470"><![CDATA[
88 bajtów ... no i teraz masz jeszcze cały hektar Flasha na resztę programu <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 lis 2014, o 22:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[teres]]></name></author>
<updated>2014-11-11T22:16:43+01:00</updated>
<published>2014-11-11T22:16:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103466#p103466</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103466#p103466"/>
<title type="html"><![CDATA[Re: Ogromny kod, a ja mam 1kB miejsca]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103466#p103466"><![CDATA[
<strong>Bardzo dziękuję wszystkim za odpowiedzi.</strong><br />@<strong>mirekk36</strong>, na pewno się nie obrażę, tym bardziej, że doczytałem już Twoje wyjaśnienia na forum zalinkowane przez @<strong>jacekk232</strong><br /><br />Ja głównie szukałem pod hasłami &quot;optymalizacja kodu avr&quot; i podobne, włącznie z tym, że doczytałem sobie dokument Atmela opisujący również możliwości zyskania kilku bajtów poprzez wykorzystanie zmiennych odpowiedniego typu.<br /><br />Na obecną chwilę mam:<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">AVR Memory Usage<br />----------------<br />Device: attiny13<br /><br />Program:      88 bytes (8.6% Full)<br />(.text + .data + .bootloader)<br /><br />Data:          0 bytes (0.0% Full)<br />(.data + .bss + .noinit)</div><br /><br /> <img src="https://forum.atnel.pl/images/smilies/icon_cool.gif" alt="8-)" title="Cool" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6619">teres</a> — 11 lis 2014, o 22:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-11-11T21:10:51+01:00</updated>
<published>2014-11-11T21:10:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103451#p103451</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103451#p103451"/>
<title type="html"><![CDATA[Re: Ogromny kod, a ja mam 1kB miejsca]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103451#p103451"><![CDATA[
Nie trzeba nawet daleko szukać bo tu na forum ten problem już kilka razy się przewijał<br /><!-- l --><a class="postlink-local" href="http://forum.atnel.pl/viewtopic.php?t=4840&amp;p=57704" >viewtopic.php?t=4840&amp;p=57704</a><!-- l --><br /><!-- l --><a class="postlink-local" href="http://forum.atnel.pl/viewtopic.php?f=4&amp;t=5550&amp;view=next" >viewtopic.php?f=4&amp;t=5550&amp;view=next</a><!-- l --><br /><!-- l --><a class="postlink-local" href="http://forum.atnel.pl/topic3151.html" >topic3151.html</a><!-- l --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 11 lis 2014, o 21:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-11-11T20:59:43+01:00</updated>
<published>2014-11-11T20:59:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103445#p103445</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103445#p103445"/>
<title type="html"><![CDATA[Re: Ogromny kod, a ja mam 1kB miejsca]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103445#p103445"><![CDATA[
<div class="quotetitle">teres napisał(a):</div><div class="quotecontent"><br />powoduje rozrost do 880 bajtów   Dlaczego<br /></div><br />Bo popełniasz ten sam błąd co setki początkujących, bo nie zajrzałeś do netu z czym to związane a zapewniam cię - że takimi pytaniami internet jest usiany jak dobra kasza skwarkami <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> i nie obrażaj się ... oczywiście bym opisał po raz już chyba 1782-gi dlaczego ale nie muszę - bo koledzy wyżej mnie uprzedzili <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ... pamiętaj tylko, że czasem jak wychodzą takie &quot;kwiatki&quot; to znaczy - że musi być w internecie setki podpowiedzi co źle robisz <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 lis 2014, o 20:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-11-11T19:23:54+01:00</updated>
<published>2014-11-11T19:23:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103428#p103428</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103428#p103428"/>
<title type="html"><![CDATA[Re: Ogromny kod, a ja mam 1kB miejsca]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103428#p103428"><![CDATA[
Jeśli w delay jako argumentu użyjesz zmiennej to kompilator dołączy do projektu biblioteki do obsługi liczb zmiennoprzecinkowych. A obsługa tych liczb, jak sam widzisz, mocno pożera pamięć Flash.<br /><br />Aby to obejść polecam zaprzyjaźnić się z Timerami sprzętowymi i timerami programowymi, które pozwalają wyeliminować delaye.<br /><br />Można też stworzyć sobie własną funkcję opóźniającą np:<br />[syntax=c]void moj_delay(uint16_t value)<br />{<br />while(value--)<br />{<br />_delay_ms(1);<br />}<br />}[/syntax]<br /><br />Jest o tyle dobre, że nie używamy w delayu zmiennych zmiennoprzecinkowych.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 11 lis 2014, o 19:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[teres]]></name></author>
<updated>2014-11-11T19:04:42+01:00</updated>
<published>2014-11-11T19:04:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103419#p103419</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103419#p103419"/>
<title type="html"><![CDATA[Ogromny kod, a ja mam 1kB miejsca]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9192&amp;p=103419#p103419"><![CDATA[
Witam, <br /><br />mam pewną zagwozdkę już na początku prób z językiem C dla AVR. Poniżej prosty kod, w oryginale kompilował się do 72-80 bajtów  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> , po drobnych zmianch kod rozrasta się od razu w okolice &lt;900 bajtów  <img src="https://forum.atnel.pl/images/smilies/icon_e_surprised.gif" alt=":o" title="Zdziwiony" /> \<br />[syntax=c]/*<br /> * ATtiny13 LED Flasher<br /> * File: main.c<br /> */<br /><br />#include &lt;stdlib.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/io.h&gt;<br /><br />int main(void)<br />{<br />    unsigned int msecsDelayPost = 1000;<br /><br />    // Set up Port B pin 4 mode to output<br />    DDRB = 1&lt;&lt;DDB4;<br /><br />    // Set up Port B data to be all low<br />    PORTB = 0;  <br />    while (1) {<br />        // Toggle Port B pin 4 output state<br />        PORTB ^= 1&lt;&lt;PB4;<br /><br />        // Pause a little while<br />        _delay_ms (msecsDelayPost);<br />        #msecsDelayPost--;<br />    }<br /><br />    return 0;<br />}[/syntax]<br />to jest na 72 bajty po kompilacji. Odkomentowanie linijki &quot;msecsDelayPost--;&quot; powoduje rozrost do <strong>880 bajtów</strong>  <img src="https://forum.atnel.pl/images/smilies/icon_evil.gif" alt=":evil:" title="Zły" /> Dlaczego  <img src="https://forum.atnel.pl/images/smilies/icon_question.gif" alt=":?:" title="Znak zapytania" /> <br />Generalnie, to zrobiłem sobie diodę migającą coraz szybciej (dodana pętla for itd.) ale już w tym prostym przykładzie widać o co mi chodzi.<br /><br />Pomożecie?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6619">teres</a> — 11 lis 2014, o 19:04</p><hr />
]]></content>
</entry>
</feed>