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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-05-18T22:46:18+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=58&amp;t=7091&amp;mode</id>
<entry>
<author><name><![CDATA[kicajek]]></name></author>
<updated>2014-05-18T22:46:18+01:00</updated>
<published>2014-05-18T22:46:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81672#p81672</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81672#p81672"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81672#p81672"><![CDATA[
Witam<br />Do obsługi PORTC dopisz te &quot;odciągi  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> &quot;<br />[syntax=c]PORTC |=  (1&lt;&lt;DETONATOR)|(1&lt;&lt;KR1)|(1&lt;&lt;KR2);[/syntax] <br />Jeśli masz BB to tam w pierwszych lekcjach jest obsługa trzech klawiszy.<br />Twój sposób jest ... taki sobie; a w każdym razie nie może działać prawidłowo - raz ustawionego PORT'u B niczym nie zerujesz. <br />Poczytaj gdzieś jak zachowuje się wyjście przy zapisie &quot; |= &quot;.<br />W Twoim przypadku dla KEY &quot; DETONATOR &quot;musiałbyś użyć <br />[syntax=c]PORTB = GO|SR|OS[/syntax]<br />i analogicznie pozostałe guziczki; zawsze mogę się mylić  <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> <br /><br />Pozdr.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=826">kicajek</a> — 18 maja 2014, o 22:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin Szuracz]]></name></author>
<updated>2014-05-17T22:45:41+01:00</updated>
<published>2014-05-17T22:45:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81504#p81504</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81504#p81504"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81504#p81504"><![CDATA[
Prawda. Program zaczął działać poprawnie po napisaniu na wspak. Czyli też mogłem użyć  &quot;!&quot; i by działało tak jak napisałeś. Tak czy inaczej <span style="text-decoration: underline">zrealizowałem założenia programu.</span> <br />[syntax=c]/*<br /> * trzy.c<br /> *<br /> *  Created on: 14-05-2014<br /> *      Author: stary<br /> */<br /> #include &lt;avr/io.h&gt;<br />    #include &lt;util/delay.h&gt;<br />#define GO (1&lt;&lt;PB0)<br />#define SR (1&lt;&lt;PB1)<br />#define OS (1&lt;&lt;PB2)<br /><br /><br />#define ZAP_GO PORTB &amp;= ~GO<br />#define ZGA_GO PORTB |= GO<br /><br />#define ZAP_SR PORTB &amp;= ~SR<br />#define ZGA_SR PORTB |= SR<br /><br />#define ZAP_OS PORTB &amp;= ~OS<br />#define ZGA_OS PORTB |= OS<br /><br />   #define DETONATOR PC5<br />      #define KR1 PC4<br /> #define KR2 PC3<br /><br />main(void)<br />{<br /> DDRB  |= (1&lt;&lt;GO) | (1&lt;&lt;SR) | (1&lt;&lt;OS);<br /> PORTB |= 1&lt;&lt;GO | 1&lt;&lt;SR |1&lt;&lt;OS;<br /><br /> _delay_ms(1000);<br /><br />        // ****** inicjalizacja *********<br /><br />        // ****** pętla główna programu  *********<br /><br /><br /> while(1)<br /> {<br /> if(PINC &amp; (1&lt;&lt;DETONATOR))<br /><br /> {<br />  ZGA_GO;<br />  _delay_ms(10);<br /><br />  ZGA_SR;<br />  _delay_ms(10);<br />  ZGA_OS;<br />  _delay_ms(10);<br />  }<br />if(PINC &amp; (1&lt;&lt;KR1))<br />{<br />ZAP_GO;<br /> _delay_ms(10);<br /><br />ZAP_SR;<br /> _delay_ms(10);<br />}<br />if(PINC &amp; (1&lt;&lt;KR2))<br />{<br />ZAP_OS;<br /> _delay_ms(10);<br />}<br /><br />}<br />}[/syntax]<br /><br />Jednak, dopiero teraz zauważyłem, przy słabym świetle,<span style="text-decoration: underline">że słabo pali się pierwsza dioda</span>. Czy ten objaw może być spowodowany brakiem filtracji zasilania(z USB)? Czy może... (choć zobaczę z odłączonym programatorem) to wina własności Nóżki PB0? <br />Dioda na Porcie PB0 świeci bardzo marnie, przy tym programie, a przy np. zwykłym zapalaniu i gaszeniu ładnie i jasno.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4015">Marcin Szuracz</a> — 17 maja 2014, o 22:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kicajek]]></name></author>
<updated>2014-05-17T13:24:45+01:00</updated>
<published>2014-05-17T13:24:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81405#p81405</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81405#p81405"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81405#p81405"><![CDATA[
Witam<br />..a nie powinno być tak?<br />[syntax=c]if(!(PINC &amp; (1&lt;&lt;KR1)))[/syntax]<br /><br />Pozdr.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=826">kicajek</a> — 17 maja 2014, o 13:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin Szuracz]]></name></author>
<updated>2014-05-16T21:11:40+01:00</updated>
<published>2014-05-16T21:11:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81347#p81347</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81347#p81347"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81347#p81347"><![CDATA[
<img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> Mi się wydaje że powinno mi grać. <br />Czyli teoretycznie nie powinny się od razu zapalać te dwie diody. Jako że nie mam nawet podpiętych przycisków jeszcze... a te dwie diody się palą.<br /><br />To teraz poproszę o wyjaśnienie 3 linijki tego programu, być może to mi wyjaśni jak podpiąć przycisk. Bo boję się podpiąć między +5V a przycisk a nóżkę. <br />[syntax=c]int main(void) {<br /> <br /> PORTC |= KEY1;  // podciągamy linie klawiszy do VCC<br /> DDRC |= LED;   // pin LED jako WYjście<br /> <br />// oczekiwanie na ustalenie się stanu wysokiego na wejściu klawisza<br /> _delay_ms(10);[/syntax]<br /><br />OMG. Teraz jeszcze inaczej, jednak pomyślałem sobie że co mi tam. Najwyżej pojadę za parę dni kupić jeszcze ze 4 procesorki :/<br />I podpiąłem odwrotnie: +5V dioda(+300Łom) i nóżka... i mam stan odwrotny. Odkryłem stan przeciwny, zapewne. <br />Chyba wiem o co chodzi. <br />Wnioskując: Mój program działa odwrotnie, jak powinien. Choć w ogóle nie powinien działać  <img src="https://forum.atnel.pl/images/smilies/icon_e_ugeek.gif" alt=":ugeek:" title="Świr, i to jaki!" /><br /><br />Tak więc napisałem program na wspak. I znów dziwny problem. Zapalają się tylko 2 diody. Środkowa i dolna. <br />W innym programie sprawdzałem, i działają jedna po drugiej. A tu nie chcą.<br /><br />Teraz dodałem jeszcze delaye.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4015">Marcin Szuracz</a> — 16 maja 2014, o 21:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kurnachatka]]></name></author>
<updated>2014-05-16T21:03:57+01:00</updated>
<published>2014-05-16T21:03:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81345#p81345</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81345#p81345"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81345#p81345"><![CDATA[
<div class="quotetitle">Marcin Szuracz napisał(a):</div><div class="quotecontent"><br />Diody mam podpięte między GND i nóżkę.... przez co nie wiem jak to wpływa na odciąg (czy jak to się nazywa)<br /></div>   <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" />  Dobre <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 2 minutach ]</span></strong><br /><br />Podpowiem tylko że to coś to prawdopodobnie rezystor.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=930">kurnachatka</a> — 16 maja 2014, o 21:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin Szuracz]]></name></author>
<updated>2014-05-16T21:07:22+01:00</updated>
<published>2014-05-16T20:48:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81342#p81342</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81342#p81342"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81342#p81342"><![CDATA[
Ok. Dopisałem While do Wszystkiego. Jednak Czytam te rejestry kierunkowe i brak mi w nich czegoś. Nadal palą się 2 lampki. Środkowa i Dolna. <br />To co planowałem umieścić w Inicjalizacji.<br />[syntax=c]DDRC  &amp;=~ (1&lt;&lt;DETONATOR);<br />        PORTC |=  (1&lt;&lt;DETONATOR);<br />        DDRC  &amp;=~ (1&lt;&lt;KR1);<br />        PORTC |=  (1&lt;&lt;KR1);<br />        DDRC  &amp;=~ (1&lt;&lt;KR2);<br />        PORTC |=  (1&lt;&lt;KR2);[/syntax]<br /><br />Ok. Poczytam o tym drganiu przycisków.<br />Jednak ja się zastanawiam jeszcze czy to może być wina tego że:<br />Przyciski mam podpięte między GND i  nóżkę PC#<br />Diody mam podpięte między GND i nóżkę.... przez co nie wiem jak to wpływa na odciąg (czy jak to się nazywa) <br />Dodam jeszcze że prosty Flip Flap działa bez problemu&gt; <br />Tu oto Flip Flap. (sorki nie ten... był, ale już poprawiłem)<br />[syntax=c]/*<br /> * and.c<br /> *<br /> *  Created on: 13-05-2014<br /> *      Author: stary<br /> */<br /><br /><br />    #include &lt;avr/io.h&gt;<br />    #include &lt;util/delay.h&gt;<br /><br />    //definicja LED1 (do którego pinu podłączony LED1)<br />    #define LED1 PB1<br /><br />    //definicja LED2 (do którego pinu podłączony LED2)<br />    #define LED2 PB2<br /><br />    //definicja KLAWISZ (do którego pinu podłączony KLAWISZ)<br />    #define KLAWISZ PC5<br />    #define KLAWISZ2 PC4<br /><br />    void main(void)<br />    {<br />        //########### I/O ###########<br />        DDRB  |= (1&lt;&lt;LED1) | (1&lt;&lt;LED2); //Ustawienie pinów sterujących diodami<br />                                                   // jako wyjścia<br />        PORTB |= (1&lt;&lt;LED1); //Ustawienie stanu wysokiego na wyjściu sterującym LED1<br />                                   //(stan początkowy)<br /><br />        DDRC  &amp;=~ (1&lt;&lt;KLAWISZ); //Ustawienie pinu klawisza jako wejście<br />        PORTC |=  (1&lt;&lt;KLAWISZ); //włączenie rezystora podciągającego tzw. Pull_up<br />        DDRC  &amp;=~ (1&lt;&lt;KLAWISZ2); //Ustawienie pinu klawisza jako wejście<br />        PORTC |=  (1&lt;&lt;KLAWISZ2); //włączenie rezystora podciągającego tzw. Pull_up<br />        //##########################<br /><br />       while (1) //Pętla główna<br />       {<br />          if(PINC &amp; (1&lt;&lt;KLAWISZ))//jeśli klawisz nie wciśniety<br />          {<br />            PORTB ^=(1&lt;&lt;LED1); //suma modulo 2 (XOR) stanu poprzedniego<br />                               //na porcie i pinu LED1 (zmiana stanu na przeciwny)<br /><br />            PORTB ^=(1&lt;&lt;LED2); //suma modulo 2 (XOR) stanu poprzedniego na porcie<br />                              //pinu LED2 (zmiana stanu na przeciwny)<br /><br />            _delay_ms(1000); //opóźnienie 1 s<br />          }<br />         if(PINC &amp; (1&lt;&lt;KLAWISZ2))<br />{<br />           PORTB ^=(1&lt;&lt;LED1); //suma modulo 2 (XOR) stanu poprzedniego<br />                                 //na porcie i pinu LED1 (zmiana stanu na przeciwny)<br /><br />            PORTB ^=(1&lt;&lt;LED2); //suma modulo 2 (XOR) stanu poprzedniego na porcie<br />                                //pinu LED2 (zmiana stanu na przeciwny)<br /><br />             _delay_ms(1000); //opóźnienie 1 s<br />}<br />        }<br />    }[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4015">Marcin Szuracz</a> — 16 maja 2014, o 20:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kurnachatka]]></name></author>
<updated>2014-05-16T20:22:22+01:00</updated>
<published>2014-05-16T20:22:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81340#p81340</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81340#p81340"/>
<title type="html"><![CDATA[Re: Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81340#p81340"><![CDATA[
Na pewno brakuje pętli nieskończonej np.  while(1)<br />[syntax=c]while(1){<br />        if(PINC &amp; (1&lt;&lt;DETONATOR))<br />  {<br />          ZAP_GO;<br /> <br />          ZAP_SR;<br /> <br />          ZAP_OS;<br />  }<br />        if(PINC &amp; (1&lt;&lt;KR1))<br />        {<br />                ZGA_GO;<br /> <br />                ZGA_SR;<br />        }<br />        if(PINC &amp; (1&lt;&lt;KR2))<br />        {<br />                ZGA_OS;<br />        }<br />}[/syntax]<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 7 minutach ]</span></strong><br /><br />Proponuję jeszcze zajrzeć tutaj <br /><!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2012/10/obsuga-klawiszy-drgania-stykow-cd2.html" >http://mirekk36.blogspot.com/2012/10/ob ... w-cd2.html</a><!-- m --><br />jeżeli chodzi o drgania styków itp. bo bez tego się nie obejdzie prędzej czy później  <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=930">kurnachatka</a> — 16 maja 2014, o 20:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin Szuracz]]></name></author>
<updated>2014-05-16T20:13:09+01:00</updated>
<published>2014-05-16T20:13:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81339#p81339</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81339#p81339"/>
<title type="html"><![CDATA[Braki w Programie.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7091&amp;p=81339#p81339"><![CDATA[
Potrzebuję pomocy w uzupełnieniu programu. <br />Założenia są takie:<br />Jeśli wcisnę DETONATOR to&gt; Zapal 3 lampki<br />Jeśli wcisnę KR1 to&gt; Zgaś Górną i środkową.<br />Jeśli wcisnę KR2 to&gt; Zgaś dolną. <br />Wiem że nie klei mi się kupy ale nie wiem co wprowadzić do Inicjalizacji.<br /><br />[syntax=c]/*<br /> * trzy.c<br /> *<br /> *  Created on: 14-05-2014<br /> *      Author: stary<br /> */<br /> #include &lt;avr/io.h&gt;<br /> #include &lt;util/delay.h&gt;<br />#define GO (1&lt;&lt;PB0) //GORNA LAMPKA<br />#define SR (1&lt;&lt;PB1) //SRODKOWA LAMPKA<br />#define OS (1&lt;&lt;PB2) //DOLNA LAMPKA<br /><br /><br />#define ZAP_GO PORTB &amp;= ~GO<br />#define ZGA_GO PORTB |= GO<br /><br />#define ZAP_SR PORTB &amp;= ~SR<br />#define ZGA_SR PORTB |= SR<br /><br />#define ZAP_OS PORTB &amp;= ~OS<br />#define ZGA_OS PORTB |= OS<br /><br />   #define DETONATOR PC5<br />      #define KR1 PC4<br /> #define KR2 PC3<br /><br />main(void)<br />{<br /><br />        // ****** inicjalizacja *********<br /> DDRB  |= (1&lt;&lt;GO) | (1&lt;&lt;SR) | (1&lt;&lt;OS);<br /> PORTB |= 1&lt;&lt;GO | 1&lt;&lt;SR |1&lt;&lt;OS;<br />//Tu jeszcze powinno coś być... o przyciskach... jednak nieważne co wpiszę to i tak świecą się 2 diody. <br /><br /><br />    <br /><br />        // ****** pętla główna programu  *********<br /><br />if(PINC &amp; (1&lt;&lt;DETONATOR))<br />  {<br />  ZAP_GO;<br /><br />  ZAP_SR;<br /><br />  ZAP_OS;<br />  }<br />if(PINC &amp; (1&lt;&lt;KR1))<br />{<br />ZGA_GO;<br /><br />ZGA_SR;<br />}<br />if(PINC &amp; (1&lt;&lt;KR2))<br />{<br />ZGA_OS;<br />}<br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4015">Marcin Szuracz</a> — 16 maja 2014, o 20:13</p><hr />
]]></content>
</entry>
</feed>