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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-09-29T13:47:25+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=30&amp;t=19215&amp;mode</id>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-29T13:47:25+01:00</updated>
<published>2017-09-29T13:47:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=196029#p196029</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=196029#p196029"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=196029#p196029"><![CDATA[
Witam, <br />ogólnie zaczęło działać, wyszedł z tego termometr ze wskaźnikiem na czterech ledach, <br />kod dla potomnych poniżej może komuś się.<br />Dziękuje wszystkim za pomoc.<br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> * ATtiny 85<br /> * osc wewnętrzny 8MHz<br /> */<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;1Wire/ds18x20.h&quot;<br /><br />#define LED_PIN (1&lt;&lt;PB1)            // definicja pinu do którego podłączona jest dioda<br />#define LED_ON PORTB &amp;= ~LED_PIN    // makrodefinicja – załączenie diody<br />#define LED_OFF PORTB |= LED_PIN    // makrodefinicja – wyłączenie diody<br />#define LED_PIN1 (1&lt;&lt;PB2)            // definicja pinu do którego podłączona jest dioda<br />#define LED_ON1 PORTB &amp;= ~LED_PIN1    // makrodefinicja – załączenie diody<br />#define LED_OFF1 PORTB |= LED_PIN1    // makrodefinicja – wyłączenie diody<br />#define LED_PIN2 (1&lt;&lt;PB3)            // definicja pinu do którego podłączona jest dioda<br />#define LED_ON2 PORTB &amp;= ~LED_PIN2    // makrodefinicja – załączenie diody<br />#define LED_OFF2 PORTB |= LED_PIN2    // makrodefinicja – wyłączenie diody<br /><br /><br />#define LED_PIN3 (1&lt;&lt;PB4)            // definicja pinu do którego podłączona jest dioda<br />#define LED_ON3 PORTB &amp;= ~LED_PIN3    // makrodefinicja – załączenie diody<br />#define LED_OFF3 PORTB |= LED_PIN3    // makrodefinicja – wyłączenie diody<br /><br /><br /><br /><br /><br /><br />uint8_t czujniki_cnt;        /* ilość czujników na magistrali */<br />volatile uint8_t s1_flag;    /* flaga tyknięcia timera co 1 sekundę */<br />volatile uint8_t sekundy;    /* licznik sekund 0-59 */<br />uint8_t histereza = 1;<br />uint8_t zadana_temperaura = 27; //ustawienie zadanej temperatury od jakiej ma wskazywać<br />uint8_t subzero, cel, cel_fract_bits;<br /><br />int main(void) {<br /><br /><br />    DDRB |= LED_PIN;        // kierunek pinu PB1 – wyjściowy<br />    DDRB |= LED_PIN1;<br />    DDRB |= LED_PIN2;<br />    DDRB |= LED_PIN3;<br /><br />    /* ustawienie TIMER0 dla F_CPU=11,0592MHz */<br />    TCCR0A |= (1&lt;&lt;WGM01);                /* tryb CTC / dla M32  TCCR0 |= (1&lt;&lt;WGM01);  */<br />    TCCR0B |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00);        /* preskaler = 1024 /dla M32 TCCR0 |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00); */<br />    OCR0A = 108;                            /* dodatkowy podział przez 108 (rej. przepełnienia) / dla  M32  OCR0 = 108;       */<br />    TIMSK |= (1&lt;&lt;OCIE0A);                /* zezwolenie na przerwanie CompareMatch /dla M32 TIMSK |= (1&lt;&lt;OCIE0);   */<br />    /* przerwanie wykonywane z częstotliwością ok 10ms (100 razy na sekundę) */<br />    /* do naszych celów nie musi być to bardzo dokładne 10ms */<br /><br /><br />    /* sprawdzamy ile czujników DS18xxx widocznych jest na magistrali */<br />    czujniki_cnt = search_sensors();<br /><br />    /* wysyłamy rozkaz wykonania pomiaru temperatury<br />     * do wszystkich czujników na magistrali 1Wire<br />     * zakładając, że zasilane są w trybie NORMAL,<br />     * gdyby był to tryb Parasite, należałoby użyć<br />     * jako pierwszego prarametru DS18X20_POWER_PARASITE */<br />    DS18X20_start_meas( DS18X20_POWER_EXTERN, NULL );<br /><br />    /* czekamy 750ms na dokonanie konwersji przez podłączone czujniki */<br />    _delay_ms(750);<br /><br />    /* dokonujemy odczytu temperatury z pierwszego czujnika o ile został wykryty */<br />    /* wyświetlamy temperaturę gdy czujnik wykryty */<br />    if( DS18X20_OK == DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) )<br /><br /><br />    sei();    /* włączamy globalne przerwania */<br /><br /><br /><br />    /* pętla nieskończona */<br />    while(1) {<br /><br />        if(s1_flag) {    /* sprawdzanie flagi tyknięć timera programowego co 1 sekundę */<br /><br />            /* co trzy sekundy gdy reszta z dzielenia modulo 3 == 0 sprawdzaj ilość dostępnych czujników */<br />           if( 0 == (sekundy%3) ) czujniki_cnt = search_sensors();<br /><br />            /* co trzy sekundy gdy reszta z dzielenia modulo 3 == 1 wysyłaj rozkaz pomiaru do czujników */<br />            if( 1 == (sekundy%3) ) DS18X20_start_meas( DS18X20_POWER_EXTERN, NULL );<br /><br />            /* co trzy sekundy gdy reszta z dzielenia modulo 3 == 2 czyli jedną sekundę po rozkazie konwersji<br />             *  dokonuj odczytu i wyświetlania temperatur z 2 czujników jeśli są podłączone, jeśli nie<br />             *  to pokaż komunikat o błędzie<br />             */<br />            if( 2 == (sekundy%3) ) {<br />              if( DS18X20_OK == DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) );<br />            }<br /><br /><br />            /* zerujemy flagę aby tylko jeden raz w ciągu sekundy wykonać operacje */<br />            s1_flag=0;<br /><br />        } /* koniec sprawdzania flagi */<br /><br /><br />      if (zadana_temperaura + histereza/2 &lt; cel) LED_ON;<br />      if (zadana_temperaura - histereza/2 &gt; cel)  LED_OFF;<br />      if ((zadana_temperaura + 1) + histereza/2 &lt; cel) LED_ON1;<br />      if ((zadana_temperaura + 1) - histereza/2 &gt; cel)  LED_OFF1;<br />      if ((zadana_temperaura + 2) + histereza/2 &lt; cel) LED_ON2;<br />      if ((zadana_temperaura + 2) - histereza/2 &gt; cel)  LED_OFF2;<br />      if ((zadana_temperaura + 3) + histereza/2 &lt; cel) LED_ON3;<br />      if ((zadana_temperaura + 3) - histereza/2 &gt; cel)  LED_OFF3;<br /><br /><br /><br /><br />    } /* koniec pętli nieskończonej */<br />}<br /><br />/* ================= PROCEDURA OBSŁUGI PRZERWANIA – COMPARE MATCH */<br />/* pełni funkcję timera programowego wyznaczającego podstawę czasu = 1s */<br />ISR(TIMER0_COMPA_vect)   //m32 ISR(TIMER0_COMP_vect)<br />{<br />    static uint8_t cnt=0;    /* statyczna zmienna cnt do odliczania setnych ms */<br /><br />    if(++cnt&gt;99) {    /* gdy licznik ms &gt; 99 (minęła 1 sekunda) */<br />        s1_flag=1;    /* ustaw flagę tyknięcia sekundy */<br />        sekundy++;    /* zwiększ licznik sekund */<br />        if(sekundy&gt;59) sekundy=0; /* jeśli ilość sekund &gt; 59 - wyzeruj */<br />        cnt=0;    /* wyzeru licznik setnych ms */<br />        _delay_ms(20);<br /><br />    }<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 29 wrz 2017, o 13:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[czarekgr]]></name></author>
<updated>2017-09-28T13:58:56+01:00</updated>
<published>2017-09-28T13:58:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195934#p195934</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195934#p195934"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195934#p195934"><![CDATA[
<div class="quotetitle">skalarro napisał(a):</div><div class="quotecontent"><br /><div class="quotetitle">krzysssztof napisał(a):</div><div class="quotecontent">u Chińczyków gotowy (zmontowany, zaprogramowany) termostat z termistorem NTC 0,5%, wyświetlaczem LED i przekaźnikiem kosztuje z wysyłką niecałe 2$.<br /></div><br />Byćmoże, ale nie o to tutaj chodzi. Idąc tym tropem, to to forum jest zbędne, bo 95% rzeczy tutaj budowanych i tematów poruszanych u Chińczyków jest za śmieszne pieniądze. <br />Dla mnie i znakomitej większości ludzi tutaj nie chodzi o koszt jakiegoś &quot;pierdołka&quot; zza oceanu a o radość tworzenia, programowanie, rozwijanie hobby i pogłębianie wiedzy. <br /><div class="quotetitle">krzysssztof napisał(a):</div><div class="quotecontent"><br />Prawdopodobnie trwałość niewielka<br /></div> no właśnie....</div><br /><br />Pewnie, że chodzi o frajdę, ale jak będzie trzeba kupić coś nietypowego, to się okaże, że gotowe 100 razy tyle kosztuje...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14311">czarekgr</a> — 28 wrz 2017, o 13:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-26T22:34:51+01:00</updated>
<published>2017-09-26T22:34:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195879#p195879</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195879#p195879"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195879#p195879"><![CDATA[
<div class="quotetitle">skalarro napisał(a):</div><div class="quotecontent"><br />sprawdz na razie czy przerwanie sie wykonuje prawodłowo. Dopisz sobie<br /><br />#define LED_TOGG PORTB ^= LED_PIN<br />i wsadź po fladze s1-flag. I na chwilę wywal warunki od temp. zobaczysz czy działają pzerwania.<br /></div><br /><br />w czwartek sprawdzę i dam znać<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 26 wrz 2017, o 22:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[czarekgr]]></name></author>
<updated>2017-09-26T16:45:09+01:00</updated>
<published>2017-09-26T16:45:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195872#p195872</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195872#p195872"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195872#p195872"><![CDATA[
<div class="quotetitle">chlopek_p napisał(a):</div><div class="quotecontent"><br />zabawki mam ale z C jestem cieniutki, ciągle jestem na miganiu diody.<br /></div><br /><br />To połowę masz za sobą, umiesz napisać, skompilować, wgrać...<br />Poszukaj biblioteki do obsługi czujnika i próbuj!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14311">czarekgr</a> — 26 wrz 2017, o 16:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-09-26T15:42:32+01:00</updated>
<published>2017-09-26T15:42:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195868#p195868</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195868#p195868"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195868#p195868"><![CDATA[
<div class="quotetitle">krzysssztof napisał(a):</div><div class="quotecontent"><br />u Chińczyków gotowy (zmontowany, zaprogramowany) termostat z termistorem NTC 0,5%, wyświetlaczem LED i przekaźnikiem kosztuje z wysyłką niecałe 2$.<br /></div><br />Byćmoże, ale nie o to tutaj chodzi. Idąc tym tropem, to to forum jest zbędne, bo 95% rzeczy tutaj budowanych i tematów poruszanych u Chińczyków jest za śmieszne pieniądze. <br />Dla mnie i znakomitej większości ludzi tutaj nie chodzi o koszt jakiegoś &quot;pierdołka&quot; zza oceanu a o radość tworzenia, programowanie, rozwijanie hobby i pogłębianie wiedzy. <br /><div class="quotetitle">krzysssztof napisał(a):</div><div class="quotecontent"><br />Prawdopodobnie trwałość niewielka<br /></div> no właśnie....<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 26 wrz 2017, o 15:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[krzysssztof]]></name></author>
<updated>2017-09-26T15:11:40+01:00</updated>
<published>2017-09-26T15:11:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195865#p195865</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195865#p195865"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195865#p195865"><![CDATA[
Taka ciekawostka: u Chińczyków gotowy (zmontowany, zaprogramowany) termostat z termistorem NTC 0,5%, wyświetlaczem LED i przekaźnikiem kosztuje z wysyłką niecałe 2$. <br />Prawdopodobnie trwałość niewielka, natomiast bawiłem siętakim chwilę i działał.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4274">krzysssztof</a> — 26 wrz 2017, o 15:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-09-26T14:54:03+01:00</updated>
<published>2017-09-26T14:54:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195864#p195864</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195864#p195864"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195864#p195864"><![CDATA[
sprawdz na razie czy przerwanie sie wykonuje prawodłowo. Dopisz sobie <br /><br />#define LED_TOGG PORTB ^= LED_PIN<br /> i wsadź po fladze s1-flag. I na chwilę wywal warunki od temp. zobaczysz czy działają pzerwania.<br /><br />Jak już będziesz miał pewność, że działają jak chcesz, zajmij się temperaturą. Wywal odczyt na terminal lub lcd<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 26 wrz 2017, o 14:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-26T14:45:37+01:00</updated>
<published>2017-09-26T14:45:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195863#p195863</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195863#p195863"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195863#p195863"><![CDATA[
zmieniłem timer na 0 i jest zmiana, wygląda tak jakby po resecie raz wykonała się pętla, jak jest podgrzany czujnik to led świeci , jak jest czujnik chłodny to jest led zgaszony.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 26 wrz 2017, o 14:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-09-26T14:13:19+01:00</updated>
<published>2017-09-26T14:13:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195861#p195861</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195861#p195861"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195861#p195861"><![CDATA[
a przerwanie Ci się wykonuje?? Chyba nie....<br /><br />ISR(TIMER1_COMPA_vect)  daj mu timer 0<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 26 wrz 2017, o 14:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-26T13:14:46+01:00</updated>
<published>2017-09-26T13:14:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195857#p195857</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195857#p195857"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195857#p195857"><![CDATA[
Witam <br /><br />może ktoś na to zerknąć i/lub ewentualnie poprawić??<br />układ ma załączyć led/PK  po przekroczeniu zadanej temperatury <br />Kod z BB okrojony pod moje potrzeby, na ATmega 32 zadziałało, lecz chciałbym aby to ruszyło na ATtiny85, biblioteki z BB nie zmienianie<br />w kodzie zmieniłem ustawienia dla timera pod Attiny85 oraz przerwanie  ISR(TIMER1_COMPA_vect).   <br />Program się kompiluje ale nie działa tak jak bym chciał (led cały czas świeci)  i tutaj moja wiedza się kończy.<br />układ uruchomiany na ATB 1.03 + konwerter attiny z atnela<br />DS18B20 podłączony na PB1, led na PB2<br /><br /><br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> * ATtiny 85<br /> */<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;1Wire/ds18x20.h&quot;<br /><br />#define LED_PIN (1&lt;&lt;PB2)            // definicja pinu do którego podłączona jest dioda<br />#define LED_ON PORTB &amp;= ~LED_PIN    // makrodefinicja – załączenie diody<br />#define LED_OFF PORTB |= LED_PIN    // makrodefinicja – wyłączenie diody<br />uint8_t czujniki_cnt;        /* ilość czujników na magistrali */<br />volatile uint8_t s1_flag;    /* flaga tyknięcia timera co 1 sekundę */<br />volatile uint8_t sekundy;    /* licznik sekund 0-59 */<br />uint8_t histereza = 2;<br />uint8_t zadana_temperaura = 30;<br />uint8_t subzero, cel, cel_fract_bits;<br /><br />int main(void) {<br /><br /><br />    DDRB |= LED_PIN;        // kierunek pinu PB1 – wyjściowy<br /><br />    /* ustawienie TIMER0 dla F_CPU=11,0592MHz */<br />    TCCR0A |= (1&lt;&lt;WGM01);                /* tryb CTC / dla M32  TCCR0 |= (1&lt;&lt;WGM01);  */<br />    TCCR0B |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00);        /* preskaler = 1024 /dla M32 TCCR0 |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00); */<br />    OCR0A = 108;                            /* dodatkowy podział przez 108 (rej. przepełnienia) / dla  M32  OCR0 = 108;       */<br />    TIMSK |= (1&lt;&lt;OCIE0A);                /* zezwolenie na przerwanie CompareMatch /dla M32 TIMSK |= (1&lt;&lt;OCIE0);   */<br />    /* przerwanie wykonywane z częstotliwością ok 10ms (100 razy na sekundę) */<br />    /* do naszych celów nie musi być to bardzo dokładne 10ms */<br /><br /><br />    /* sprawdzamy ile czujników DS18xxx widocznych jest na magistrali */<br />    czujniki_cnt = search_sensors();<br /><br />    /* wysyłamy rozkaz wykonania pomiaru temperatury<br />     * do wszystkich czujników na magistrali 1Wire<br />     * zakładając, że zasilane są w trybie NORMAL,<br />     * gdyby był to tryb Parasite, należałoby użyć<br />     * jako pierwszego prarametru DS18X20_POWER_PARASITE */<br />    DS18X20_start_meas( DS18X20_POWER_EXTERN, NULL );<br /><br />    /* czekamy 750ms na dokonanie konwersji przez podłączone czujniki */<br />    _delay_ms(750);<br /><br />    /* dokonujemy odczytu temperatury z pierwszego czujnika o ile został wykryty */<br />    /* wyświetlamy temperaturę gdy czujnik wykryty */<br />    if( DS18X20_OK == DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) );<br /><br /><br />    sei();    /* włączamy globalne przerwania */<br /><br /><br /><br />    /* pętla nieskończona */<br />    while(1) {<br /><br />        if(s1_flag) {    /* sprawdzanie flagi tyknięć timera programowego co 1 sekundę */<br /><br />            /* co trzy sekundy gdy reszta z dzielenia modulo 3 == 0 sprawdzaj ilość dostępnych czujników */<br />            if( 0 == (sekundy%3) ) czujniki_cnt = search_sensors();<br /><br />            /* co trzy sekundy gdy reszta z dzielenia modulo 3 == 1 wysyłaj rozkaz pomiaru do czujników */<br />            if( 1 == (sekundy%3) ) DS18X20_start_meas( DS18X20_POWER_EXTERN, NULL );<br /><br />            /* co trzy sekundy gdy reszta z dzielenia modulo 3 == 2 czyli jedną sekundę po rozkazie konwersji<br />             *  dokonuj odczytu i wyświetlania temperatur z 2 czujników jeśli są podłączone, jeśli nie<br />             *  to pokaż komunikat o błędzie<br />             */<br />            if( 2 == (sekundy%3) ) {<br />                if( DS18X20_OK == DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) );<br /><br />            }<br /><br />            /* zerujemy flagę aby tylko jeden raz w ciągu sekundy wykonać operacje */<br />            s1_flag=0;<br />        } /* koniec sprawdzania flagi */<br /><br />        if (zadana_temperaura + histereza/2 &lt; cel) LED_ON;<br />        if (zadana_temperaura - histereza/2 &gt; cel)  LED_OFF;<br /><br />    } /* koniec pętli nieskończonej */<br />}<br /><br /><br />/* ================= PROCEDURA OBSŁUGI PRZERWANIA – COMPARE MATCH */<br />/* pełni funkcję timera programowego wyznaczającego podstawę czasu = 1s */<br />ISR(TIMER1_COMPA_vect)   //m32 ISR(TIMER0_COMP_vect)<br />{<br />    static uint8_t cnt=0;    /* statyczna zmienna cnt do odliczania setnych ms */<br /><br />    if(++cnt&gt;99) {    /* gdy licznik ms &gt; 99 (minęła 1 sekunda) */<br />        s1_flag=1;    /* ustaw flagę tyknięcia sekundy */<br />        sekundy++;    /* zwiększ licznik sekund */<br />        if(sekundy&gt;59) sekundy=0; /* jeśli ilość sekund &gt; 59 - wyzeruj */<br />        cnt=0;    /* wyzeru licznik setnych ms */<br />    }<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 26 wrz 2017, o 13:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-18T09:28:36+01:00</updated>
<published>2017-09-18T09:28:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195308#p195308</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195308#p195308"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195308#p195308"><![CDATA[
<div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />wstyd , wstyd .... za karę 30 pompek i 5 przysiadów ...<br /></div><br />podświadomość coś mi tak podpowiadała że to moje pytanie może się tak skończyć  <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> <br />także chciałem zameldować: pompki i przysiady zrobione z bananem na twarzy.<br />dziękuje kolegom za postawienie do pionu, powinienem coś już z tego ulepić<br /><br />@Daro69 - z tym siurpaniem to w sumie nic nie było w weekend, ale coś powinienem siurpnąć może mózgoczaszka lepiej by przyjmowała C, także niema problemu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 18 wrz 2017, o 09:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Daro69]]></name></author>
<updated>2017-09-18T09:22:30+01:00</updated>
<published>2017-09-18T09:22:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195306#p195306</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195306#p195306"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195306#p195306"><![CDATA[
@chlopek_p,<br />Tak na marginesie - przepraszam za spoufalanie z mojej strony. <br />Myślałem że piszę do kolegi o bardzo podobnym nicku. <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Wyszło na to, że to ja powinienem mniej siurpać w weekend. <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br /><br />Wysłane z mojego Lenovo K33a42 przy użyciu Tapatalka<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=11549">Daro69</a> — 18 wrz 2017, o 09:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JarekK]]></name></author>
<updated>2017-09-18T08:08:28+01:00</updated>
<published>2017-09-18T08:08:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195302#p195302</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195302#p195302"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195302#p195302"><![CDATA[
Ostatnio robiłem termostat do sterowania pracą pompy przy kotle CO.<br />Zrobione na attiny 45 i z czujnikiem temperatury NTC 10k. Wydaje się ze będzie działać ale sezon grzewczy dopiero się zaczyna <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Jak się chce to można powyrzucać zbędne dodatki. Niestety częściowo oparty na delayach gdyż gryzło się coś z ADC.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=224">JarekK</a> — 18 wrz 2017, o 08:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[LA72]]></name></author>
<updated>2017-09-17T20:40:40+01:00</updated>
<published>2017-09-17T20:40:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195279#p195279</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195279#p195279"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195279#p195279"><![CDATA[
Zerknij na opisy AVT5354.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3028">LA72</a> — 17 wrz 2017, o 20:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Daro69]]></name></author>
<updated>2017-09-17T20:26:14+01:00</updated>
<published>2017-09-17T20:26:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195278#p195278</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195278#p195278"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195278#p195278"><![CDATA[
@chlopek_p, hejka. <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Ty chyba  żeś się czegoś nasiurpał. <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br />do BB masz dolączone gotowe kody do ds18b20,<br />#definicja histereza 10<br />uint8_t zadana_temperaura = 50;<br />...<br />jeżeli zadana_temp + histereza/2 &lt; temp_pomiar ...to wyłącz. // wyłącz przy 55°<br />jeżeli zadana_temp - histereza/2 &gt; temp_pomiar... to włącz. // włącz przy 45°<br />...<br />Nie siurp tyle w weekendy.  <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=11549">Daro69</a> — 17 wrz 2017, o 20:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2017-09-17T19:35:00+01:00</updated>
<published>2017-09-17T19:35:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195271#p195271</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195271#p195271"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195271#p195271"><![CDATA[
<div class="quotetitle">chlopek_p napisał(a):</div><div class="quotecontent"><br />aż głupio tu pisać, ale mam to wszytko i się kurzy<br />popatrzę na ten rozdział,<br /></div><br /><br />wstyd , wstyd .... za karę 30 pompek i 5 przysiadów ...<br />a jak nie pomoże to będzie banan motywacyjny <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=58">SunRiver</a> — 17 wrz 2017, o 19:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-17T18:57:09+01:00</updated>
<published>2017-09-17T18:57:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195270#p195270</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195270#p195270"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195270#p195270"><![CDATA[
aż głupio tu pisać, ale mam to wszytko i się kurzy<br />popatrzę na ten rozdział,<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 17 wrz 2017, o 18:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-09-17T18:49:25+01:00</updated>
<published>2017-09-17T18:49:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195269#p195269</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195269#p195269"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195269#p195269"><![CDATA[
A Ty masz na prawdę to wszystko, co masz w ikonkach w podpisie? Zajrzyj Do BB - -rozdział chociażby 4.14 o 1-Wire. Bardzo ładnie opisane. Masz tam chyba wszystko czego potrzebujesz.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 17 wrz 2017, o 18:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-17T18:45:24+01:00</updated>
<published>2017-09-17T18:45:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195267#p195267</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195267#p195267"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195267#p195267"><![CDATA[
zabawki mam ale z C jestem cieniutki, ciągle jestem na miganiu diody.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 17 wrz 2017, o 18:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-09-17T18:27:57+01:00</updated>
<published>2017-09-17T18:27:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195265#p195265</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195265#p195265"/>
<title type="html"><![CDATA[Re: termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195265#p195265"><![CDATA[
<div class="quotetitle">chlopek_p napisał(a):</div><div class="quotecontent"><br />jeśli coś jest mało zrozumiałe proszę pytać,<br /></div><br />Dobrze byłoby jakbyś to Ty napisał czego nie rozumiesz. Założenia napisałeś, wiesz czego użyć i jak mam działać, że potrzebujesz czujnika temperatury i musisz zastosować histerezę. <br />Ale z czym masz problem? nie wiesz jak zacząć? nie znasz w ogóle C i liczysz, że ktoś Tobie program napisze? Czy jeszcze coś?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 17 wrz 2017, o 18:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[chlopek_p]]></name></author>
<updated>2017-09-17T17:47:11+01:00</updated>
<published>2017-09-17T17:47:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195262#p195262</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195262#p195262"/>
<title type="html"><![CDATA[termostat]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=19215&amp;p=195262#p195262"><![CDATA[
witam<br /><br />potrzebuje wykonać termostat ale kiepsko z wiedzą <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br />założenia :<br />- mikroprocesor dowolny, ale jak by się dało to uruchomić na  attiny10 lub attiny13 ogólnie na jakimś maluchu było by fajnie,<br />- czujnik temperatury ds18b20 ewentualnie dowolny łatwo dostępny.<br />- ma to sterować jednym przekaźnikiem,<br />- ustawianie temperatury w programie na sztywno, włączenie/wyłączenie PK przy danej temperaturze <br />- histereza ok 5 stopni <br />- żadnej obsługi LCD czy przycisków<br />zakres działania 50 -100 stopi C<br />jeśli coś jest mało zrozumiałe proszę pytać,<br />będę wdzięczny za pomoc.<br /><br />pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=294">chlopek_p</a> — 17 wrz 2017, o 17:47</p><hr />
]]></content>
</entry>
</feed>