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

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

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=4004&amp;mode</id>
<entry>
<author><name><![CDATA[cugu]]></name></author>
<updated>2014-11-11T09:12:12+01:00</updated>
<published>2014-11-11T09:12:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103316#p103316</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103316#p103316"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103316#p103316"><![CDATA[
Tak jak widać to co jest w komentarzach na dole to właśnie to co proponujesz i tak miałem na początku(ten rs w int0 to tak tylko do testu napisałem). Objaw taki że po całym odczycie adc oraz uśrednieniu przy 1 wejściu w uart przerwanie od INT0 przestaje działać( naliczy zawsze do 2 lub 3 i koniec)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5586">cugu</a> — 11 lis 2014, o 09:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-11-10T19:10:49+01:00</updated>
<published>2014-11-10T19:10:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103234#p103234</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103234#p103234"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103234#p103234"><![CDATA[
Kolego najpierw zapoznaj się z tym tematem <!-- l --><a class="postlink-local" href="http://forum.atnel.pl/topic7402.html" >topic7402.html</a><!-- l --> i wstaw poprawnie kod. Bo tego się nie da czytać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 10 lis 2014, o 19:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[cugu]]></name></author>
<updated>2014-11-10T20:23:09+01:00</updated>
<published>2014-11-10T17:17:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103203#p103203</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103203#p103203"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103203#p103203"><![CDATA[
Poniżej zamieszczam kod. ATMEGA328, Eclipse indigo. Mirek zdecydowanie zgadzam się z tobą że nie rozumiem do końca przerwań mimo że obydwie twoje książki przeczyłem. Ale uczę się codziennie;)<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;math.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;stdio.h&gt;<br /><br />#include &quot;MKUART/mkuart.h&quot;<br />#include &quot;I2C_TWI/i2c_twi.h&quot;<br /><br /><br />#define LED (1&lt;&lt;PC2)<br />#define LED_ZMI PORTC ^= LED<br />#define KL_KAL (1&lt;&lt;PB0)<br />#define KL_WC !(PINB &amp; KL_KAL)<br />#define MCP_ADR 0b11010000<br />#define SR 4<br />#define PCF8583_ADDR 0xA2<br />volatile uint8_t licz_prze= 0;<br />uint8_t i=0;<br />float kal=1024.0;<br />float tem=0.0;<br />float kwa=0.0;<br /><br />ISR(INT0_vect)<br />{<br />licz_prze++;<br />LED_ZMI;<br />uart_putint(licz_prze, 10);<br />//uart_putc('\r');<br />//uart_putc('\n');<br /><br />}<br /><br />//volatile uint8_t int0_flag=1;<br />// konwersja liczby dziesiętnej na BCD<br />uint8_t dec2bcd(uint8_t dec);<br />// konwersja liczby BCD na dziesiętną<br />uint8_t bcd2dec(uint8_t bcd);<br /><br /><br /><br />int main(void)<br />{<br />USART_Init( __UBRR );<br /><br />EICRA |= (1&lt;&lt;ISC01);// wyzwalanie zboczem opadajactm<br />EIMSK |= (1&lt;&lt;INT0);// odblokowanie przerwania<br />DDRD &amp;= ~(1&lt;&lt;PD2);<br />PORTD |= (1&lt;&lt;PD2);<br />DDRB &amp;= ~KL_KAL;<br />PORTB |= (1&lt;&lt;PB0);<br /><br />DDRC |= LED;<br />uint8_t buf&#91;3&#93;;<br />uint8_t cfg0 = 0b10010100;<br />uint8_t cfg1 = 0b10110100;<br />int16_t mcpadc0=0;<br />int16_t mcpadc1=0;<br />float mcpadc0buf;<br />float mcpadc1buf;<br />float tempadc;<br />char temp&#91;10&#93;;<br />float phadc;<br />char ph&#91;10&#93;;<br />float k;<br />    const float e=0.25;<br />    float E;<br /><br /><br /><br /><br />enum {ss=1, mm, hh};<br />uint8_t bufor&#91;4&#93;;// rezerwacja bufora 4 bajty<br />uint8_t sekundy, minuty, godziny;<br /><br />i2cSetBitrate( 100 );<br />/*<br /><br />bufor&#91;0&#93; = 0;// setne części sekundy<br />bufor&#91;1&#93; = dec2bcd(27);// sekundy<br />bufor&#91;2&#93; = dec2bcd(50);// minuty<br />bufor&#91;3&#93; = dec2bcd(9);// godziny<br />// zapis 4 bajtów z bufora pod adres 0x01 w pamięci RAM naszego RTC<br />TWI_write_buf( PCF8583_ADDR, 0x01, 4, bufor );<br />*/<br />sei();<br />while(1)<br />{<br />for(i=0; i&lt;20; i++)<br />{<br />_delay_ms(80);<br />MCP_write_buf( MCP_ADR,1, cfg0);<br />MCP_read_buf(MCP_ADR, 3, buf);<br />mcpadc0 = buf&#91;0&#93;&lt;&lt;8 | buf&#91;1&#93;;<br /><br />_delay_ms(80);<br />MCP_write_buf( MCP_ADR,1, cfg1);<br />MCP_read_buf(MCP_ADR, 3, buf);<br />mcpadc1 = buf&#91;0&#93;&lt;&lt;8 | buf&#91;1&#93;;<br /><br />mcpadc0buf=mcpadc0buf+mcpadc0;<br />mcpadc1buf=mcpadc1buf+mcpadc1;<br />}<br />tem = mcpadc0buf/20;<br />kwa = mcpadc1buf/20;<br /><br />//odczyt 4 bajtów do bufora od adresu 0x01 z pamięci RAM naszego RTC<br />TWI_read_buf( PCF8583_ADDR, 0x01, 4, bufor );<br /><br />sekundy = bcd2dec( bufor&#91;ss&#93; );<br />minuty = bcd2dec( bufor&#91;mm&#93; );<br />godziny = bcd2dec( bufor&#91;hh&#93; );<br /><br />tempadc=23+ (tem-1990.0)/56.0;<br />k= 54.2+tempadc*0.1986;<br /><br />sprintf(temp,&quot;%2.1f&quot;,tempadc);<br /><br />//phadc=7-(mcpadc1-2578)/233.4;<br />E= kwa*e;<br />if (KL_WC) kal = E;<br />phadc=((E-kal)-407.12)/k;<br />phadc=phadc*-1.0;<br />//szajs= E-kal;<br />sprintf(ph,&quot;%2.1f&quot;,phadc);<br /><br />//LED_ZMI;<br /><br />/*<br />uart_puts(&quot;Temperatura = &quot;);<br />//uart_putint(mcpadc0, 10);<br />uart_puts(temp);<br />uart_puts(&quot; C&quot;);<br />//uart_putint(tem, 10);<br /><br />uart_puts(&quot;   PH = &quot;);<br />if(phadc&lt;0) uart_puts(&quot;ERROR&quot;);<br />else if (phadc&gt;14) uart_puts(&quot;ERROR&quot;);<br />else uart_puts(ph);<br />//else uart_puts(ph);<br />uart_puts(&quot;   Czas: &quot;);<br />if(godziny&lt;10) uart_putint(0, 10);<br />uart_putint(godziny, 10);<br />uart_puts(&quot;:&quot;);<br />if(minuty&lt;10) uart_putint(0, 10);<br />uart_putint(minuty, 10);<br />uart_puts(&quot;:&quot;);<br />if(sekundy&lt;10) uart_putint(0, 10);<br />uart_putint(sekundy, 10);<br />uart_putc('\r');// wyślij znak CR (enter)<br />uart_putc('\n');<br />*/<br />mcpadc0buf=0;<br />mcpadc1buf=0;<br />i=0;<br />tem = 0;<br />kwa = 0;<br /><br /><br />}<br />}<br /><br /><br />// konwersja liczby dziesiętnej na BCD<br />uint8_t dec2bcd(uint8_t dec) {<br />return ((dec / 10)&lt;&lt;4) | (dec % 10);<br />}<br /><br />// konwersja liczby BCD na dziesiętną<br />uint8_t bcd2dec(uint8_t bcd) {<br />    return ((((bcd) &gt;&gt; 4) &amp; 0x0F) * 10) + ((bcd) &amp; 0x0F);<br />}[/syntax]<br /><br />Dzięki za info, nie zauważyłem że taki miszmasz się z kodem zrobił bez -C<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5586">cugu</a> — 10 lis 2014, o 17:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-11-09T21:23:15+01:00</updated>
<published>2014-11-09T21:23:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103069#p103069</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103069#p103069"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103069#p103069"><![CDATA[
<div class="quotetitle">cugu napisał(a):</div><div class="quotecontent"><br />I teraz moje pytanie dlaczego przerwania od obsługi UART-a całkowicie blokują mi przerwanie INT0?<br /></div><br />Odpowiedź jest niestety banalnie prosta - musiałeś STRASZNIE namieszać sobie w kodzie ... czyli inaczej mówiąc zrobić potwornego babola albo wiele baboli naraz ....<br /><br />albo nie rozumiesz jeszcze jak działają w ogóle przerwania w prockach<br /><br />ale po tak zadanym pytaniu to TYLKO tyle można odpowiedzieć. Wiesz ? ... tak wyglądają pytania z serii &quot;do jasnowidza&quot; czyli - &quot;nie działa mi - powiedzcie dlaczego?&quot; ... a po co tam pokazywać swój kod źródłowy no nie ? <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> — 9 lis 2014, o 21:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[cugu]]></name></author>
<updated>2014-11-09T18:42:40+01:00</updated>
<published>2014-11-09T18:42:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103036#p103036</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103036#p103036"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=103036#p103036"><![CDATA[
Witam. Napisałem program, który co określoną ilość czasu wysyła pomiary z ADC oraz czas z zewnętrznego zegara PCF poprzez BTM222 na mój komputer. Do odliczania czasu chcę użyć przerwanie od PCF na INT0. I teraz moje pytanie dlaczego przerwania od obsługi UART-a całkowicie blokują mi przerwanie INT0? Wygląda to tak że jeśli nie wyślę nic na port RS to przerwanie pięknie zlicza mi sekundy natomiast jeśli cokolwiek chcę wysłać na port to po 1 wysłaniu przerwanie INT0 przestaje działać a działa tylko to od UART. Napisałem nawet testowy program tak jak powyżej kolega i doda on tylko raz 1 do licznika po czym przestaje działać. Zablokowałem wszystkie nieużywane rzeczy w mkuart.c i też to nic nie dało. Czytam czytam i kompletnie nie rozumiem czemu nie chce on dalej wykonywać przerwania od INT0.<br />Dla mnie ważne jest aby własnie to przerwanie wykonywało się pewnie ponieważ ważny jest odpowiedni interwał czasu pomiaru a wygłąda to tak jakby przerwanie od UARTA się nigdy nie kończyło skoro nie pozwala na kolejne wyzwolenia INT0. Cała obsługa UARTA z niebieskiej książki zaczerpnięta.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=5586">cugu</a> — 9 lis 2014, o 18:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-08-28T13:54:41+01:00</updated>
<published>2013-08-28T13:54:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47306#p47306</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47306#p47306"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47306#p47306"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Czy zostanie to obsłużone wg. tej tabelki:?<br /></div><br /><br />dokładnie flagi są sprawdzane i wykonywane powiązane z nimi przerwania wg tej tabelki czyli wg kolejności wektorów przerwań<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 28 sie 2013, o 13:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xamrex]]></name></author>
<updated>2013-08-28T12:55:32+01:00</updated>
<published>2013-08-28T12:55:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47299#p47299</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47299#p47299"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47299#p47299"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />Po pierwsze to nie ustawiaj pinu INTx jako WYJŚCIE<br /></div><br />Pisane na szybo, błąd się wkradł <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />No ok,dużo się wyjaśniło, ale pokombinujmy jeszcze bardziej <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Z tego co wiem to nie da się ustawić priorytetów przerwań.<br /><br />Pokaże to krokowo o co mi chodzi.<br />1.Tak jak poprzedni INT leci na stan niski,<br />2.Wchodzimy w przerwanie ISR( INT1_vect ) <br />3.Zwiększamy zmienną licznik<br />4. <strong>TERAZ DOSTAJEMY COŚ PO RSIE</strong><br />4a. Ustawiana jest flaga aby wykonać przerwanie ISR( USART_RXC_vect )<br />5.dodaje do buforu z uarta tą zmienną licznik i włącza falgę przerwania UCSRB |= (1&lt;&lt;UDRIE);<br />....<br />6.Zmienia stan diody<br />7.Whcodzi z przerwania INT.<br /><br />I teraz moje  pytanie, które przerwanie zostanie najpierw obsłużone RX, czy TX?<br /><br />Wiem, że kombinuje jak mogę, ale mnie to ciekawi <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br /><br />Czy zostanie to obsłużone wg. tej tabelki:?<br /><a href="http://forum.atnel.pl/_obrazki/o/74/cc11544b37635d841d1351f2a4632597.gif"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/74/cc11544b37635d841d1351f2a4632597.gif" alt="Obrazek" /></a><br /><br />Czyli najpierw RX?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=74">xamrex</a> — 28 sie 2013, o 12:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-08-28T12:43:38+01:00</updated>
<published>2013-08-28T12:43:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47297#p47297</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47297#p47297"/>
<title type="html"><![CDATA[Re: Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47297#p47297"><![CDATA[
Po pierwsze to nie ustawiaj pinu INTx jako WYJŚCIE <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />DDRD |=(1&lt;&lt;PD3);<br /><br />Po drugie - dzięki temu pytaniu może zrozumiesz lepiej co to są flagi sprzętowe przerwań <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />Toż jeśli trwa osbługa INTx to wiadomo że inne przerwania nie ruszą - ale ZAPALĄ się flagi tych przerwań. I dlatego właśnie po ukończeniu obsługi INTx ... procek wie, że ma zrealizować kolejne przerwanie bo widzi, że flaga od UDRE jest zapalona - no to BACH, wykonuje jedną instrukcję z pętli głównej i natychmiast w kolejnym cyklu rzuca się aby obsłużyć przerwanie UDRE i zgasić tę flagę<br /><br />teraz jaśniej ? <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> — 28 sie 2013, o 12:43</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xamrex]]></name></author>
<updated>2013-08-28T12:22:52+01:00</updated>
<published>2013-08-28T12:22:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47289#p47289</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47289#p47289"/>
<title type="html"><![CDATA[Przerwanie w przerwaniu - co się tam dzieje? INT i RS]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4004&amp;p=47289#p47289"><![CDATA[
Witam<br />Załóżmy, że aktywujemy sobie przerwanie jeśli na INT1 będzie zbocze opadające<br /><br />[syntax=c]MCUCR |= (1&lt;&lt;ISC11);                    //wyzwealanie zboczem opadajacym in1(PD3)<br />GICR |= (1&lt;&lt;INT1);      // odblokowanie przerwania<br />DDRD |=(1&lt;&lt;PD3);<br />PORTD |=(1&lt;&lt;PD3);                               // pd3 do plusa[/syntax]<br /><br /><br />Teraz dołączymy sobie z książki projekt 7 (Rsa, który używa przerwań aby wysłać i odebrać dane)<br /><br />i w przerwaniu zrobimy coś STRASZNEGO:<br />[syntax=c]ISR( INT1_vect ) {<br /> static uint16_t licznik;<br />licznik++;<br />   uart_putint(licznik, 10); <br />}[/syntax]<br /><br />Tutaj cały kod:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &quot;MKUART/mkuart.h&quot;<br /><br /><br /><br />int main(void) {<br />USART_Init( __UBRR );// inicjalizacja UART<br />MCUCR |= (1&lt;&lt;ISC11);                    //wyzwealanie zboczem opadajacym in1(PD3)<br />GICR |= (1&lt;&lt;INT1);      // odblokowanie przerwania<br />PORTD |=(1&lt;&lt;PD3);                               // pd3 do plusa<br />sei();// globalne odblokowanie przerwañ<br /><br />// pêtla nieskoñczona<br />while(1) {<br />;<br />}<br />}<br /><br />ISR( INT1_vect ) {<br />static uint16_t licznik;<br />licznik++;<br />uart_putint(licznik, 10); <br />       PORTD ^=(1&lt;&lt;PD7); <br />}[/syntax]<br /><br />Niech mi ktoś wytłumaczy czy to ma prawo działać i w jaki sposób będzie to działało.<br />Z tego co wiem, na czas wykonywania się przerwania inne przerwania są blokowane?<br />Oraz jeśli pojawi się flaga przerwania program od razu skacze do funkcji obsługującej przerwanie.<br />Załóżmy, że na INT1 pojawia się stan niski.<br />W tym momencie program przechodzi do obsługi tego przerwania i:<br />1. blokuje inne przerwania<br />2.Zwiększa zmienną licznik<br />3.dodaje do buforu z uarta tą zmienną i włącza falgę przerwania <strong>    UCSRB |= (1&lt;&lt;UDRIE);</strong><br />4.Niestety są wyłączone inne przerwania, więc program nie skoczy NATYCHMIAST do <strong>ISR( USART_UDRE_vect)</strong><br />5.Program zmienia stan na PD7<br />6.Wychodzi z przerwania i zezwala na inne przerwania<br />7.W tym momencie robiona jest obsługa przerwania ISR( USART_UDRE_vect)<br />Albo obsługa tego przerwania ISR( USART_UDRE_vect) nie zostanie w ogóle zrealizowana?<br /><br />Czy dobrze myślę ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=74">xamrex</a> — 28 sie 2013, o 12:22</p><hr />
]]></content>
</entry>
</feed>