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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2012-12-23T18:12:25+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=1977&amp;mode</id>
<entry>
<author><name><![CDATA[kila]]></name></author>
<updated>2012-12-23T18:12:25+01:00</updated>
<published>2012-12-23T18:12:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21991#p21991</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21991#p21991"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21991#p21991"><![CDATA[
Dzięki serdeczne za naprowadzenie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Na pewno to zrobię <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br /><br />Wesołych Świąt!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=699">kila</a> — 23 gru 2012, o 18:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-12-23T17:57:22+01:00</updated>
<published>2012-12-23T17:57:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21985#p21985</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21985#p21985"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21985#p21985"><![CDATA[
Wiem wiem jak to świeżbi człowieka żeby już - już od razu <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> sam tak mam kurczę <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> i bardzo dobrze cię rozumiem z jednej strony<br /><br />ale dlatego na razie uwierz - że DELAY nawet minimalny w przerwaniu to po prostu TRAGEDIA, KATASTROFA - masakra. Chodzi o to że przecież przerwanie - musi na chwilkę przerwać działanie programu głównego - w ogóle zawiesza jego pracę. Dlatego MUSI się WYKONAĆ JAK NAJSZYBCIEJ bo inaczej to zabiera czas programowi głównemu - a ty w nim właśnie odliczasz tzn próbujesz odliczać czas <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br /><br />Musisz poznać mechanizm flag - prosty mechanizm i gwarantuję ci że jest on właśnie dalej w książce opisany i to właśnie przy RTC <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />to nawet sięgnij sobie na chybcika do dalszego rozdziału - no ale jak będziesz miał coraz większy mętlik w głowie - to jednak jak mówię - wróć do przeczytania raz od początku do końca - to się jak na razie każdemu sprawdza. Bo inaczej to nawet się zniechęcić można na początku .... po prostu od razu WSZYSTKIEGO w 5 minut człowiek nie da rady się nauczyć.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 gru 2012, o 17:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kila]]></name></author>
<updated>2012-12-23T17:44:47+01:00</updated>
<published>2012-12-23T17:44:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21983#p21983</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21983#p21983"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21983#p21983"><![CDATA[
Zgadza się, nie przeczytałem całej książki od deski do deski, ale nie mogłem się doczekać, żeby już zacząć pisać <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=699">kila</a> — 23 gru 2012, o 17:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-12-23T17:41:39+01:00</updated>
<published>2012-12-23T17:41:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21981#p21981</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21981#p21981"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21981#p21981"><![CDATA[
<div class="quotetitle">kila napisał(a):</div><div class="quotecontent"><br />A dlatego ten delay w przerwaniu, bo wtedy, nie wiedzieć, czemu mi dioda nie mrugała...<br /></div><br /><br />No to MUSISZ PAN zrozumieć - że jak chcesz programować mikrokontrolery - to ZAPOMNIJ RAZ NA ZAWSZE o DELAYACH w przerwaniach - a miganie diody ? nic nie stoi na przeszkodzie żeby migała - tylko nie w przerwaniu <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... No musisz sobie tą ZASADĘ zakodować od samego początku nauki<br /><br />ale może powiem inaczej - bo widzę że chyba tak jak spora część czytelników - nie przeczytałeś najpierw chociaż JEDEN RAZ - jedyny raz - całej książki tak od deski do deski ciurkiem - nawet jeśli czegoś nie rozumiesz <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> .... no i teraz tak masz - ją trzeba raz tak przeczytać - a potem można już na wyrywki - od razu MNÓSTWO rzeczy by ci się wyjaśniło i nawet nie męczyłbyś się z tym <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />A dioda bez DELAY'a w przerwaniu mrugała mrugała - tylko że trzeba by byłoby matrixem żeby to zjawisko zobaczyć....<br /><br />Diodą to się mruga w programie głównym a jak w przerwaniach to chociażby tak<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">PORTB ^=  LED;</div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 gru 2012, o 17:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kila]]></name></author>
<updated>2012-12-23T17:36:14+01:00</updated>
<published>2012-12-23T17:36:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21976#p21976</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21976#p21976"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21976#p21976"><![CDATA[
A dlatego ten delay w przerwaniu, bo wtedy, nie wiedzieć, czemu mi dioda nie mrugała...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=699">kila</a> — 23 gru 2012, o 17:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-12-23T17:32:21+01:00</updated>
<published>2012-12-23T17:32:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21974#p21974</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21974#p21974"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21974#p21974"><![CDATA[
No popatrz przed chwilą w jakimś temacie sam niby zobaczyłeś że dodawania DELAY'ów w przerwaniach to po prostu TRAGEDIA - ja jeszcze ci to doprecyzowałem a ty znowu co??? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> no znowu DELAY w przerwaniu <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> eeeeeh<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 gru 2012, o 17:32</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kila]]></name></author>
<updated>2012-12-23T17:25:34+01:00</updated>
<published>2012-12-23T17:25:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21972#p21972</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21972#p21972"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21972#p21972"><![CDATA[
Here you are!<br /><br />[syntax=c]<br />/*<br /> * main.c<br /> *<br /> *  Created on: 2012-12-23<br /> *      Author: mateusz.kilinski<br /> */<br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />#include &quot;d_led.h&quot;<br /><br /><br />#define LED (1&lt;&lt;PB0)<br />#define BUTTON_M(1&lt;&lt;PB1)<br />#define BUTTON_H(1&lt;&lt;PB2)<br />#define PRZERWANIE(1&lt;&lt;PD2)<br /><br />#define LED_ONPORTB &amp;= ~LED<br />#define LED_OFFPORTB |=  LED<br />#define LED_TOGPORTB ^=  LED<br /><br />volatile int h1,h0,m1,m0,s1,s0, flaga = 0;<br /><br />uint8_t key_pressed(uint8_t key);<br /><br />int main(void)<br />{<br /><br /><br />//*************************KONFIGURACJA PORTÓW*************************//<br /><br />DDRB |=  LED; //port jako wyjście (stan H)<br />PORTB|= LED;//wygaszenie diody (wysłanie stanu H na pin LED<br /><br />DDRB&amp;=~(BUTTON_M | BUTTON_H) ;//port jako wejście (stan L)<br />PORTB|= (BUTTON_M | BUTTON_H);//podciągnięcie klawisza pod H<br /><br />DDRD&amp;=  ~(PRZERWANIE);<br />PORTD|=   (PRZERWANIE);<br /><br />//***********************INICJALIZACJA PRZERWANIA INT0****************//<br /><br />MCUCR |= (1&lt;&lt;ISC01);//konfiguracja wywołania przerwania<br />GICR |=  (1&lt;&lt;INT0);//włączenie przerwania INT0<br /><br /><br />d_led_init();//inicjalizacja obsługi 7-seg<br />sei();//uruchomienie przerwań<br /><br />h0 = 0;//godziny - lewy wyświetlacz<br />h1 = 0;//godziny - prawy wyświetlacz<br /><br />m0 = 0;//minuty - lewy wyświetlacz<br />m1 = 0;//minuty - prawy wyświetlacz<br /><br />s1 = 0;//sekundy dziesiątki<br />s0 = 0;//sekundy jedności<br /><br />while(1)<br />{<br />s0 += flaga;<br /><br />if (flaga &gt; 9)<br />{<br />flaga = 0;<br />s0 = 0;<br />s1++;<br /><br />if (s1 &gt; 5)<br />{<br />s1 = 1;<br />m0++;<br /><br />if (m0 &gt; 9)<br />{<br />m0 = 0;<br />m1++;<br /><br />if (m1 &gt; 5)<br />{<br />m1 = 0;<br />h0++;<br /><br />if (h1 == 2 &amp; h0 &gt; 3)<br />{<br />h0 = 0;<br />h1 = 0;<br />m0 = 0;<br />m1 = 0;<br />s0 = 0;<br />s1 = 0;<br />flaga = 0;<br /><br /><br /><br />}<br />else if (h0 &gt; 9)<br />{<br />h0 = 0;<br />h1++;<br />}<br />}<br />}<br />}<br />}<br /><br /><br />cy1 = h1;<br />cy2 = h0;<br />cy3 = m1;<br />cy4 = m0;<br /><br /><br />if (key_pressed(BUTTON_M))<br />{<br />m0++;<br />_delay_ms(50);<br />if (m0 &gt; 9)<br />{<br />m0 = 0;<br />m1++;<br />if (m1 &gt; 5)<br />{<br />m1 = 0;<br />m0 = 0;<br />}<br />}<br />}<br />if (key_pressed(BUTTON_H))<br />{<br />h0++;<br />_delay_ms(50);<br />if (h1 == 2 &amp; h0 &gt; 3)<br />{<br />h0 = 0;<br />h1 = 0;<br />m0 = 0;<br />m1 = 0;<br />}<br />else if (h0 &gt; 9)<br />{<br />h0 = 0;<br />h1++;<br />}<br />}<br /><br />}<br />}<br /><br />uint8_t key_pressed(uint8_t key)<br />{<br />if (!(PINB &amp; key)){<br />_delay_ms(80);<br />return 1;<br />}<br />return 0;<br />}<br /><br /><br />ISR(INT0_vect)<br />{<br />flaga++;<br />LED_ON;<br />_delay_ms(1);<br />LED_OFF;<br />}<br /><br />[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=699">kila</a> — 23 gru 2012, o 17:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jaglarz]]></name></author>
<updated>2012-12-23T17:22:41+01:00</updated>
<published>2012-12-23T17:22:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21970#p21970</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21970#p21970"/>
<title type="html"><![CDATA[Re: Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21970#p21970"><![CDATA[
Wklej kod tego coś co niby działa.  <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=471">Jaglarz</a> — 23 gru 2012, o 17:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kila]]></name></author>
<updated>2012-12-23T17:20:29+01:00</updated>
<published>2012-12-23T17:20:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21969#p21969</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21969#p21969"/>
<title type="html"><![CDATA[Zegarek na zestawie ATB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1977&amp;p=21969#p21969"><![CDATA[
Witam!<br /><br />Chciałem zrobić sobie zegarek na wyświetlaczu 7-segmentowym. Użyłem do tego przerwania INT0, do którego podłączona jest noga INT od PCF, który powinien generować sygnał co sekundę. Na tej podstawie, napisałem coś w C, i niby działa, ale w ciągu 20 minut, zegarek przyspieszył już o 4 minuty <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> to trochę za dużo. Jak można to poprawić? Macie doświadczenie w tym temacie? Może lepiej użyć czegoś innego do generowania impulsu co jedną sekundę?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=699">kila</a> — 23 gru 2012, o 17:20</p><hr />
]]></content>
</entry>
</feed>