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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-02-22T19:24:15+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=6102&amp;mode</id>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2014-02-22T19:24:15+01:00</updated>
<published>2014-02-22T19:24:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6102&amp;p=71595#p71595</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6102&amp;p=71595#p71595"/>
<title type="html"><![CDATA[Re: Pomoc z programem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6102&amp;p=71595#p71595"><![CDATA[
Ktoś pewnie mógłby, ale... na pewno potrzebnych jest trochę więcej danych...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=189">MirkoT</a> — 22 lut 2014, o 19:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[desaji]]></name></author>
<updated>2014-02-21T21:00:18+01:00</updated>
<published>2014-02-21T21:00:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6102&amp;p=71434#p71434</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6102&amp;p=71434#p71434"/>
<title type="html"><![CDATA[Pomoc z programem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6102&amp;p=71434#p71434"><![CDATA[
Siema mógł ktoś mi pomóc w sprawdzeniu tego kodu i jeżeli to możliwe pomoc przy zmianie wyników pomiarowych ADC na wynik temperatur i wyświetlenia ich na LCD <br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;stdio.h&gt;<br /><br /><br />#include &quot;HD44780.h&quot;<br />#define SR 8<br /><br />uint16_t pomiar ( uint8_t kanal);<br /><br />int main(void){<br /><br />uint32_t obliczony, stala = 473; // stala = 473 tj  1,1/1024 * wsp podzialu napiecia (4,4) * 100 000 = 472.656<br />uint8_t cz_d , cz_u;  //czesc calkowita i ulamkowa<br />uint16_t wynik = 0;<br />float nap=0;<br />float x=0;<br />int c=0;<br /><br />float temp &#91;3&#93;={-54.5,-25.5,85.5};<br />        int napi &#91;3&#93;={4,56,305};<br /><br />ADCSRA |= (1 &lt;&lt; ADEN);  //turn on ADC<br /><br />ADCSRA |= (1 &lt;&lt; ADPS1) | (1 &lt;&lt; ADPS2); //preskaler 64<br /><br />ADMUX |=  (1 &lt;&lt; REFS0) | (1 &lt;&lt; REFS1);// wewnętrzne Uref<br /><br />LCD_Initalize();  //inicjalizacja LCD<br /><br />//LCD_Clear();// czyszczenie LCD<br />//LCD_WriteText(&quot;Emulator DS18S20&quot;);  // Wyswitlenie napisu początkowego<br />//_delay_ms(100 );// opoznienie wyswietlenia 100ms<br />//LCD_GoTo(0,1);// ustawienie kursora na drugim wierszu LCD<br />//LCD_WriteText(&quot;Wyk. M.Jazwinski&quot;);// wyswietlenie wykonawcy<br />//_delay_ms( 500 );<br />//LCD_Clear();// czyszczenie LCD<br />//LCD_WriteText(&quot;Wykonywanie&quot;);// Wyswitlenie napisu na pierwszym wierszu LCD<br />//LCD_GoTo(0,1);<br />//LCD_WriteText(&quot;Pomiaru&quot;);// Wyswitlenie napisu na drugim wierszu LCD<br />//_delay_ms( 500 );<br /><br />while(1){<br />static uint16_t sr&#91;SR&#93;;<br />static uint8_t idx;<br />uint32_t sr1 = 0;<br />uint8_t i;<br /><br />sr&#91; idx++ &amp; (SR-1) &#93; = wynik;<br /><br />for (i = 0; i &lt; SR; i++)<br />{<br />wynik = pomiar( PC3 );     //wynik to odczytana wartosc<br />sr1 += sr &#91;i&#93;;//suma<br />}<br /><br />sr1 /= SR;//wartosc srednia<br /><br />obliczony = sr1 * stala;// wynik 100 000 razy wiekszy po przemnożeniu przez stałe<br /><br />cz_d = obliczony / 100000;// czesc calkowita<br />cz_u = (obliczony / 1000 ) % 100; // obliczenia czesc ulamkowa<br /><br />nap=obliczony/1000;<br /><br />for(int i=0; i&lt;3; i++)<br /> {<br /><br />if(nap &gt;= napi&#91;i&#93;)<br />   c++;<br /><br /> }<br />x=temp&#91;c&#93;;<br /><br /><br />LCD_Clear();<br />LCD_WriteText( &quot;NAPIECIE&quot; );<br />LCD_WriteText( &quot; &quot; );<br />LCD_INT(cz_d);// Wyswietlenie czesci całkowitej<br />LCD_WriteText( &quot;.&quot; );<br /><br />LCD_INT(cz_u);<br />LCD_WriteText( &quot; &quot; );<br />LCD_WriteText( &quot;V&quot; );<br /><br /><br /><br />LCD_GoTo(0,1);// ustawienie kursora na drugim wierszu LCD<br />LCD_WriteText( &quot;Temp &quot; );<br />LCD_INT(x);<br />LCD_WriteText( &quot;.&quot; );<br />LCD_INT(x);<br />LCD_WriteText( &quot;'C &quot; );<br />    _delay_ms( 50 );<br />&#91;list&#93;&#91;/list&#93;<br />}<br /><br /><br />}<br /><br />uint16_t pomiar ( uint8_t kanal)  //funkcja pomiaru ADC<br />{<br /><br />ADMUX = (ADMUX &amp; 0b11010000) | kanal;<br /><br />ADCSRA |= ( 1 &lt;&lt; ADSC);<br /><br />while (ADCSRA &amp; ( 1 &lt;&lt; ADSC));<br /><br />return ADCW;[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2180">desaji</a> — 21 lut 2014, o 21:00</p><hr />
]]></content>
</entry>
</feed>