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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2022-12-09T12:26:43+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=24353&amp;mode</id>
<entry>
<author><name><![CDATA[AKSELINEK]]></name></author>
<updated>2022-12-09T12:26:43+01:00</updated>
<published>2022-12-09T12:26:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236232#p236232</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236232#p236232"/>
<title type="html"><![CDATA[Re: Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236232#p236232"><![CDATA[
Masz racje Sylwek . Pomiary wykonywały się razem i dawało dziwne wyniki, zastosowałem warunki i ruszyło dzięki .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18152">AKSELINEK</a> — 9 gru 2022, o 12:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2022-12-01T23:25:04+01:00</updated>
<published>2022-12-01T23:25:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236218#p236218</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236218#p236218"/>
<title type="html"><![CDATA[Re: Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236218#p236218"><![CDATA[
Pomiary powinny być dokonywane cyklicznie - najpierw jeden później drugi i ewentualnie kolejne. Nie da się równolegle mierzyć kilku kanałów jednym sprzętowym ADC.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 1 gru 2022, o 23:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[AKSELINEK]]></name></author>
<updated>2022-12-01T18:04:13+01:00</updated>
<published>2022-12-01T18:04:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236217#p236217</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236217#p236217"/>
<title type="html"><![CDATA[Re: Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236217#p236217"><![CDATA[
Opóźnienie nic nie pomogło . Jet jakiś program w tym że pomiary robią się równolegle .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18152">AKSELINEK</a> — 1 gru 2022, o 18:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marhef]]></name></author>
<updated>2022-11-25T12:02:30+01:00</updated>
<published>2022-11-25T12:02:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236208#p236208</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236208#p236208"/>
<title type="html"><![CDATA[Re: Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236208#p236208"><![CDATA[
Dodaj opóźnienie pomiędzy pomiarami. Znaczy po ustawieniu ADMUX. Nie wiem, czy pomoże, spróbuj.<br />W nocie powinno być coś na temat używania ADC. A może jest nawet dokument atmela/microchipa o wykonywaniu pomiarów analogowych. Poszukaj <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=12752">Marhef</a> — 25 lis 2022, o 12:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[AKSELINEK]]></name></author>
<updated>2022-11-24T21:12:31+01:00</updated>
<published>2022-11-24T21:12:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236206#p236206</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236206#p236206"/>
<title type="html"><![CDATA[Re: Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236206#p236206"><![CDATA[
Korzystałem z przykładowych kodów podanych do książki ale trochę zmieniłem w ustawieniach LCD :<br /><br />[syntax=c]// rozdzielczość wyświetlacza LCD (wiersze/kolumny)<br />#define LCD_ROWS 2// ilość wierszy wyświetlacza LCD<br />#define LCD_COLS 16// ilość kolumn wyświetlacza LCD<br /><br />// tu ustalamy za pomocą zera lub jedynki czy sterujemy pinem RW<br />//0 - pin RW podłączony na stałe do GND<br />//1 - pin RW podłączony do mikrokontrolera<br />#define USE_RW 0<br /><br />//----------------------------------------------------------------------------------------<br />//<br />//Ustawienia sprzętowe połączeń sterownika z mikrokontrolerem<br />//<br />//----------------------------------------------------------------------------------------<br />// tu konfigurujemy port i piny do jakich podłączymy linie D7..D4 LCD<br />#define LCD_D7PORT  C        // TU ZMIANA<br />#define LCD_D7 7<br />#define LCD_D6PORT  C        // TU ZMIANA<br />#define LCD_D6 6<br />#define LCD_D5PORT  A<br />#define LCD_D5 4<br />#define LCD_D4PORT  A<br />#define LCD_D4 3<br />// tu definiujemy piny procesora do których podłączamy sygnały RS,RW, E<br />#define LCD_RSPORT A<br />#define LCD_RS 0<br />#define LCD_RWPORT A<br />#define LCD_RW 1<br />#define LCD_EPORT A<br />#define LCD_E 2[/syntax]<br /><br />Czyli zwolniłem PA7 i PA6 z LCD  i pomiary wykonuje na PA6 I PA7  nie wiem może tu jest problem ale pomiary się wykonują tylko  nie mogę ustawić ich niezależnie ?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 8 minutach ]</span></strong><br /><br />Problem polega na tym że jak wywołam funkcję:<br />[syntax=c]pomiar_k1();                                  z ustawionym portem  ADMUX = 7;  <br />// pomiar_k2();  a tej nie wywołam[/syntax]<br /><br />Pomiary wykonują się super  i na odwrót też czyli<br /><br />[syntax=c]//pomiar_k1();                                 <br /> pomiar_k2();  //a tej nie wywołam z ustawionym portem  ADMUX = 6;[/syntax]<br /><br />Ale jak wywołam tak czyli:<br /><br />[syntax=c]pomiar_k1();                                 <br />                   pomiar_k2();[/syntax]<br />Pomiary nie wykonują się niezależnie czyli jak zmieniam napięcie na PA6 to zmienia się również pomiar k1 i odwrotnie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18152">AKSELINEK</a> — 24 lis 2022, o 21:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kaz K]]></name></author>
<updated>2022-11-24T18:59:50+01:00</updated>
<published>2022-11-24T18:59:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236203#p236203</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236203#p236203"/>
<title type="html"><![CDATA[Re: Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236203#p236203"><![CDATA[
Dlaczego w inicjalizacji ustawiasz port ? Masz BB zerknij, tam Mirek pokazał jak to zrobić, kod ma kilka linijek.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20460">Kaz K</a> — 24 lis 2022, o 18:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[AKSELINEK]]></name></author>
<updated>2022-11-20T13:20:03+01:00</updated>
<published>2022-11-20T13:20:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236188#p236188</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236188#p236188"/>
<title type="html"><![CDATA[Pomiar w dwóch kanałach na Atmega 32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24353&amp;p=236188#p236188"><![CDATA[
Witam.<br />Mam problem z uruchomieniem pomiaru napięcia na dwóch osobnych kanałach.<br />Pomiar wykonuje się ale ale nie jest rozróżniany osobno.<br /><br />Czyli jeśli podam na wejście PA6 i PA7  różne napięcia to pomiary niestety będą jednakowe<br /><br />pomiar_k1();  to funkcja mierząca kanał 1<br />pomiar_k2();  to funkcja mierząca kanał 2<br /><br />[syntax=c]Podaje kod :<br />int main ( void) {<br /><br />PORTB |= KEY1; // podcigamy linie klawiszy do VCC<br />    _delay_ms( 2000 );  // chodzi o ustalenie poziomu napiecia i zakłucenia<br /><br />lcd_init();         // inicjalizacja wyswietlacza lcd<br /><br />lcd_cls();<br /><br />DDRD |= (1&lt;&lt;PD3)|(1&lt;&lt;PD4);<br />    PORTD |= (1&lt;&lt;PD3);<br /><br />PORTD &amp;= ~(1&lt;&lt;PD4);<br /><br />ADMUX = 7;                         // tu ustawiamy numer pomiarowego portu A<br />ADMUX |= VREF_256;<br />ADCSRA = (1&lt;&lt;ADEN)|(1&lt;&lt;ADPS2)|(1&lt;&lt;ADPS1)|(1&lt;&lt;ADPS0);<br /><br />DDRD |= (1&lt;&lt;PD7);<br />    PORTD ^= (1&lt;&lt;PD7);<br /><br />lcd_cls();<br /><br />sei();<br /><br />while(1) {<br /><br /> pomiar_k1();  // pomiar kanał 1<br /> pomiar_k2();  // pomiar kanał 1<br /><br />}<br /><br /> }<br /><br /><br />void pomiar_k1(void){<br /><br />       if (k2_flag == 0) {<br /><br />    ADMUX = 7;                         // tu ustawiamy numer pomiarowego portu A<br />ADMUX |= VREF_256;<br />ADCSRA = (1&lt;&lt;ADEN)|(1&lt;&lt;ADPS2)|(1&lt;&lt;ADPS1)|(1&lt;&lt;ADPS0);<br /><br />                     }<br /><br />       uint8_t kfil=1;<br /><br />         ADCSRA |= (1&lt;&lt;ADSC);<br />         while( (ADCSRA &amp; (1&lt;&lt;ADSC)) );<br />         value = ADCW;<br /><br />         sr=kfil*sr;<br />         sr=sr+value*VREF_256_MUL*1194;<br />         sr=sr/(kfil+1);<br /><br />         v=sr;<br /><br />       if(!czas)<br />                 {<br /><br />           lcd_locate(0,10);<br />           if(v1 || v2)lcd_str(&quot;+&quot;);<br />       else lcd_str(&quot; &quot;);<br />       v1 = v/1000000;<br />               lcd_int( v1 );<br />               lcd_str(&quot;.&quot;);<br /><br />           div_t divmod = div(v/1000, 1000);<br /><br />       v2 = divmod.rem;<br />       lcd_str(int_to_str(v2, liczba, 3, '0'));<br /><br />               lcd_locate(0,15);<br />               lcd_str(&quot;V&quot;);<br />               znv1&#91;1&#93;=0;<br />                       znv1&#91;0&#93;='+';<br /><br />                           sprintf(vv1,&quot;%s%i,%i&quot;,znv1,v1,(v2/100));  // przypisanie zmiennych do zapisu na sd<br /><br />                           czas=7;<br />                                    }<br /><br />                     else czas--;<br />                                     suma2 =(czytajP1*100)+(czytajP2);<br /><br />                                  k2_flag=1;<br /><br /><br /><br />}<br />void pomiar_k2(void){<br /><br />if (k2_flag == 1) {<br /><br />                ADMUX = 6;                         // tu ustawiamy numer pomiarowego portu A<br />ADMUX |= VREF_256;<br />ADCSRA = (1&lt;&lt;ADEN)|(1&lt;&lt;ADPS2)|(1&lt;&lt;ADPS1)|(1&lt;&lt;ADPS0);<br /><br />                  }<br /><br /> uint8_t kfilb=1;<br /><br />  ADCSRA |= (1&lt;&lt;ADSC);<br />  while( (ADCSRA &amp; (1&lt;&lt;ADSC)) );<br />  value2 = ADCW;<br /><br />  sr2=kfilb*sr2;<br />  sr2=sr2+value2*VREF_256_MUL*1194;<br />  sr2=sr2/(kfilb+1);<br /><br />  v=sr;<br /><br />if(!czas2)<br />          {<br /><br />    lcd_locate(1,10);<br />    if(v1b || v2b)lcd_str(&quot;-&quot;);<br />else lcd_str(&quot; &quot;);<br />v1b = vb/1000000;<br />        lcd_int( v1b );<br />        lcd_str(&quot;.&quot;);<br /><br />    div_t divmod = div(v/1000, 1000);<br /><br />v2b = divmod.rem;<br />lcd_str(int_to_str(v2b, liczba2, 3, '0'));<br /><br />        lcd_locate(1,15);<br />        lcd_str(&quot;P&quot;);<br />        znv1&#91;1&#93;=0;<br />                znv1&#91;0&#93;='+';<br /><br />                    sprintf(vv1,&quot;%s%i,%i&quot;,znv1,v1,(v2/100));  // przypisanie zmiennych do zapisu na sd<br /><br />                    czas2=7;<br />                             }<br /><br />              else czas2--;<br />                              suma =(czytajP1*100)+(czytajP2);<br /><br />                              k2_flag=0;<br /><br /><br />}[/syntax]<br /><br />Proszę o podpowiedzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18152">AKSELINEK</a> — 20 lis 2022, o 13:20</p><hr />
]]></content>
</entry>
</feed>