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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-02-11T10:18:34+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=14479&amp;mode</id>
<entry>
<author><name><![CDATA[rskup]]></name></author>
<updated>2016-02-11T10:18:34+01:00</updated>
<published>2016-02-11T10:18:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153331#p153331</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153331#p153331"/>
<title type="html"><![CDATA[Re: problem z odczytem danych  z pamieci eeprom]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153331#p153331"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />A co z volatile? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /></div><br />To także do poprawienia <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />-- <br />Pozdrawiam,<br />Robert<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3427">rskup</a> — 11 lut 2016, o 10:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[anshar]]></name></author>
<updated>2016-02-11T01:14:23+01:00</updated>
<published>2016-02-11T01:14:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153310#p153310</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153310#p153310"/>
<title type="html"><![CDATA[Re: problem z odczytem danych  z pamieci eeprom]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153310#p153310"><![CDATA[
A co z volatile?  <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=7157">anshar</a> — 11 lut 2016, o 01:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[rskup]]></name></author>
<updated>2016-02-10T21:41:10+01:00</updated>
<published>2016-02-10T21:41:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153293#p153293</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153293#p153293"/>
<title type="html"><![CDATA[Re: problem z odczytem danych  z pamieci eeprom]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153293#p153293"><![CDATA[
Może i uruchomiłeś, ale program jest nieporządnie napisany. Jak to wcześniej zauważył <em> anshar</em> <div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Dużo za dużo się &quot;dzieje&quot; w procedurze obsługi przerwania.<br /></div><br />Przerwanie powinno trać jak najkrócej i wykonywać tylko proste operacje. W przerwaniu powinny pozostawać tylko operacje typu sprawdzanie (ms == x) i ustawienie flagi a nie całe czasochłonne operacje. A już w programie w pętli głównej powinno być sprawdzanie tej flagi i wykonywanie tych operacji.<br />Pomyśl na takim przerobieniem swojego kodu.<br /><br />-- <br />Pozdrawiam,<br />Robert<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3427">rskup</a> — 10 lut 2016, o 21:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[driver0207]]></name></author>
<updated>2016-02-10T09:29:19+01:00</updated>
<published>2016-02-10T09:29:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153229#p153229</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153229#p153229"/>
<title type="html"><![CDATA[Re: problem z odczytem danych  z pamieci eeprom]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153229#p153229"><![CDATA[
Już rozwiązałem problem. Gdy odczytały mi się wartości z pamięci eeprom 0xff to przy wysyłaniu tych zmiennych na port program się zawieszał zrobiłem funkcje która sprawdza czy pamięć jest pusta i jeśli jest to zapisuje wartości domyślne do eeprom<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2199">driver0207</a> — 10 lut 2016, o 09:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[anshar]]></name></author>
<updated>2016-02-10T01:02:13+01:00</updated>
<published>2016-02-10T01:02:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153218#p153218</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153218#p153218"/>
<title type="html"><![CDATA[Re: problem z odczytem danych  z pamieci eeprom]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153218#p153218"><![CDATA[
<div class="quotetitle">driver0207 napisał(a):</div><div class="quotecontent"><br />Proszę o jakąś wskazówkę <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /></div><br /><br />Mam dwie:<br />1. Na pewno brakuje &quot;volatile&quot;.<br />2. Dużo za dużo się &quot;dzieje&quot; w procedurze obsługi przerwania.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7157">anshar</a> — 10 lut 2016, o 01:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[driver0207]]></name></author>
<updated>2016-02-09T21:13:41+01:00</updated>
<published>2016-02-09T21:13:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153198#p153198</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153198#p153198"/>
<title type="html"><![CDATA[problem z odczytem danych  z pamieci eeprom]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14479&amp;p=153198#p153198"><![CDATA[
Witam . W kodzie poniższym próbuje odczytywać i zapisywać dane do pamięci eeprom Problem jest taki że gdy wywołam funkcję do kopiowania zawartości z pamięci eeprom do ram to program nie odpowiada . na port rs232 wysyłana jest tylko raz jedna ramka danych<br /><br />Proszę o jakąś wskazówkę <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 8 lut 2016<br /> *      Author: DSYSTEM<br /> */<br /><br /><br />/*<br /> * main.c<br /> *<br /> *  Created on: 8 lut 2016<br /> *      Author: DSYSTEM<br /> */<br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;avr/eeprom.h&gt;<br />#include &quot;MK_USART/mkuart.h&quot;<br />#include &quot;ADC/adc.h&quot;<br />#include &quot;1Wire/ds18x20.h&quot;<br /><br />char uart_buf&#91;32&#93;;<br /><br />typedef struct{<br /><br /><br /><br /><br />uint8_t g_pn ;<br />uint8_t m_pn ;<br />uint8_t t_work_pn ;<br />uint8_t on_pn ;<br /><br />uint8_t g_wt;<br />uint8_t m_wt;<br />uint8_t t_work_wt;<br />uint8_t on_wt;<br /><br />uint8_t g_sr;<br />uint8_t m_sr;<br />uint8_t t_work_sr;<br />uint8_t on_sr;<br /><br />uint8_t g_cz;<br />uint8_t m_cz;<br />uint8_t t_work_cz;<br />uint8_t on_cz;<br /><br />uint8_t g_pt;<br />uint8_t m_pt;<br />uint8_t t_work_pt;<br />uint8_t on_pt;<br /><br />uint8_t g_so;<br />uint8_t m_so;<br />uint8_t t_work_so;<br />uint8_t on_so;<br /><br />uint8_t g_nd;<br />uint8_t m_nd;<br />uint8_t t_work_nd;<br />uint8_t on_nd;<br /><br /><br /><br /><br />}TCFG;<br /><br />TCFG eem_cfg EEMEM;<br />TCFG ram_cfg ;<br /><br />uint8_t ms;<br />uint8_t s;<br />uint8_t m;<br />uint8_t h;<br />uint8_t t_dor;<br />uint8_t dtyg = 1 ;<br />uint8_t timer = 0 ;<br />char* stan1 = &quot;0&quot;;<br />char* stan2 = &quot;0&quot;;<br />uint8_t subzero, cel, cel_fract_bits;<br />uint8_t czujniki_cnt;<br />char*wsk;<br />char*smieci;<br />uint8_t flaga_praca;<br /><br />void wyslij (void);<br />void godzina_send(void);<br />void u_zas(void);<br />void temp(void);<br />void wyslij_d_tyg(uint8_t g_tyg , uint8_t m_tyg, uint8_t t_work_tyg, uint8_t on_tyg);<br />void kontrola_alarm(uint8_t dtyg_tyg, uint8_t on_tyg , uint8_t g_tyg , uint8_t m_tyg , uint8_t  t_work_tyg );<br />void parse_dtyg(uint8_t *g_tyg , uint8_t *m_tyg , uint8_t *t_work_tyg , uint8_t *on_tyg);<br />void parse_rs232 (char * buf);<br />void zamknij(void);<br />void otworz(void);<br />void ogrzewanie_wlacz (void);<br />void ogrzewanie_wylacz (void);<br />void copy_eem_to_ram(void);<br />void copy_ram_to_emm (void);<br />void sprawdz_harmonogram (void);<br /><br />#define OGRZEWANIE (1&lt;&lt;PB2)<br />#define OGRZEWANIE_ON PORTB |= OGRZEWANIE<br />#define OGRZEWANIE_OFF PORTB &amp;=~ OGRZEWANIE<br /><br />#define DOR_LOCK (1&lt;&lt;PB0)<br />#define DOR_LOCK_ON PORTB |= DOR_LOCK<br />#define DOR_LOCK_OFF PORTB &amp;=~ DOR_LOCK<br /><br />#define DOR_UNLOCK (1&lt;&lt;PD7)<br />#define DOR_UNLOCK_ON PORTD |= DOR_UNLOCK<br />#define DOR_UNLOCK_OFF PORTD &amp;=~ DOR_UNLOCK<br /><br />#define KIERUNKI (1&lt;&lt;PB1)<br />#define KIERUNKI_ON PORTB |= KIERUNKI<br />#define KIERUNKI_OFF PORTB &amp;=~ KIERUNKI<br /><br />int main (void){<br /><br /><br />TCCR2 |= (1&lt;&lt;WGM21);<br />TCCR2 |= (1&lt;&lt;CS20)|(1&lt;&lt;CS21)|(1&lt;&lt;CS22);<br />OCR2 = 107;<br />TIMSK |= (1&lt;&lt;OCIE2);<br /><br />DDRB |=OGRZEWANIE;<br />DDRB |=DOR_LOCK;<br />DDRB |=DOR_UNLOCK;<br />DDRB |= KIERUNKI;<br /><br /><br />OGRZEWANIE_OFF;<br />KIERUNKI_OFF;<br />DOR_LOCK_OFF;<br />DOR_UNLOCK_OFF;<br /><br />copy_eem_to_ram();      //&lt;---- GDY TU WYWOŁAM ZAŁADOWANIE DANYCH Z EEPROM DO RAM PROGRAM  NIE DZIAŁA<br /><br />USART_Init(__UBRR);<br />sei();<br />init_adc();<br />register_uart_str_rx_event_callback(parse_rs232);<br /><br /><br /><br /><br /><br />while(1){<br /><br /><br /><br /><br /><br />UART_RX_STR_EVENT(uart_buf);<br /><br /><br /><br /><br /><br /><br /><br />}<br /><br />}<br /><br />void parse_rs232 (char * buf){<br /><br /><br /><br /><br />char*godziny;<br />char*min;<br />char*tyg;<br /><br /><br />wsk=strtok(buf,&quot;+&quot;);<br />wsk=strtok(NULL,&quot;+&quot;);<br /><br /><br />if( ! strncmp(&quot;start_heather&quot;,wsk,13)){<br /><br />ogrzewanie_wlacz();<br />}<br />if( ! strncmp(&quot;stop_heather&quot;,wsk,12)){<br /><br />ogrzewanie_wylacz();<br /><br />}<br />if( ! strncmp(&quot;lock_dor&quot;,wsk,8)){<br /><br />zamknij();<br /><br />}<br />if( ! strncmp(&quot;unlock_dor&quot;,wsk,10)){<br /><br />otworz();<br /><br />}<br />if( ! strncmp(&quot;g=&quot;,wsk,1)){<br /><br /><br />smieci =strtok_r(wsk, &quot;=&quot;, &amp;godziny);<br />h=atoi(godziny);<br /><br />}<br />if( ! strncmp(&quot;m=&quot;,wsk,1)){<br /><br /><br />smieci =strtok_r(wsk, &quot;=&quot;, &amp;min);<br />m=atoi(min);<br />s=0;<br />}<br /><br />if( ! strncmp(&quot;t=&quot;,wsk,1)){<br />smieci =strtok_r(wsk, &quot;=&quot;, &amp;tyg);<br />dtyg=atoi(tyg);<br /><br />}<br />if( ! strncmp(&quot;pn&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_pn , &amp;ram_cfg.m_pn , &amp;ram_cfg.t_work_pn , &amp;ram_cfg.on_pn);<br />if( ! strncmp(&quot;wt&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_wt , &amp;ram_cfg.m_wt , &amp;ram_cfg.t_work_wt , &amp;ram_cfg.on_wt);<br />if( ! strncmp(&quot;sr&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_sr , &amp;ram_cfg.m_sr , &amp;ram_cfg.t_work_sr , &amp;ram_cfg.on_sr);<br />if( ! strncmp(&quot;cz&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_cz , &amp;ram_cfg.m_cz , &amp;ram_cfg.t_work_cz , &amp;ram_cfg.on_cz);<br />if( ! strncmp(&quot;pt&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_pt , &amp;ram_cfg.m_pt , &amp;ram_cfg.t_work_pt , &amp;ram_cfg.on_pt);<br />if( ! strncmp(&quot;so&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_so , &amp;ram_cfg.m_so , &amp;ram_cfg.t_work_so , &amp;ram_cfg.on_so);<br />if( ! strncmp(&quot;nd&quot;,wsk,2)) parse_dtyg( &amp;ram_cfg.g_nd , &amp;ram_cfg.m_nd , &amp;ram_cfg.t_work_nd , &amp;ram_cfg.on_nd);<br /><br /><br /><br /><br />}<br />void godzina_send(void){<br /><br />uart_puts(&quot;cl&quot;);<br /><br />if(h&lt;10){<br />uart_puts(&quot;0&quot;);<br />uart_putint(h,10);<br />}else{<br />uart_putint(h,10);<br />}<br /><br />uart_puts(&quot;:&quot;);<br /><br />if(m&lt;10){<br />uart_puts(&quot;0&quot;);<br />uart_putint(m,10);<br />}else{<br />uart_putint(m,10);<br />}<br /><br />uart_puts(&quot;:&quot;);<br /><br />if(s&lt;10){<br />uart_puts(&quot;0&quot;);<br />uart_putint(s,10);<br />}else{<br />uart_putint(s,10);<br />}<br /><br /><br />}<br />void u_zas(void){<br />napiecie();<br />uart_putint(cz_d,10);<br />uart_puts(&quot;,&quot;);<br />uart_putint(cz_u,10);<br /><br /><br />}<br />void temp(void){<br />if(subzero){<br />uart_puts(&quot;-&quot;);<br />}else{<br />uart_puts(&quot; &quot;);<br />}<br />uart_putint(cel,10);<br />uart_puts(&quot;,&quot;);<br />uart_putint(cel_fract_bits,10);<br />}<br /><br />void wyslij_d_tyg(uint8_t g_tyg , uint8_t m_tyg, uint8_t t_work_tyg, uint8_t on_tyg){<br /><br /><br /><br />if(g_tyg&lt;10){<br />uart_puts(&quot;0&quot;);<br />uart_putint(g_tyg,10);<br />}else{<br />uart_putint(g_tyg,10);<br />}<br />if(m_tyg&lt;10){<br />uart_puts(&quot;0&quot;);<br />uart_putint(m_tyg,10);<br />}else{<br />uart_putint(m_tyg,10);<br />}<br /><br />if (t_work_tyg&lt;10){<br />uart_puts(&quot;0&quot;);<br />uart_putint(t_work_tyg,10);<br />}else{<br />uart_putint(t_work_tyg,10);<br />}<br /><br />uart_putint(on_tyg,10);<br /><br />}<br /><br /><br /><br /><br />void wyslij (void){<br /><br />godzina_send();<br />u_zas();<br />uart_puts(stan1);<br />uart_puts(stan2);<br />uart_puts(&quot;co&quot;);<br />temp();<br />uart_putint(dtyg,10);<br /><br /><br />}<br />void wyslij_harmonogram (void){<br />uart_puts(&quot;dt&quot;);<br />wyslij_d_tyg(ram_cfg.g_pn , ram_cfg.m_pn , ram_cfg.t_work_pn , ram_cfg.on_pn);<br />wyslij_d_tyg(ram_cfg.g_wt , ram_cfg.m_wt , ram_cfg.t_work_wt , ram_cfg.on_wt);<br />wyslij_d_tyg(ram_cfg.g_sr , ram_cfg.m_sr , ram_cfg.t_work_sr , ram_cfg.on_sr);<br />wyslij_d_tyg(ram_cfg.g_cz , ram_cfg.m_cz , ram_cfg.t_work_cz , ram_cfg.on_cz );<br />wyslij_d_tyg(ram_cfg.g_pt , ram_cfg.m_pt , ram_cfg.t_work_pt , ram_cfg.on_pt);<br />wyslij_d_tyg(ram_cfg.g_so , ram_cfg.m_so , ram_cfg.t_work_so , ram_cfg.on_so);<br />wyslij_d_tyg(ram_cfg.g_nd , ram_cfg.m_nd , ram_cfg.t_work_nd , ram_cfg.on_nd );<br /><br />}<br /><br /><br /><br />    void parse_dtyg(uint8_t *g_tyg , uint8_t *m_tyg , uint8_t *t_work_tyg , uint8_t *on_tyg){<br /><br />            smieci = strtok(wsk , &quot;=&quot;);<br />            smieci= strtok(NULL, &quot;=&quot;);<br />            *g_tyg = atoi(strtok(smieci,&quot;,&quot;));<br />            smieci= strtok(NULL , &quot;,&quot;);<br />            *m_tyg = atoi (smieci);<br />            smieci= strtok(NULL , &quot;,&quot;);<br />            *t_work_tyg = atoi(smieci);<br />            smieci= strtok(NULL , &quot;,&quot;);<br />            *on_tyg = atoi(smieci);<br />            copy_ram_to_emm();<br /><br />    }<br /><br />void zamknij(void){<br />stan2=&quot;1&quot;;<br />DOR_LOCK_ON;<br />KIERUNKI_ON;<br />_delay_ms(200);<br />KIERUNKI_OFF;<br />DOR_LOCK_OFF;<br />_delay_ms(200);<br />KIERUNKI_ON;<br /><br />_delay_ms(200);<br />KIERUNKI_OFF;<br /><br /><br /><br />}<br />void otworz(void){<br />stan2=&quot;0&quot;;<br />KIERUNKI_ON;<br />DOR_UNLOCK_ON;<br />_delay_ms(200);<br />DOR_UNLOCK_OFF;<br />KIERUNKI_OFF;<br /><br /><br /><br /><br /><br /><br />}<br />void ogrzewanie_wlacz (void){<br />OGRZEWANIE_ON;<br />stan1=&quot;1&quot;;<br /><br />}<br />void ogrzewanie_wylacz (void){<br />OGRZEWANIE_OFF;<br />stan1=&quot;0&quot;;<br /><br />}<br />void copy_eem_to_ram(void){<br /><br />eeprom_read_block(&amp;ram_cfg, &amp;eem_cfg, sizeof(ram_cfg));<br /><br />}<br /><br />void copy_ram_to_emm (void){<br /><br />eeprom_write_block(&amp;ram_cfg, &amp;eem_cfg, sizeof(ram_cfg));<br /><br /><br /><br />}<br /><br /><br />void kontrola_alarm(uint8_t dtyg_tyg, uint8_t on_tyg , uint8_t g_tyg , uint8_t m_tyg , uint8_t  t_work_tyg ){<br /><br /><br />if (dtyg == dtyg_tyg){<br />if(on_tyg == 1){<br />if(g_tyg == h){<br />if(m_tyg == m){<br />ogrzewanie_wlacz();<br />timer = t_work_tyg;<br />flaga_praca = 1;<br />}<br />}<br />}<br />}<br /><br /><br /><br /><br />}<br /><br />void sprawdz_harmonogram (void){<br /><br />kontrola_alarm(1 , ram_cfg.on_pn , ram_cfg.g_pn , ram_cfg.m_pn , ram_cfg.t_work_pn);<br />kontrola_alarm(2 , ram_cfg.on_wt , ram_cfg.g_wt , ram_cfg.m_wt , ram_cfg.t_work_wt);<br />kontrola_alarm(3 , ram_cfg.on_sr , ram_cfg.g_sr , ram_cfg.m_sr , ram_cfg.t_work_sr);<br />kontrola_alarm(4 , ram_cfg.on_cz , ram_cfg.g_cz , ram_cfg.m_cz , ram_cfg.t_work_cz);<br />kontrola_alarm(5 , ram_cfg.on_pt , ram_cfg.g_pt , ram_cfg.m_pt , ram_cfg.t_work_pt);<br />kontrola_alarm(6 , ram_cfg.on_so , ram_cfg.g_so , ram_cfg.m_so , ram_cfg.t_work_so);<br />kontrola_alarm(7 , ram_cfg.on_nd , ram_cfg.g_nd , ram_cfg.m_nd , ram_cfg.t_work_nd);<br /><br />}<br /><br />ISR(TIMER2_COMP_vect){<br /><br />++ t_dor;<br />++ ms;<br /><br />if (ms&gt;99){<br />ms=0;<br />++s;<br /><br />}<br />if (s&gt;59){<br />s=0;<br />++m;<br />--timer;<br /><br />}<br />if(m&gt;59){<br />m=0;<br />++h;<br />}<br />if(h&gt;23){<br />h=0;<br />++ dtyg;<br />}<br />if (dtyg&gt;7){<br />dtyg=1;<br />}<br />sprawdz_harmonogram();<br />if(timer&lt;1)timer = 0;<br />if(flaga_praca ==1){<br />if(timer &lt; 1){<br />ogrzewanie_wylacz();<br />flaga_praca = 0;<br />}<br /><br />}<br /><br />if (ms==10) wyslij();<br />if (ms==50)wyslij_harmonogram();<br /><br />if(ms==1){<br />czujniki_cnt = search_sensors();<br />DS18X20_start_meas( DS18X20_POWER_EXTERN, NULL );<br />}<br />if(ms==75){<br />DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits);<br />}<br /><br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2199">driver0207</a> — 9 lut 2016, o 21:13</p><hr />
]]></content>
</entry>
</feed>