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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-08-16T20:10:02+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=1351&amp;mode</id>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2015-08-16T20:10:02+01:00</updated>
<published>2015-08-16T20:10:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=137530#p137530</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=137530#p137530"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=137530#p137530"><![CDATA[
W powyższym przykładzie warunek z linii 2. nie ma już sensu... spełnia go warunek z linii 1... kombinuj dalej <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=1922">SylwekK</a> — 16 sie 2015, o 20:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[adam_z9]]></name></author>
<updated>2015-08-16T19:58:39+01:00</updated>
<published>2015-08-16T19:58:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=137529#p137529</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=137529#p137529"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=137529#p137529"><![CDATA[
Słuchaj, podejrzewam że nie dostałeś odpowiedzi na powyższą kwestię więc podpowiem Ci tak :<br />- w przypadku gdy wyświetlasz dwa miejsca po przecinku dodaj przed instrukcją lcd_int(cz_u) instrukcję:<br />[syntax=c]if (cz_u&lt;10) lcd_str(&quot;0&quot;); // wyświetlenie zera poprzedzającego w przypadku gdy liczba jest mniejsza niż 10.[/syntax]<br />- w przypadku gdy wyświetlasz trzy miejsca po przecinku powinieneś przed wyświetleniem części ułamkowej dodać dwie:<br />[syntax=c]if (cz_u&lt;100) lcd_str(&quot;0&quot;);<br />if (cz_u&lt;10) lcd_str(&quot;0&quot;);[/syntax]<br />Tak to na szybko u siebie załatwiłem. Działa.<br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7648">adam_z9</a> — 16 sie 2015, o 19:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek29]]></name></author>
<updated>2012-07-30T08:45:07+01:00</updated>
<published>2012-07-30T08:45:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11287#p11287</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11287#p11287"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11287#p11287"><![CDATA[
Dziękuję za szybkie odpowiedzi. <br />Nie chciałem zostawiać tego problemu przez przejściem do kolejnego ćwiczenia, a tu się okazuje że rozwiązanie jest parę kartek dalej <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Dziękuję i pozdrawiam.<br /><br />Ps. Bardzo przystępnie napisana książka .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=496">wojtek29</a> — 30 lip 2012, o 08:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Ledes]]></name></author>
<updated>2012-07-29T22:52:31+01:00</updated>
<published>2012-07-29T22:52:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11276#p11276</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11276#p11276"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11276#p11276"><![CDATA[
Heh wiem, bo dzisiaj w pociągu wczytywałem się. <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=355">Ledes</a> — 29 lip 2012, o 22:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-07-29T22:49:31+01:00</updated>
<published>2012-07-29T22:49:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11274#p11274</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11274#p11274"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11274#p11274"><![CDATA[
<div class="quotetitle">Ledes napisał(a):</div><div class="quotecontent"><br />Zobacz w pierwszej książce Mirka kod pod koniec rozdziału o ADC... Jest tam taka fajna funkcja która rozwiązuje podany przez Ciebie problem. <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /></div><br /><br />To jest dobra porada <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> — 29 lip 2012, o 22:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Ledes]]></name></author>
<updated>2012-07-29T22:47:49+01:00</updated>
<published>2012-07-29T22:47:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11273#p11273</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11273#p11273"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11273#p11273"><![CDATA[
Zobacz w pierwszej książce Mirka kod pod koniec rozdziału o ADC... Jest tam taka fajna funkcja która rozwiązuje podany przez Ciebie problem. <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=355">Ledes</a> — 29 lip 2012, o 22:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MichalXY]]></name></author>
<updated>2012-07-29T22:25:11+01:00</updated>
<published>2012-07-29T22:25:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11271#p11271</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11271#p11271"/>
<title type="html"><![CDATA[Re: ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11271#p11271"><![CDATA[
Słuchaj, spróbuj zmienić w funkcji lcd_int itoa na utoa bo właśnie ona odpowiada za wyświetlanie typów unsigned int.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=226">MichalXY</a> — 29 lip 2012, o 22:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtek29]]></name></author>
<updated>2012-07-29T22:10:32+01:00</updated>
<published>2012-07-29T22:10:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11269#p11269</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11269#p11269"/>
<title type="html"><![CDATA[ADC - LCD - wyświetlanie wyniku]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1351&amp;p=11269#p11269"><![CDATA[
Witam. <br /><br />Podczas zgłębiania wiedzy  z książki ,  natknąłem się na problem ,<br /> A mianowicie:<br />W oparciu o książkę napisałem program którego zadaniem jest pomiar napięcia i wyśw. wartości napięcia na LCD.<br />Program  na Atmega 8 , Vref wewnętrzne  = 2,56V , pomiar napięć do 2,5 V.<br />Problem polega na wyświetlaniu wartości części ułamkowych  tzn , gdy pomiar wynosi np. 2,12 V to gdy obniżam mierzone napięcie potencjometrem, to zamiast np. 2.08V wyświetla się 2.8V .  <br />Jak temu zaradzić ? Podobnie jest z trzema miejscami po przecinku.<br /><br />Pozdrawiam i dziękuję za pomoc.<br /><br />Kod programu<br />[syntax=c]#include  &lt;avr/io.h&gt;<br />#include  &lt;avr/delay.h&gt;<br />#include &quot;lcd44780.h&quot;<br /><br />uint16_t pomiar(uint8_t kanal); // deklaracja funkcji pomiaru<br /><br />int main(void)<br />{<br />lcd_init();  // inizjalizacja LCD<br /><br />ADMUX |= (1&lt;&lt;REFS0)|(1&lt;&lt;REFS1); // Nap ref = 2,56 V<br />ADCSRA |= (1&lt;&lt;ADEN)|(1&lt;&lt;ADPS1)|(1&lt;&lt;ADPS2);//preskaler 64, ADC ON<br /><br />uint16_t wynik;<br />uint16_t pm;<br />uint8_t cz_d;<br />uint8_t cz_u;<br /><br />while(1)<br />{<br />lcd_cls();// kasowanie zawartości LCD<br />pm = pomiar(0);// odczyt wart ADC<br />wynik = pm * 25;<br />cz_d = wynik/10000;<br />cz_u = (wynik/100) % 100;<br />lcd_int( cz_d);<br />lcd_char('.');<br />lcd_int( cz_u );<br />lcd_str( &quot;V&quot;);<br />_delay_ms(1000);<br />}<br />}<br />uint16_t pomiar(uint8_t kanal) // def. funkcji pomiarowej<br />{<br />ADMUX |= (ADMUX &amp; 0xE8) | kanal;// ustawenie kanału ADC<br />ADCSRA |= (1&lt;&lt;ADSC);// start pomiaru<br />while( ADCSRA &amp; (1&lt;&lt;ADSC));// gdy pomiar wykonany<br />return ADCW;//zwróć wynik<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=496">wojtek29</a> — 29 lip 2012, o 22:10</p><hr />
]]></content>
</entry>
</feed>