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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-01-22T21:39:58+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=5637&amp;mode</id>
<entry>
<author><name><![CDATA[janeczqu]]></name></author>
<updated>2014-01-22T21:39:58+01:00</updated>
<published>2014-01-22T21:39:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66236#p66236</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66236#p66236"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66236#p66236"><![CDATA[
zobaczcie uniwersalny soft do UARTu Antystatycznego, może coś was natchnie <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=823">janeczqu</a> — 22 sty 2014, o 21:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jp_elek]]></name></author>
<updated>2014-01-22T16:31:22+01:00</updated>
<published>2014-01-22T16:31:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66167#p66167</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66167#p66167"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66167#p66167"><![CDATA[
Skompiluje , skompiluje , a nawet przytnie na wymiar..<br /> Przynajmniej po kilkunastu próbach na początek.<br /><br />w odpowiedzi na Twoje pytanie : rzecz jasna , tak sklejoną nazwę , a precyzyjnie jej człony ,<br />wykorzystujemy we wszystkim co dotyczy timera , zatem i przy inicjowaniu timera ,<br />przy pinach - jeśli wykorzystujemy , i w przerwaniu (-ach) itd.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=809">jp_elek</a> — 22 sty 2014, o 16:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Paul Dirac]]></name></author>
<updated>2014-01-22T15:08:03+01:00</updated>
<published>2014-01-22T15:08:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66164#p66164</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66164#p66164"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66164#p66164"><![CDATA[
W sumie pomsył ciekawy, ale czy sie przez sklejanie skompiluje i będzie poprawnie działać, no nie wiem. Zresztą jak niby kompilator będzie wiedział, że skonfigurował ten timer?<br />bo jeśli dobrze pamiętam najpeirw jest konfigurowanie timera i właczenie all przerwań, więc musiłąbyś all skonfigurówac, ale jak właczysz TIMSK czy coś tam, to kompilator za krzyczy, nima nigdzie obłsugi przerwania z nazwą wektora. <br /><br />Moim zdaniem za bardzo polecialeś z fantazja, może kiedyś mikrokonroler będzie miał funckjonalność, w której sam sobie stworzysz przerwanie, oprogramujesz, nazwiesz i co ci tam w duszy gra.<br /><br />ISR &lt;PAUL_DIRAC_vect &gt;<br />{<br />      szalony dzień = dzisiaj;<br />      skoro dzisiaj to .....<br />}<br /><br />Może kiedyś będziemy pisać wierszem w c2035.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1035">Paul Dirac</a> — 22 sty 2014, o 15:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[perlon]]></name></author>
<updated>2014-01-22T14:21:59+01:00</updated>
<published>2014-01-22T14:21:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66160#p66160</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66160#p66160"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66160#p66160"><![CDATA[
Dzięki za zwrócenie uwagi. Poprawiłem tego PREFIX'a. <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=382">perlon</a> — 22 sty 2014, o 14:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jp_elek]]></name></author>
<updated>2014-01-22T12:31:54+01:00</updated>
<published>2014-01-22T12:31:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66149#p66149</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66149#p66149"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66149#p66149"><![CDATA[
Dzięki ,<br /><strong>@perlon</strong><br />Pierwsza wersja , działa zawsze, druga niekoniecznie - ale z powodów innych niż, niewłaściwy pomysł,<br />( gdy już wcześniej w pliku io.h ktoś zabawiał się w automatyzację opisu wektorów przerwań ;<br /> wtedy może zgłosić błąd polegający na próbie  redefinicji symbolu, rzecz jednak nie dotyczy tematu wprost , zatem obydwie wersje są Ok, poza literówką &quot;PREFIX&quot;)<br /><br />ps. miło uzyskać pomoc od &quot;krajana&quot; , Jawor - Legnica to &quot;rzut beretem  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />J.P.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=809">jp_elek</a> — 22 sty 2014, o 12:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[perlon]]></name></author>
<updated>2014-01-22T14:20:50+01:00</updated>
<published>2014-01-21T23:44:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66125#p66125</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66125#p66125"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66125#p66125"><![CDATA[
Mi się poprawnie skompilowało takie coś:<br />[syntax=c]#define PREFIXTIMER<br />#define NUMBER0<br />#define BODY_OVF_<br />#define SUFFIXvect<br /><br />#define WEKTOR(w,x,y,z)SWEKTOR(w,x,y,z)<br />#define SWEKTOR(w,x,y,z)(w##x##y##z)<br /><br />ISR(WEKTOR(PREFIX,NUMBER,BODY,SUFFIX)){<br />// obsługa przerwania<br />}[/syntax]<br /><br />To samo krócej<br />[syntax=c]#define NUMBER0<br />#define BODYOVF<br /><br />#define WEKTOR(x,y)SWEKTOR(x,y)<br />#define SWEKTOR(x,y)(TIMER##x##_##y##_vect)<br /><br />ISR(WEKTOR(NUMBER,BODY)){<br />// obsługa przerwania<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=382">perlon</a> — 21 sty 2014, o 23:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jp_elek]]></name></author>
<updated>2014-01-21T22:41:29+01:00</updated>
<published>2014-01-21T22:41:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66119#p66119</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66119#p66119"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66119#p66119"><![CDATA[
W pierwszym poście napisałem <strong>.. na razie bez dowodu</strong>, pozostając przy tym  warunku<br />powiedzmy że chcę udostępnić .. <strong><span style="color: #0000BF">Forumowiczom tego forum , dziwne ale moim zdaniem użyteczne narzędzie do rozprawienia się raz na długo z powszechnym , nie tyle problemem, co jałowością powtarzania w kółko tego samego wątku, dającego się &quot;zautomatyzować&quot; </span></strong><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=809">jp_elek</a> — 21 sty 2014, o 22:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2014-01-21T22:33:13+01:00</updated>
<published>2014-01-21T22:33:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66117#p66117</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66117#p66117"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66117#p66117"><![CDATA[
<div class="quotetitle">jp_elek napisał(a):</div><div class="quotecontent"><br />dzięki , ale to niestety nie przejdzie , przynajmniej nie tego szukam<br />ps. Timer jest tutaj tylko dla nazwania problemu , chodzi o pewien poziom uniwersalności .<br /></div><br />uniwersalność to jedno.<br />Wydaje mi się, że jednak zbyt ogólnie stawiasz problem.<br />A na takim poziomie ogólności to pozostaje C <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" /><br />tudzież inny język programowania.<br />Generalnie koncepcja ciekawa ale chyba nierealna.<br />Widzisz. Nawet z uruchomieniem działający przecież bibliotek ludzie mają problemy.<br />A Ty chcesz dać ludziom szkielet. Ustawiajcie sobie co chcecie i... ma działać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=189">MirkoT</a> — 21 sty 2014, o 22:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-01-22T00:02:19+01:00</updated>
<published>2014-01-21T22:33:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66116#p66116</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66116#p66116"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66116#p66116"><![CDATA[
To może zrób tak<br />w pliku .h<br />[syntax=c]#define TIMER00<br />#define TIMER22<br /><br />// wybór timera 0 lub 2<br />#define MOJ_TIMERTIMER2<br />//-----------------------------------<br /><br />#if MOJ_TIMER == TIMER0<br />#define TIMER_vect TIMER0_COMP_vect<br />#endif<br /><br />#if MOJ_TIMER == TIMER2<br />#define TIMER_vect TIMER2_COMP_vect<br />#endif[/syntax]<br /><br />a potem w .c<br />[syntax=c]ISR( TIMER_vect ) {<br /><br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 21 sty 2014, o 22:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jp_elek]]></name></author>
<updated>2014-01-21T22:24:01+01:00</updated>
<published>2014-01-21T22:24:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66115#p66115</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66115#p66115"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66115#p66115"><![CDATA[
dzięki , ale to niestety nie przejdzie , przynajmniej nie tego szukam<br />ps. Timer jest tutaj tylko dla nazwania problemu , chodzi o pewien poziom uniwersalności .<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 7 minutach ]</span></strong><br /><br />tak naprawdę chodzi o sklejanie nazw aby uzyskać potrzebny ciąg tworzący nazwę przerwania,<br /> w rzeczywistości ten ciąg będzie się składał z kilku członów , i w różnej kolejności.<br />zwykły wybór <strong>#if warunek  Ciąg-znakowy#endif , </strong><br /> jest teoretycznie możliwy ale tych warunków potrzebuję dużo i nie będzie to eleganckie ,choć możliwe<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=809">jp_elek</a> — 21 sty 2014, o 22:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[perlon]]></name></author>
<updated>2014-01-21T22:21:45+01:00</updated>
<published>2014-01-21T22:21:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66114#p66114</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66114#p66114"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66114#p66114"><![CDATA[
Może tak?<br />[syntax=c]#define timer 0<br /><br />#if timer==0<br />ISR(TIMER0_OVF_vect){<br />#endif<br /><br />#if timer==1<br />ISR(TIMER1_OVF_vect){<br />#endif<br /><br />#if timer==2<br />ISR(TIMER2_OVF_vect){<br />#endif<br />// tu obsługa przerwania<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=382">perlon</a> — 21 sty 2014, o 22:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jp_elek]]></name></author>
<updated>2014-01-21T22:16:52+01:00</updated>
<published>2014-01-21T22:16:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66113#p66113</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66113#p66113"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66113#p66113"><![CDATA[
jeszcze gorzej , żeby sam sobie poustawiał , timery , piny , i co tam jeszcze potrzeba, <br /> a jaśniej to tak np. stworzyć program który użytkownik ( nie ukrywajmy &quot;czujący bluesa&quot;) sam sobie skonfiguruje uniwersalną usługę<br /> do swojej konfiguracji płytki , aplikacji itp.<br /><br />ps . lub najprościej , &quot;bibliotekę&quot; którą wiele razy wykorzystam , konfigurując do rzeczywistej aplikacji ,ale raz napiszę i zapomnę o problemie,<br /> potem tylko skonfigurować i gotowe , jak nie przymierzając biblioteki do LCD , ustawiasz piny , tryb interfejsu i zapominasz ..<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=809">jp_elek</a> — 21 sty 2014, o 22:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2014-01-21T22:10:36+01:00</updated>
<published>2014-01-21T22:10:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66110#p66110</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66110#p66110"/>
<title type="html"><![CDATA[Re: wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66110#p66110"><![CDATA[
Czyli chcesz dać użytkownikowi program który on sam - ten użytkownik - ma sobie skompilować i wgrać do procka?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=189">MirkoT</a> — 21 sty 2014, o 22:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jp_elek]]></name></author>
<updated>2014-01-21T22:08:19+01:00</updated>
<published>2014-01-21T22:08:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66108#p66108</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66108#p66108"/>
<title type="html"><![CDATA[wykorzystać preprocesor  .. ale jak]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5637&amp;p=66108#p66108"><![CDATA[
Witam ,<br /> Przyjmijmy , na razie bez dowodu ,iż chcę zrobić coś użytecznego ...<br /><br />a. Chcę użyć np. <strong>ATMega 168</strong><br />b. Gdzieś w pliku nagłówkowym każe użytkownikowi wybrać timer do obsługi czegoś..<br />    przez wpisanie do <strong>#define Moj_Timer ( Timer0 , lub Timer1, lub Timer2 )</strong><br />c. Pomińmy na razie zrobienie porządku z różnicą bitów konfiguracyjnych<br />d. Stosownie do wyboru użytkownika muszę użyć odpowiedniego przerwania, ale zawsze od przepełnienia licznika<br />e. Zatem do wyboru mam  TIMER0, TIMER1, TIMER2, <strong><em>z doklejoną końcówką</em></strong> <span style="color: #BF0040"><strong>OVF_vector</strong></span>,<br />f. Tak wyprodukowany string użyć jako nazwę obsługi wybranego wektora przerwania : <br /> gdy wybierze TIMER0 to obsługa przerwania będzie <strong>ISR (</strong><strong><span style="color: #0000FF"> TIMER0_OVF_vector</span></strong><strong>)</strong><br /> gdy wybierze TIMER1      -/-                              <strong>ISR (</strong><strong><span style="color: #0000FF"> TIMER1_OVF_vector</span></strong><strong>)</strong><br /> gdy wybierze TIMER2      -/-                              <strong>ISR (</strong><strong><span style="color: #0000FF"> TIMER2_OVF_vector</span></strong><strong>)</strong><br /><br />ps oczywiście zawsze tylko jedna zgodna z wyborem .<br />  <strong><span style="color: #008000">Jeśli ktoś ma dobre pomysły to uprzejmie proszę o podzielenie się . J.P.</span></strong><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=809">jp_elek</a> — 21 sty 2014, o 22:08</p><hr />
]]></content>
</entry>
</feed>