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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2012-09-23T14:44:22+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=1582&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-09-23T14:44:22+01:00</updated>
<published>2012-09-23T14:44:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15801#p15801</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15801#p15801"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15801#p15801"><![CDATA[
Ok - jasne - nie zauważyłem <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ... ale wkrótce chyba opiszę jeszcze na blogu kilka ciekawych możliwości.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 wrz 2012, o 14:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[szopler]]></name></author>
<updated>2012-09-23T14:29:12+01:00</updated>
<published>2012-09-23T14:29:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15800#p15800</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15800#p15800"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15800#p15800"><![CDATA[
Ja tego nie używam w trybie FreeRuning tylko do pojedynczych pomiarów wywoływanych wywołaniem (masło maślane) funkcji start_pomiaru_adc(kanal); <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=82">szopler</a> — 23 wrz 2012, o 14:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-09-23T14:18:14+01:00</updated>
<published>2012-09-23T14:18:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15799#p15799</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15799#p15799"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15799#p15799"><![CDATA[
ale to co napisałeś to FreeRuning Mode z użyciem ISR( ADC_vect ) <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> więc to nadal nie to co ja mam na myśli .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 wrz 2012, o 14:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[szopler]]></name></author>
<updated>2012-09-23T14:10:45+01:00</updated>
<published>2012-09-23T14:10:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15798#p15798</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15798#p15798"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15798#p15798"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />Panowie ale mam nadzieję że wiecie o tym że z adc można korzystac w trybie na żądanie i to bez sprawdzania tej flagi ?  czy nie wiecie?<br /></div><br />Wiemy <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Przykład:<br />[syntax=c]ISR(ADC_vect) {<br />    u08 aktualny_kanal = ADMUX &amp; 0b00000111;<br />    switch (aktualny_kanal) {<br />    case 0x07: Pomiar_HV = ((94UL*ADCW) / 100); break;<br />    case 0x06: Pomiar_BAT = ((151UL*ADCW) / 1000); break;<br />    }<br />}[/syntax]<br />[syntax=c]<br />void start_pomiaru_adc(u08 kanal) {<br />    ADMUX = (ADMUX &amp; 0b11111000) | kanal; // ADMUX &amp; maska (zachowaj to co już jest ustawione) i ustaw 3 ostatnie bity - nr kanalu<br />    sbi(ADCSRA,ADSC); // Start konwersji ADC<br />    //while (ADCSRA &amp; (1&lt;&lt;ADSC)); // Czekaj na koniec konwersji<br />    //return ADCW; // Zwroc wynik konwersji<br />}[/syntax]<br /><br />Zmienne &quot;Pomiar_...&quot; globalne z volatile.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=82">szopler</a> — 23 wrz 2012, o 14:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MichalXY]]></name></author>
<updated>2012-09-23T12:00:15+01:00</updated>
<published>2012-09-23T12:00:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15795#p15795</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15795#p15795"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15795#p15795"><![CDATA[
Tak tak, zapominałem o volatile ale to już przez lekki pośpiech... Po prostu chciałem pokazać jak można taki pomiar na przerwaniu od przetwornika zrobić...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=226">MichalXY</a> — 23 wrz 2012, o 12:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Piotrek_P]]></name></author>
<updated>2012-09-23T11:55:24+01:00</updated>
<published>2012-09-23T11:55:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15794#p15794</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15794#p15794"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15794#p15794"><![CDATA[
Tak przy okazji poczytaj o volatile, np na blogu Mirka.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=290">Piotrek_P</a> — 23 wrz 2012, o 11:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MichalXY]]></name></author>
<updated>2012-09-23T11:47:54+01:00</updated>
<published>2012-09-23T11:47:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15793#p15793</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15793#p15793"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15793#p15793"><![CDATA[
Ok poniżej mój kod źródłowy do ADC - przerobiony by był według nowych standardów  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br /><br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 2012-07-12<br /> *      Author: Michał<br /> */<br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &quot;UART/mwUART.h&quot;<br />#include &lt;avr/interrupt.h&gt;<br /><br /><br /><br /><br /><br />uint16_t val;<br />// Pętla główna<br /><br /><br /><br />ISR(ADC_vect)<br />{<br />val = ADCW;<br /><br />}<br /><br /><br />int main(void)<br /><br />{<br />ADMUX = 0;<br />ADCSRA |= (1&lt;&lt;ADEN)|(1&lt;&lt;ADPS1)|(1&lt;&lt;ADPS0)|(1&lt;&lt;ADIE); //bit ADIE czyli włączenie przerwania od przetwornika ADC<br /><br />//ADMUX |= (1&lt;&lt;ADLAR);<br /><br />sei();<br />USART_Init(_UBRR);<br /><br /><br /><br />while(1)<br />{<br />ADCSRA |= (1&lt;&lt;ADSC); //rozpoczęcie pomiaru z pierwszego kanlu ADC0<br />uart_puts(&quot;Napiecie: &quot;);<br />uart_int(val);<br />uart_puts(&quot;\r\n&quot;);<br />_delay_ms(500);<br /><br /><br /><br /><br />}<br /><br /><br />}[/syntax]<br /><br />Wadą jest to że ten mój potworem mierzy tylko na jednym kanale  <img src="https://forum.atnel.pl/images/smilies/icon_cry.gif" alt=":cry:" title="Płacze" /> ale może wezmę się za przerobienie na tryb wielokanałowy  <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=226">MichalXY</a> — 23 wrz 2012, o 11:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-09-23T11:47:25+01:00</updated>
<published>2012-09-23T11:47:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15792#p15792</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15792#p15792"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15792#p15792"><![CDATA[
Ale ja dokładnie piszę o sytuacji bez free runingu <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> — 23 wrz 2012, o 11:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-09-23T11:39:50+01:00</updated>
<published>2012-09-23T11:39:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15789#p15789</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15789#p15789"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15789#p15789"><![CDATA[
Panowie ale mam nadzieję że wiecie o tym że z adc można korzystac w trybie na żądanie i to bez sprawdzania tej flagi ?  czy nie wiecie?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 wrz 2012, o 11:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MichalXY]]></name></author>
<updated>2012-09-23T09:35:35+01:00</updated>
<published>2012-09-23T09:35:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15784#p15784</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15784#p15784"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15784#p15784"><![CDATA[
Jak kiedyś bawiłem się przetwornikiem A/D w AVR to używałem przerwania tego przetwornika. Jak znajdę kod źródłowy to się nim chętnie podzielę <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />.<br /><br />Pozdrawiam!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=226">MichalXY</a> — 23 wrz 2012, o 09:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2012-09-23T08:30:39+01:00</updated>
<published>2012-09-23T08:30:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15782#p15782</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15782#p15782"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15782#p15782"><![CDATA[
Sam po prostu olewam wewnętrzne ADC i stosuję zewnętrzne i tylko obrabiam przylatujący sygnał. Sam przetwornik zajmuje się całą resztą, łącznie z kalibracją itp.<p>Statystyki: Napisane przez Gość — 23 wrz 2012, o 08:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-09-23T07:24:10+01:00</updated>
<published>2012-09-23T07:24:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15778#p15778</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15778#p15778"/>
<title type="html"><![CDATA[Re: Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15778#p15778"><![CDATA[
każde rozwiązanie ma swoje wady i zalety. wszystko zależy co jest dla ciebie ważniejsze? A ciężko to wywnioskować po tym ni to pytanu ni stwierdzeniu <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> w każdym bądź razie można to jeszcze robić w pętli głównej co ściśle określony czas i tak żeby nie stosować z tego while( ADCSR....<br /><br />Można też w przerwaniu jakiegoś timera itp itd<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 wrz 2012, o 07:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[szopler]]></name></author>
<updated>2012-09-23T00:08:22+01:00</updated>
<published>2012-09-23T00:08:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15777#p15777</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15777#p15777"/>
<title type="html"><![CDATA[Temat na niedzielę - nieblokujący odczyt ADC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1582&amp;p=15777#p15777"><![CDATA[
Zadanie - nieblokujący odczyt ADC (z wykorzystaniem przerwania zamiast while (ADCSRA &amp; (1&lt;&lt;ADSC));)<br />Pomysł: Uruchomić FreeRunning, w przerwaniu od ADC sprawdzać kanał i przypisywać ADCW do zmiennej_nr_kanalu.<br />Wada: Każdy kanał - jedna zmienna w RAM.<br /><br />Inne pomysły?<br />...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=82">szopler</a> — 23 wrz 2012, o 00:08</p><hr />
]]></content>
</entry>
</feed>