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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-08-16T15:20:23+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=3881&amp;mode</id>
<entry>
<author><name><![CDATA[robert]]></name></author>
<updated>2013-08-16T15:20:23+01:00</updated>
<published>2013-08-16T15:20:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45913#p45913</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45913#p45913"/>
<title type="html"><![CDATA[Re: Problem z wywoływaniem funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45913#p45913"><![CDATA[
EUREKA! znalazłem odpowiedź na swoje pytanie - przyczyna leży gdzie indziej. ATmega128 ma fusebit M103C &quot;ATmega103<br />Compatibility Mode&quot;, wystarczy go skasować i procesor zaczyna być posłuszny. Dzięki BARTB za dobre chęci.<br />Przy okazji Mirku wielkie dzięki za mk AVR Calculator !<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=631">robert</a> — 16 sie 2013, o 15:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[BARTB]]></name></author>
<updated>2013-08-16T14:43:37+01:00</updated>
<published>2013-08-16T14:43:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45911#p45911</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45911#p45911"/>
<title type="html"><![CDATA[Re: Problem z wywoływaniem funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45911#p45911"><![CDATA[
funkcja jest zadeklarowana jako void, a w jej ciele masz return; - więc tu masz na pewno błąd.<br /><br />czas trwania twojego impulsu zależny jest tak na prawdę od taktowania procesora i ilości instrukcji składających się na wykonanie operacji PORTC = 0b00010000; dużo zależy tutaj od kompilatora i sposobu w jaki zamienia kod w C na język maszynowy.<br />ale zastanawia mnie również dlaczego kolejne skoki do twojej funkcji wykonują się co ~2ms. <br />Spróbuj dać jakieś staromodne _delay_us() i wtedy sprawdź czy czas między kolejnymi wywołaniami funkcji się zmienia.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1542">BARTB</a> — 16 sie 2013, o 14:43</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[robert]]></name></author>
<updated>2013-08-16T13:55:27+01:00</updated>
<published>2013-08-16T13:55:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45902#p45902</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45902#p45902"/>
<title type="html"><![CDATA[Problem z wywoływaniem funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3881&amp;p=45902#p45902"><![CDATA[
Witajcie koledzy,<br /><br />jestem początkującym &quot;programistą&quot; z jakimś tam doświadczeniem hardware'owym. Zrobiłem układ z ATmega128 (16MHz) z wyświetlaczem LCD TFT 5,7&quot; i mam marzenie aby opanowując go nauczyć się programowania w C. Właśnie zainstalowałem Eclipse Indigo, programator USBASP, do którego podłączyłem moją płytkę i wygląda na to, że potrafię zaprogramować procesor bo na jego nóżce PC4 obserwuję przebieg. Spodziewałem się ciągu impulsów dodatnich o czasie trwania ok. 60ns powtarzanych co kilkaset ns. Jednak obserwuję odstęp między impulsami ok 2,1 ms.<br />Wiem, że popełniam jakiś fundamentalny błąd związany z wykonywaniem funkcji impuls, bo jeśli jej zawartość (linie 18 i 19 kodu) wstawię w miejsce jej wywołania (linia 11) to otrzymam żądany przebieg. Czy mógłby ktoś mi pomóc ?<br /><br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br /><br />void impuls (void);<br /><br />int main (void)<br />{<br />DDRC = 0b00010000;<br /><br />while(1)<br />{<br />impuls ();<br />}<br />}<br /><br /><br />void impuls (void)<br />{<br />PORTC = 0b00010000;<br />PORTC = 0b00000000;<br />return;<br />}[/syntax][syntax=c][/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=631">robert</a> — 16 sie 2013, o 13:55</p><hr />
]]></content>
</entry>
</feed>