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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-02-04T15:33:50+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=58&amp;t=5675&amp;mode</id>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2014-02-04T15:33:50+01:00</updated>
<published>2014-02-04T15:33:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68371#p68371</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68371#p68371"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68371#p68371"><![CDATA[
Kody umieszczaj w znacznikach SYNTAX C wtedy są czytelniejsze i łatwiejsze do analizy<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 2 minutach ]</span></strong><br /><br />A dlaczego nie działa jak należy?<br />Może poczytaj i pooglądaj to:<br /><a href="http://mirekk36.blogspot.com/2012/10/drgania-stykow-to-bajki-wiec-jak-to.html"  class="postlink">http://mirekk36.blogspot.com/2012/10/drgania-stykow-to-bajki-wiec-jak-to.html</a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=189">MirkoT</a> — 4 lut 2014, o 15:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-02-04T15:26:22+01:00</updated>
<published>2014-02-04T15:26:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68368#p68368</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68368#p68368"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68368#p68368"><![CDATA[
<div class="quotetitle">in2dex napisał(a):</div><div class="quotecontent"><br />No ale na logikę to tylko jeden warunek if powinien wystarczyć i tak próbowałem ale wtedy to nie działa jak należy...<br />Po co stosuje się opóźnienie w tym wypadku i dlaczego nie działa bez tego opóźnienia??<br /></div><br /><br />A przecież w książce masz to opisane .... zajrzyj jeszcze do rozdziału o funkcji SuperDebounce i tam zobacz opisy ...<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />poza tym poczytaj to:<br /><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 --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 4 lut 2014, o 15:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[in2dex]]></name></author>
<updated>2014-02-04T15:11:06+01:00</updated>
<published>2014-02-04T15:11:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68367#p68367</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68367#p68367"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=68367#p68367"><![CDATA[
No walczę z tym programem no i nie do końca rozumiem wszystko. Wgrywa się do klocka i jakoś działa. <br />No ale na logikę to tylko jeden warunek if powinien wystarczyć i tak próbowałem ale wtedy to nie działa jak należy...<br />Po co stosuje się opóźnienie w tym wypadku i dlaczego nie działa bez tego opóźnienia??<br />[syntax=c]#include &lt;avr/io.h&gt;<br />    #include &lt;util/delay.h&gt;<br /><br />    <br /><br />    // dioda LED<br />    #define LED_PIN (1&lt;&lt;PC4) <br />    // klawisz K1<br />    #define KEY_PIN (1&lt;&lt;PC5)<br /><br /><br />    <br />    int main(void)<br />    {<br />            <br />            DDRC |= LED_PIN;                // kierunek pinu PC7 – wyjściowy<br />            DDRC &amp;= ~KEY_PIN;               // kierunek piny PC6 - wejściowu<br />            PORTC |= KEY_PIN;<br /><br />            <br />            while(1)<br />            {<br />                   if( !(PINC &amp; KEY_PIN) )<br />                    {<br />                           _delay_ms(80);<br />                            if( !(PINC &amp; KEY_PIN) )<br />                            {<br />                                    PORTC |= (1&lt;&lt;PC4);<br />                            }<br />                    }<br />            }<br />    }[/syntax]<br /><br /><span style="color: #FF0000">Kody wklejamy przy pomocy syntax=c - Różowy J.</span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2267">in2dex</a> — 4 lut 2014, o 15:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xor]]></name></author>
<updated>2014-01-25T22:50:50+01:00</updated>
<published>2014-01-25T22:50:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66690#p66690</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66690#p66690"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66690#p66690"><![CDATA[
Tylko trzeba pamiętać, że między ustawieniem PORTx a odczytem ustawionego stanu na PINx występuje pewne opóźnienie (powiedzmy 1 instrukcji)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1774">xor</a> — 25 sty 2014, o 22:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zaba]]></name></author>
<updated>2014-01-25T21:31:25+01:00</updated>
<published>2014-01-25T21:31:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66680#p66680</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66680#p66680"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66680#p66680"><![CDATA[
Dla mnie jest to dużo bardziej czytelne kiedy próbuje analizować<br />kogoś kod<br />Jeśli odczytuje PIN - wiem o co autorowi chodzi bo jest to rejestr wejściowy.<br />Jak pierwszy raz się spotkałem z czytaniem PORT-u nie mogłem załapać<br />o co chodziło autorowi bo do PORTx się coś zapisuje - a tu niespodzianka <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> (sądziłem że to błąd)<br /><br />Możliwe że są ważniejsze powody takiego rozwiązania ale ja znam tylko taki<br /><br />edit :<br />I znowu mój refleks szachisty <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1044">Zaba</a> — 25 sty 2014, o 21:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[LogTeam]]></name></author>
<updated>2014-01-25T21:22:11+01:00</updated>
<published>2014-01-25T21:22:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66679#p66679</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66679#p66679"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66679#p66679"><![CDATA[
Ciekawa sprawa. Dzieki <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=738">LogTeam</a> — 25 sty 2014, o 21:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-01-25T21:18:20+01:00</updated>
<published>2014-01-25T21:18:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66678#p66678</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66678#p66678"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66678#p66678"><![CDATA[
Gdzieś kiedyś wyczytałem (może w Oślej Łączce w Edw, nie pamiętam dokładnie), że jeśli np. uszkodzi nam się tranzystor wyjściowy w procku a my będziemy chcieli wystawić stan wysoki na wyjściu to ten stan może tam się nie pojawić. Odczyt rejestru PORT będzie wskazywał, że stan wysoki jest na końcówce ale odczyt rejestru PIN wskaże, że jednak stanu wysokiego nie ma.<br />Dlatego jeśli chce się odczytać faktyczny stan końcówki pracującej jako wyjście to lepiej użyć rejestru PIN.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 25 sty 2014, o 21:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[LogTeam]]></name></author>
<updated>2014-01-25T21:02:11+01:00</updated>
<published>2014-01-25T21:02:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66677#p66677</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66677#p66677"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66677#p66677"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />I teraz żeby sprawdzić czy na tym pinie jest stan wysoki lepiej jest odczytać stan rejestru PIN niż PORT.<br /></div><br />Nie zebym byl jakis wredny, ale moglbys powiedziec czemu lepiej uzyc PIN? Nigdy sie nad tym nie zastanawialem, dlatego pytam <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=738">LogTeam</a> — 25 sty 2014, o 21:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-01-25T20:40:30+01:00</updated>
<published>2014-01-25T20:40:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66676#p66676</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66676#p66676"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66676#p66676"><![CDATA[
Ja jeszcze dodam, że rejestr PIN można odczytywać nie tylko wtedy gdy jakaś końcówka pracuje jako wejście ale jako wyjście. <br />Np. na jakiś pin wystawiamy stan wysoki i zapalamy diodę. I teraz żeby sprawdzić czy na tym pinie jest stan wysoki lepiej jest odczytać stan rejestru PIN niż PORT.<br />Poniżej mały przykład<br />zamiast<br />[syntax=c]PORTC |= (1&lt;&lt;PC0);//stan wysoki - np. włącz LED<br />if( PORTC &amp; (1&lt;&lt;PC0))//jeśli na pinie PC0 jest stan wysoki<br />{<br />//to zrób coś<br />}[/syntax]<br />lepiej zrobić tak<br />[syntax=c]PORTC |= (1&lt;&lt;PC0);//stan wysoki - np. włącz LED<br />if( PINC &amp; (1&lt;&lt;PC0))//jeśli na pinie PC0 jest stan wysoki<br />{<br />//to zrób coś<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 25 sty 2014, o 20:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[krokodyl1220]]></name></author>
<updated>2014-01-25T17:20:49+01:00</updated>
<published>2014-01-25T17:20:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66647#p66647</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66647#p66647"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66647#p66647"><![CDATA[
<div class="quotetitle">in2dex napisał(a):</div><div class="quotecontent"><br />a co oznacza na wolne tłumaczenie PINC &amp; KEY_PIN?<br /></div><br />A może być na szybkie tłumaczenie? <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> (wybacz kiepski żarcik <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> )<br /><br />A więc wygląda to tak, że rejestr PINC jest rejestrem wejściowym, tj. zawiera informacje o tym, co do uC &quot;wchodzi&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> Jedynka oznacza, że mamy stan wysoki na którymś z pinów, przy czym numer bitu z rejestru oznacza numer pinu wejściowego. Operacja oznacza iloczyn logiczny numeru pinu z rejestrem wejściowym. Można to wytłumaczyć w ten sposób, że program sprawdza, jaką wartość ma pin rejestru PINC określony przez KEY_PIN. W praktyce działa to nieco inaczej, choć efekt jest taki sam. <br /><br /><!-- m --><a class="postlink" href="http://edu.i-lo.tarnow.pl/inf/alg/006_bin/0013.php" >http://edu.i-lo.tarnow.pl/inf/alg/006_bin/0013.php</a><!-- m --><br /><br /><div class="quotetitle">in2dex napisał(a):</div><div class="quotecontent"><br />I dlaczego w If zamiast PIN nie można użyć PORTx?<br />Czy PIN mówi nam co jest fizycznie na pinie z zewnątrz, a PORT to co DA uC na pin od siebie z wewnątrz?<br /></div><br />Otóż to <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=768">krokodyl1220</a> — 25 sty 2014, o 17:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[LogTeam]]></name></author>
<updated>2014-01-25T17:11:50+01:00</updated>
<published>2014-01-25T17:11:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66644#p66644</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66644#p66644"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66644#p66644"><![CDATA[
PINx nalezy do rejestru wejsciowego i to nim sprawdzamy stan panujacy na danym pinie. <br />PORTx nalezy do rejestru wyjsciowego i to nim ustawiamy stany na danym pinie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=738">LogTeam</a> — 25 sty 2014, o 17:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[in2dex]]></name></author>
<updated>2014-01-25T16:52:19+01:00</updated>
<published>2014-01-25T16:52:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66638#p66638</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66638#p66638"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66638#p66638"><![CDATA[
No i po pochwale, to się nazywa pomoc <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Dziękuje <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Już to zrozumiałem, zamiast podłączać wewnętrznym rezystorem do Vcc można zewnętrznym do GND i wejście nie będzie nam pływać- na to nie wpadłem <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Bo już warunek If to nie problem <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />a co oznacza na wolne tłumaczenie PINC &amp; KEY_PIN? I dlaczego w If zamiast PIN nie można użyć PORTx?<br />Czy PIN mówi nam co jest fizycznie na pinie z zewnątrz, a PORT to co DA uC na pin od siebie z wewnątrz?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2267">in2dex</a> — 25 sty 2014, o 16:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-01-25T16:24:56+01:00</updated>
<published>2014-01-25T16:24:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66629#p66629</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66629#p66629"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66629#p66629"><![CDATA[
<div class="quotetitle">krokodyl1220 napisał(a):</div><div class="quotecontent"><br />No to nie zauważyłem postu jacka, wstyd <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /></div><br />Żaden wstyd bo fajnie i rzeczowo wytłumaczyłeś <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=204">jacekk232</a> — 25 sty 2014, o 16:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[krokodyl1220]]></name></author>
<updated>2014-01-25T16:16:44+01:00</updated>
<published>2014-01-25T16:16:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66628#p66628</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66628#p66628"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66628#p66628"><![CDATA[
No to wtedy należy przeprowadzić nieco inne praktyki, bowiem:<br />- w linijce 25. kodu podanego przez programka pin key_pin podciągnięty zostaje wewnętrznym rezystorem do VCC - należy się tego pozbyć<br />- w warunku w linii 30 należy pozbyć się negacji, tj. zastosować konstrukcję if(PINC &amp; KEY_PIN)<br />- no i w ostatnim kroku zastosować zewnętrzny pulldown (czyli połączenie poprzez rezystor, np. 10k pinu mikrokontrolera do masy układu) - z przyczyny takiej samej, dla której stosuje się pullup, a wyszczególnionej w artykule<br /><br />Jeśli nie wyłączysz wewnętrznego pullupu, to przy pozbyciu się negacji program będzie cały czas wykrywał, że przycisk został wciśnięty. Natomiast niezastosowanie pulldownu może spowodować różne artefakty w rodzaju niechcianego przełączania po zbliżeniu palca i podobnych historii. <br />Tak pokrótce <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />EDIT: No to nie zauważyłem postu jacka, wstyd <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=768">krokodyl1220</a> — 25 sty 2014, o 16:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-01-25T16:09:53+01:00</updated>
<published>2014-01-25T16:09:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66626#p66626</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66626#p66626"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66626#p66626"><![CDATA[
Jeśli program ma reagować na klawisz podłączony do VCC to mógłby wyglądać tak:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br /> <br />// definicje dla preprocesora<br /> <br />// dioda LED<br />#define LED_PIN (1&lt;&lt;PC7)                        // definicja pinu do którego podłączona jest dioda<br /> <br />// klawisz K1<br />#define KEY_PIN (1&lt;&lt;PC6)<br /> <br /> <br />// ********************************************************* 1-sza wersja<br />int main(void)<br />{<br />        // ****** inicjalizacja *********<br />        DDRC |= LED_PIN;                // kierunek pinu PC7 – wyjściowy<br />        DDRC &amp;= ~KEY_PIN;               // kierunek piny PC6 - wejściowy<br />     <br /> <br />        // ****** pętla główna programu  *********<br />        while(1)<br />        {<br />                if( (PINC &amp; KEY_PIN) )<br />                {<br />                        _delay_ms(80);<br />                        if( (PINC &amp; KEY_PIN) )<br />                        {<br />                                PORTC |= (1&lt;&lt;PC7);<br />                        }<br />                }<br />        }<br />}[/syntax]<br />Dla pewności należało by podciągnąć linie klawisza do GND rezystorem np. 10k.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 25 sty 2014, o 16:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[in2dex]]></name></author>
<updated>2014-01-25T15:35:26+01:00</updated>
<published>2014-01-25T15:35:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66620#p66620</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66620#p66620"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66620#p66620"><![CDATA[
Tak, z klawiszem do GND wiem jak to zrobić, ale jak gdy chcę sterować jakimś urządzeniem co puszcza 5V albo klawiszem podłączonym do Vcc?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2267">in2dex</a> — 25 sty 2014, o 15:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[programek]]></name></author>
<updated>2014-01-25T13:50:46+01:00</updated>
<published>2014-01-25T13:50:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66590#p66590</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66590#p66590"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66590#p66590"><![CDATA[
Masz tu troszkę zmodyfikowany kod z bluebooka:<br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 2010-03-27<br /> *       Autor: Mirosław Kardaś<br /> */<br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br /> <br />// definicje dla preprocesora<br /> <br />// dioda LED<br />#define LED_PIN (1&lt;&lt;PC7)                        // definicja pinu do którego podłączona jest dioda<br /> <br />// klawisz K1<br />#define KEY_PIN (1&lt;&lt;PC6)<br /> <br /> <br />// ********************************************************* 1-sza wersja<br />int main(void)<br />{<br />        // ****** inicjalizacja *********<br />        DDRC |= LED_PIN;                // kierunek pinu PC7 – wyjściowy<br />        DDRC &amp;= ~KEY_PIN;               // kierunek piny PC6 - wejściowu<br />        PORTC |= KEY_PIN;<br /> <br />        // ****** pętla główna programu  *********<br />        while(1)<br />        {<br />                if( !(PINC &amp; KEY_PIN) )<br />                {<br />                        _delay_ms(80);<br />                        if( !(PINC &amp; KEY_PIN) )<br />                        {<br />                                PORTC |= (1&lt;&lt;PC7);<br />                        }<br />                }<br />        }<br />}[/syntax]<br /><br />Gdy naciśniesz klawisz podłączony do pinu PC6 to zapali się dioda podłączona do PC7<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1526">programek</a> — 25 sty 2014, o 13:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[krokodyl1220]]></name></author>
<updated>2014-01-25T13:07:06+01:00</updated>
<published>2014-01-25T13:07:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66587#p66587</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66587#p66587"/>
<title type="html"><![CDATA[Re: Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66587#p66587"><![CDATA[
A masz może Niebieskiego Mirka? Bo dokładnie taki program jest opisany w trzecim albo czwartym rozdziale warsztatów <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=768">krokodyl1220</a> — 25 sty 2014, o 13:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[in2dex]]></name></author>
<updated>2014-01-25T12:40:11+01:00</updated>
<published>2014-01-25T12:40:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66581#p66581</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66581#p66581"/>
<title type="html"><![CDATA[Prosty program, a rejser wejściowy a wyjściowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5675&amp;p=66581#p66581"><![CDATA[
Zgodnie z:<br /><a href="http://mirekk36.blogspot.com/2012/01/avr-porty-wewy-dir-podstawy.html"  class="postlink">http://mirekk36.blogspot.com/2012/01/avr-porty-wewy-dir-podstawy.html</a><br />mam problem zrozumieć pewne sprawy.<br />Czy mógłby mi ktoś zakodować prosty program który:<br />Gdy na jeden pin zostanie podane napięcie 5v to na innym pinie zapali się dioda.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2267">in2dex</a> — 25 sty 2014, o 12:40</p><hr />
]]></content>
</entry>
</feed>