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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-11-11T20:48:34+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=8&amp;t=19587&amp;mode</id>
<entry>
<author><name><![CDATA[kaka0204]]></name></author>
<updated>2017-11-11T20:48:34+01:00</updated>
<published>2017-11-11T20:48:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198731#p198731</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198731#p198731"/>
<title type="html"><![CDATA[Re: Tact switch + LCD + dioda]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198731#p198731"><![CDATA[
Masz skopane po całości. Spróbuj tak<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &quot;HD44780.h&quot;<br />     <br />#define LED1 (1&lt;&lt;PC5)<br />#define LED_ON PORTC |= LED1<br />#define LED_OFF PORTC &amp;= ~LED1<br />#define LED_TOG PORTC ^=LED1<br />#define KEY_PIN (1&lt;&lt;PC2)<br />#define KEY_DOWN !(PINC &amp; KEY_PIN)<br /><br /><br />uint8_t flaga;<br />     <br />int main(void)<br />{<br />     <br />     <br />     <br />     <br />        LCD_Initalize();<br />        LCD_Clear();<br />     <br />       // LCD_GoTo(0,0);<br />       // LCD_WriteText(&quot;.Dioda #1 OFF  &lt;&lt;&quot;);<br />     <br />     <br />     <br />    <br />     <br />     <br />                       DDRC |= LED1;<br />                       PORTC |=LED1;<br />                       DDRC &amp;= ~KEY_PIN;<br />                       PORTC |= KEY_PIN;<br />     <br />     <br />while(1)<br />{<br />                     if(!flaga)<br />                     {<br />                             LCD_GoTo(0,0);<br />                             LCD_WriteText(&quot;.Dioda #1 OFF    &lt;&lt;&quot;);<br />                             _delay_ms(80);<br />                     }<br />                     else<br />                       {<br />                             LCD_GoTo(0,0);<br />                             LCD_WriteText(&quot;.Dioda #1 ON    &lt;&lt;&quot;);<br />                             _delay_ms(80);<br />                       } <br />                      <br />     <br />                           if(KEY_DOWN)<br />                           {<br />                              LED_TOG;<br />                              flaga++;<br />                              _delay_ms(200);<br />                           }<br /><br />                           if(flaga&gt;1) flaga=0;<br />                     }<br />    }[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=889">kaka0204</a> — 11 lis 2017, o 20:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jakub321]]></name></author>
<updated>2017-11-11T15:12:17+01:00</updated>
<published>2017-11-11T15:12:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198711#p198711</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198711#p198711"/>
<title type="html"><![CDATA[Re: Tact switch + LCD + dioda]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198711#p198711"><![CDATA[
Gdy wykasuje pierwszy while dioda dziala tylko przy przytrzymanym przycisku<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1610">Jakub321</a> — 11 lis 2017, o 15:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-11-11T15:00:45+01:00</updated>
<published>2017-11-11T15:00:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198707#p198707</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198707#p198707"/>
<title type="html"><![CDATA[Re: Tact switch + LCD + dioda]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198707#p198707"><![CDATA[
1. po co dwa razy while(1)?? ten pierwszy zbędny<br />2. program działa jak napisałeś. masz wpoisane LED_TOG więc program zapala i gasi leda ale nzawsze wykona się <br />[syntax=c]LCD_WriteText(&quot;.Dioda #1 ON    &lt;&lt;&quot;);[/syntax]<br /><br />Podejdż do tematu inaczej. zmieniaj wartość zmiennej po nacisnieciu przycisku a dopiero pozniej zapalaj lub gaś leda i zmiejiaj napis w zależności od wartości zmiennej.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 11 lis 2017, o 15:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jakub321]]></name></author>
<updated>2017-11-11T14:53:26+01:00</updated>
<published>2017-11-11T14:53:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198705#p198705</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198705#p198705"/>
<title type="html"><![CDATA[Tact switch + LCD + dioda]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19587&amp;p=198705#p198705"><![CDATA[
Witam,<br /><br />Borykam sie z problemem petli , po nacisnieciu przycisku zapala sie dioda i pojawia sie napis dioda #1 ON , po ponownym nacisnieciu dioda gasnie ale program nie daje dioda #1 OFF , probowalem w roznej kolejnosci dodac komende ale nie dziala, prosze o pomoc<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />    #include &lt;util/delay.h&gt;<br />    #include &lt;avr/interrupt.h&gt;<br />    #include &lt;avr/pgmspace.h&gt;<br />    #include &quot;HD44780.h&quot;<br /><br />#define LED1 (1&lt;&lt;PC5)<br />#define LED_ON PORTC |= LED1<br />#define LED_OFF PORTC &amp;= ~LED1<br />#define LED_TOG PORTC ^=LED1<br />#define KEY_PIN (1&lt;&lt;PC2)<br />#define KEY_DOWN !(PINC &amp; KEY_PIN)<br /><br /> int main(void)<br />    {<br /><br /><br /><br /><br />    LCD_Initalize();<br />    LCD_Clear();<br /><br />   // LCD_GoTo(0,0);<br />   // LCD_WriteText(&quot;.Dioda #1 OFF  &lt;&lt;&quot;);<br /><br /><br /><br />while(1){<br /><br /><br />           DDRC |= LED1;<br />   PORTC |=LED1;<br />   DDRC &amp;= ~KEY_PIN;<br />   PORTC |= KEY_PIN;<br /><br /><br /> while(1)<br />      {<br />         if(KEY_DOWN)<br />         {<br />         LCD_GoTo(0,0);<br />         LCD_WriteText(&quot;.Dioda #1 ON    &lt;&lt;&quot;);<br />                 _delay_ms(80);<br /><br />               if(KEY_DOWN)<br />               {<br />                  LED_TOG;<br />                  _delay_ms(200);<br /><br />               }<br />         }<br />}[/syntax]<br /><br />Czy ktos z was wie w ktorym miejscu dac  LCD_WriteText(&quot;.Dioda #1 OFF  &lt;&lt;&quot;) zeby po gaszeniu diody LCD dal OFF.<br /><br />Pozdrawiam<br />Jakub<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1610">Jakub321</a> — 11 lis 2017, o 14:53</p><hr />
]]></content>
</entry>
</feed>