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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-07-08T21:50:34+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=3483&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-07-08T21:50:34+01:00</updated>
<published>2013-07-08T21:50:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41193#p41193</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41193#p41193"/>
<title type="html"><![CDATA[Re: ADC - błędnie wyświetlany wynik.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41193#p41193"><![CDATA[
Nie ma za co przepraszać  - to raczej ja przepraszam, że takie chochliki dostały się do książki , ale dlatego staram się co i rusz przypominać o tej stronie żeby kolejne osoby nie męczyły się ... o to chodzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 8 lip 2013, o 21:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[robert95]]></name></author>
<updated>2013-07-08T21:45:32+01:00</updated>
<published>2013-07-08T21:45:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41186#p41186</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41186#p41186"/>
<title type="html"><![CDATA[Re: ADC - błędnie wyświetlany wynik.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41186#p41186"><![CDATA[
Przepraszam, ale zaglądając do aktualizacji nie zauważyłem tego, ale zaglądałem. <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Moje omijanie &quot;DUŻYM ŁUKIEM&quot; wynika z tego, że ja twierdzę, iż to ja coś poknociłem - po prostu już tak mam, więc przepraszam.<br />Na pewno będę zaglądać tam częściej. Dzięki <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=1427">robert95</a> — 8 lip 2013, o 21:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-07-08T21:39:53+01:00</updated>
<published>2013-07-08T21:39:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41184#p41184</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41184#p41184"/>
<title type="html"><![CDATA[Re: ADC - błędnie wyświetlany wynik.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41184#p41184"><![CDATA[
robert95 --&gt; przede wszystkim w tych pytaniach które ostatnio zadajesz widać, że jakoś strasznie DUŻYŁ ŁUKIEM omijasz aktualizacje do książki <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> z tej strony:<br /><br /><!-- m --><a class="postlink" href="http://atnel.pl/uaktualnienia-programow-do-dvd.html" >http://atnel.pl/uaktualnienia-programow-do-dvd.html</a><!-- m --><br /><br />a tam bywają właśnie wyjaśnione te błędy drobne w książce<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 8 lip 2013, o 21:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[komor34]]></name></author>
<updated>2013-07-08T21:33:59+01:00</updated>
<published>2013-07-08T21:33:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41180#p41180</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41180#p41180"/>
<title type="html"><![CDATA[Re: ADC - błędnie wyświetlany wynik.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41180#p41180"><![CDATA[
Spróbuj tą linijkę wynik = pm * 25 * 195; zamienić na: wynik = (uint32_t)pm * 25 * 195; i sprawdź czy coś pomogło, czy wartości się zmieniły.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=495">komor34</a> — 8 lip 2013, o 21:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[robert95]]></name></author>
<updated>2013-07-08T20:55:24+01:00</updated>
<published>2013-07-08T20:55:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41175#p41175</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41175#p41175"/>
<title type="html"><![CDATA[ADC - błędnie wyświetlany wynik.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=3483&amp;p=41175#p41175"><![CDATA[
Witam.<br />Mam problem z wyświetlaniem wyniku ADC na LCD. Chodzi generalnie  o to, że napięcie odniesienia ustawiłem na 2,56V, a zakres napięć to 0-5V (zasilanie z USB z komputera). Współczynnik podziały wyszedł mi ok. 1,95, a zatem:<br />Zgodnie z niebieską książką ma się to tak:<br />Możemy przyjąć wyrażenie 2,56 / 1024 = 0,0025 , jednak jest to ułamek dziesiętny, a dążąc do uzyskania liczby całkowitej (żeby nie wprowadzać typu float) mnożę to przez 10 000, następnie mój współczynnik podziału również mnożę przez 100 (1,95 * 100 = 195) tak aby był liczbą całkowitą. Wówczas mój kod wygląda tak:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br /><br />// załączenie pliku obsługi wyświetlacza<br />#include &quot;lcd44780.h&quot;<br /><br />//deklaracja funkcji pomiaru<br />uint16_t pomiar(uint8_t kanal);<br /><br />// GŁÓWNA FUNKCJA PROGRAMU<br />int main(void)<br />{<br />//definicje zmiennych<br />uint32_t wynik;<br />uint16_t pm;<br />uint8_t cz_d, cz_u;<br /><br /><br />//inicjalizacja wyświetlacza lcd<br />lcd_init();<br /><br />//wybór napięcia odniesienia - 2,56 V<br />ADMUX |= (1&lt;&lt;REFS0) | (1&lt;&lt;REFS1);<br />//włączenie modułu ADC / ustawienie preskalera na 64<br />ADCSRA |= (1&lt;&lt;ADEN) | (1&lt;&lt;ADPS1) | (1&lt;&lt;ADPS2);<br /><br /><br /><br /><br />//nieskończona pętla, w której dokonywany jest pomiar<br />//i wyświetlany wynik na LCD<br />while(1)<br />{<br />//wyczyszczenie wyświetlacza<br />lcd_cls();<br />pm = pomiar(5);//odczytana wartość ADC<br />wynik = pm * 25 * 195;<br />cz_d = wynik/1000000;<br />cz_u = (wynik/10000) % 100;<br />lcd_locate(0,4);<br />lcd_str_P(PSTR(&quot;ADC:&quot;));<br />lcd_int(cz_d);<br />lcd_str_P(PSTR(&quot;,&quot;));<br />lcd_int(cz_u);<br />lcd_str_P(PSTR(&quot;V&quot;));<br />//odczekanie czasu 0,3s<br />_delay_ms(300);<br />}<br />}<br /><br />//DEFINICJA funkcji pomiaru na dowolnym kanale/wejsciu<br />uint16_t pomiar(uint8_t kanal)<br />{<br />//ustawienie wybranego kanału ADC w rejestrze ADMUX<br />ADMUX = (ADMUX &amp; 0xF8) | kanal;<br />//START pomiaru przez ustawienie bitu ADSC w rejestrze ADCSR<br />ADCSRA |= (1&lt;&lt;ADSC);<br />//oczekiwanie na koniec pomiaru  (dopóki bit ADSC jest = 1)<br />while( ADCSRA &amp; (1&lt;&lt;ADSC) );<br />//po zakończeniu pomiaru gdy bit ADSC=0, zwrócenie wyniku w postaci<br />//16 bitowej wartości z rejestrów ADCH oraz ADCL<br />return ADCW;<br />}[/syntax]<br /><br />Jednak wyświetlana wartość ADC, zamiast w zakresie 0-5V wyświetla się w zakresie ok. 0 - 0,6V i nie zawsze jest zgodna z położeniem potencjometru, w tym przypadku użytego jako regulowany dzielnik napięcia.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1427">robert95</a> — 8 lip 2013, o 20:55</p><hr />
]]></content>
</entry>
</feed>