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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2011-11-24T23:00:01+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=46&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-24T23:00:01+01:00</updated>
<published>2011-11-24T23:00:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=468#p468</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=468#p468"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=468#p468"><![CDATA[
Ale dołączenie &lt;avr/io.h&gt; wcale nie jest wymagane tylko wtedy gdy są operacje na jakichś tam portach. To jest podstawowy plik, który zawsze trzeba załączyć jeśli już piszemy jakiś kod. To od niego zależy w ogóle czy kompilator będzie wiedział dla jakiego mikrokontrolera piszemy swój program. Bez tego jest ślepy i głuchy. A kolejną ważną rzeczą poza nazwami portów w tym przypadku było już użycie TYPÓW przez kolegę. A ponieważ typ &quot;uint8_t&quot; nie jest typowym typem czystego języka C, tylko pewnym rozwinięciem i udogodnieniem konkretnej wersji AVR GCC to nie trudno się domyśleć, że chociażby i z tego powodu kompilator musi mieć zainkludowany taki podstawowy plik nagłówkowy. Mam nadzieję, że teraz trochę jaśniej.<br /><br />I jak na drugi raz kolega będzie pisał kod, to sporo problemów tego typu zniknie - bo już zawsze kolega podciągnie ten plik.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 24 lis 2011, o 23:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[żbik]]></name></author>
<updated>2011-11-24T22:48:31+01:00</updated>
<published>2011-11-24T22:48:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=466#p466</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=466#p466"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=466#p466"><![CDATA[
Dzięki za pomoc w rozwiązaniu problemu. Nigdy nie wpadł bym na to, że może chodzić o &lt;avr/io.h&gt;.<br /><br />I w sumie dalej nie wiem dlaczego jest wymagany, skoro w pliku są same deklaracje / definicje, a nie są użyte operacje na portach.<br />Wygląda na to, że muszę jeszcze sporo doczytać.<br /><br />Mam jeszcze pytanie o stringi, ale to w innym temacie..<br /><br />pzdr.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=88">żbik</a> — 24 lis 2011, o 22:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-08T20:43:12+01:00</updated>
<published>2011-11-08T20:43:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=306#p306</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=306#p306"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=306#p306"><![CDATA[
No dostałem maila. Panie kolego żbik <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> otworzyłem ten projekt, chociaż przyznam, że o mało co nie przeżegnałem się lewą nogą <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... (jednak rozumiem początki - sam kiedyś mocno mieszałem, aż za mocno).<br /><br />Szkoda tylko, że kolega nie stosuje się do zasad podanych w książce jeśli chodzi o tworzenie projektów, nazewnictwo plików czy folderów - niestety to pokutuje <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> i będzie jeszcze długo pokutować - jeśli kolega nie przekona się do zasad dobrego programowania.<br /><br />Jeśli potrzeba jakiejś konsultacji w tej sprawie to zapraszam serdecznie na Skype do mnie, akurat tego typu sprawy łatwo naprostować - tylko trzeba chcieć.<br /><br />----------------------------------------<br /><br />WRACAJĄC DO TEMATU:<br /><br />oczywiście winny jest sposób myślenia o którym piszę wyżej a rozwiązanie takie na szybko problemu kolegi sprowadza się do tak banalnej rzeczy, że aż strach. Przecież kolega pisze jakiś plik z rozszerzeniem *.c, jak więc to możliwe, że chce korzystać z typów, z nazw pinów procesora itp nawet kolega w tym pliku nie podciąga <br /><br />N A J W A Ż N I E J S Z E G O    SYSTEMOWEGO PLIKU NAGŁÓWKOWEGO<br /><br />#include &lt;avr/io.h&gt;<br /><br />????? hmmm - toż to nie dziwne, że jeśli brak tego pliku to będzie burza na wiok typu uintx_t - gdyż kompilator nie wie skąd wziąć plik nagłówkowy dla danego procesora i w ogóle dla języka C <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br /><br />Proszę na poważnie rozważyć jeszcze raz:<br /><br />1. jak najszybszą rezygnację z AVR Studio 5 - bo tu wprowadza się kolega w wyższe stany nieświadomości i już w ogóle nie panuje nad projektem.<br /><br />2. działanie w Eclipse zgodnie z zaleceniami - przynajmniej na czas nauki - początków nauki języka C - bo to pomoże koledze mieć kontrolę nad plikami projektu. (ja wiem że wiele osób uważa, że przesadzam - ale proszę to nie jedyny przypadek, że tak się kończą projekty - tzn jakimi błędami. Przecież jak już wiadomo skąd bierze się ten błąd to każdy sobie zda sprawę jakie to niby banalne) no ale żeby do niego dojść to najpierw warto po drodze zapoznawać się z całą hierarchią plików i bibliotek w C. A dzięki Eclipse - poruszanie się pomiędzy nimi to poezja. Szkoda tylko, że niektórzy na siłę robią sobie krzywdę.<br /><br />Dlatego - szczerze zapraszam na Skype do mnie, będzie można zadać parę pytań a ja z chęcią udzielę odpowiedzi i kilku wskazówek, żeby naprowadzić na właściwe tory. To jak kolega już zaskoczy - wtedy dalej będzie już sam swobodnie jechał w tym wagoniku o nazwie C <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />(tylko jeśli ma to być szybka i zwarta konsultacja to na Skype zapraszam wyłącznie z mikrofonem i słuchawkami - bo niestety na pisanie w komunikatorze za dużo czasu schodzi i o wiele trudniej się porozumieć czy coś wytłumaczyć)<br /><br />życzę powodzenia<br /><br />a dla porównania tak wyglądał plik kolegi z tym super tajemniczym błędem:<br /><br />[syntax=c]<br />//#include &lt;string.h&gt;<br /><br />#include &quot;zte.h&quot;<br /><br /><br />void ATD(char c[])<br />{<br />//<br />}<br /><br />void ATH()<br />{<br /><br />//<br />}<br /><br />void CLIP(uint8_t i)<br />{<br />if (i==CLIP_DISABLE)<br />{<br />//Send_AT_COMMAND(&quot;CLIP=0&quot;);<br />}<br />else<br />{<br />//Send_AT_COMMAND(&quot;CLIP=1&quot;);<br />}<br />}[/syntax]<br /><br />a tak wygląda po mojej propozycji obróbki i dodaniu najważniejszego INKLUDA<br /><br />[syntax=c]<br />#include &lt;avr/io.h&gt;   /* TEGO BYŁO BRAK !!! */<br /><br />#include &quot;zte.h&quot;<br /><br />void ATD( char c[] ) {<br />//<br />}<br /><br />void ATH( void ) {<br />//<br />}<br /><br />void CLIP( uint8_t i )  {<br /><br />if (i==CLIP_DISABLE) {<br />//Send_AT_COMMAND(&quot;CLIP=0&quot;);<br />} else  {<br />//Send_AT_COMMAND(&quot;CLIP=1&quot;);<br />}<br />}[/syntax]<br /><br />Proszę wziąć do siebie uważnie wszystkie propozycje poprawek i dokładnie przeanalizować różnice. W końcu chodzi o to żeby także kod był bardziej czytelny prawda ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 8 lis 2011, o 20:43</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[żbik]]></name></author>
<updated>2011-11-08T13:03:01+01:00</updated>
<published>2011-11-08T13:03:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=302#p302</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=302#p302"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=302#p302"><![CDATA[
Ok. Wieczorem podeślę jak wrócę z pracy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=88">żbik</a> — 8 lis 2011, o 13:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-08T12:36:04+01:00</updated>
<published>2011-11-08T12:36:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=301#p301</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=301#p301"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=301#p301"><![CDATA[
Posłuchaj ale ja ten twój kod na żywca wpisałem u siebie do Eclipse. I żadnych takich cudów nie mam. Dlatego twierdzę, że błąd może leżeć jeszcze całkiem gdzie indziej lecz na podstawie takiego wyrywka informacji/kodu programu nie da się tego wprost stwierdzić. Można co najwyżej tylko jak widzisz - przypuszczać i nie trafiać.\<br /><br />Dlatego proponuję jak zwykle - spakuj cały projekt i podeślij mi na maila: <!-- e --><a href="mailto:biuro@atnel.pl">biuro@atnel.pl</a><!-- e --><br /><br />Tylko projekt w Eclipse a nie ten brrrr w kocim AVR Studio 5 <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />Nie ma takiej możliwości żeby to nie działało - a warto dojść co się dzieje, żebyś się nie męczył i nie zniechęcił - a przy okazji nauczył się szukać tego typu błędów <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> — 8 lis 2011, o 12:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[żbik]]></name></author>
<updated>2011-11-08T12:29:26+01:00</updated>
<published>2011-11-08T12:29:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=300#p300</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=300#p300"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=300#p300"><![CDATA[
To chyba nie to.<br />Definicja jest ok:<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />#define CLIP_DISABLE 0<br /></div><br />To samo w eclipse i avrstudio5. Wystarczy, że zmienię uint8_t na char i się kompiluje.<br />Próbowałem już usuwać pliki *.c i *.h tworzyć nowe, albo bez pliku nagłówkowego, z deklaracjami w *.c .<br /><br />Jak pousuwam deklaracje i definicje, to jak chcę na nowo je utworzyć ( po prawidłowej kompilacji kiedy są usunięte ), to po wpisaniu nazwy funkcji intellisense pamięta jakie były ostatnio parametry i podpowiada. Zresztą samą nazwę funkcji też chyba pamięta.<br />Piszę o tym, bo nie wiem czy to może pomóc dojść o co chodzi, ale wątpię, bo nowa nazwa funkcji nic nie zmienia.<br />Dla mnie czary <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=88">żbik</a> — 8 lis 2011, o 12:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-08T07:39:07+01:00</updated>
<published>2011-11-08T07:39:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=297#p297</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=297#p297"/>
<title type="html"><![CDATA[Re: Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=297#p297"><![CDATA[
Kolega lepiej pokaże deklarację swojej stałej dosłownej <strong>CLIP_DISABLE</strong>, bo skoro jest taki komunikat to tam trzeba szukać błędu, gdyż nazwa <strong>CLIP_DISABLE </strong>jest prawdopodobnie źle rozwijana.<br /><br />I tak mi się coś zdaje, że u kolegi ta definicja wygląda mniej więcej tak: (nie istotna tu jest już wartość)<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">#define CLIP_DISABLE 5;</div><br /><br />a pisałem w książce wyraźnie, żeby unikać średników na końcu linii podczas definicji #define <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... bo jeśli tak kolega ma to jak kompilator może się &quot;nie pluć&quot; jak kolega pisze, jeśli grzeczny sługa PREPROCESOR zamienia tą nazwę CLIP_DISABLE tak dla kompilatora:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">if( i == 5; ) .....</div><br /><br />czy kolega jako kompilator też by się nie wkurzył, gdyby ktoś mu podał takie coś do kompilacji ??? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />Zatem błąd może się okazać banalny jeśli jest tak jak przewiduję, zatem definicja powinna zgodnie z regułami podanymi w książce wyglądać tak:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">#define CLIP_DISABLE 5</div><br /><br />Reasumując proszę być spokojnym - tego typu błędy na początku są normalne - i niedługo kolega się ich pozbędzie na zawsze.<br /><br />Chyba że źle przypuszczam - więc proszę pokazać więcej kodu żeby to rozwikłać - czekam na info.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 8 lis 2011, o 07:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[żbik]]></name></author>
<updated>2011-11-07T23:45:48+01:00</updated>
<published>2011-11-07T23:45:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=46&amp;p=294#p294</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=294#p294"/>
<title type="html"><![CDATA[Deklaracja funkcji]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=46&amp;p=294#p294"><![CDATA[
Fajny ten C.<br />Wkurzam się tylko, że zamiast pisać, a właściwie próbować pisać, to mnóstwo czasu tracę na &quot;pierdoły&quot; w stylu zastanawianie się dlaczego kompilator się pluje na taką deklarację i definicję:<br />[syntax=c]void CLIP(uint8_t i);<br />void CLIP(uint8_t i)<br />{<br />if (i==CLIP_DISABLE)<br />{<br />Send_AT_COMMAND(&quot;CLIP=0&quot;);<br />}<br />else<br />{<br />Send_AT_COMMAND(&quot;CLIP=1&quot;);<br />}<br />}[/syntax]<br />błąd:<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Error1expected ')' before 'i'<br /></div><br />No naprawdę nie wiem o co mu chodzi. Jak zmienię parametr z uint8_t na char to już nie ma błędu.<br /><br />Wie ktoś o co biega?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=88">żbik</a> — 7 lis 2011, o 23:45</p><hr />
]]></content>
</entry>
</feed>