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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-03-31T11:47:49+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=58&amp;t=6715&amp;mode</id>
<entry>
<author><name><![CDATA[main.c]]></name></author>
<updated>2015-03-31T11:47:49+01:00</updated>
<published>2015-03-31T11:47:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=125150#p125150</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=125150#p125150"/>
<title type="html"><![CDATA[Re: ATTINY 25 + DS18B20 proste monitorowanie temperatury]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=125150#p125150"><![CDATA[
Przy jednym czujniku należy użyć składni:<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">DS18X20_read_meas_single(uint8_t familycode,   uint8_t *subzero, uint8_t *cel, uint8_t *cel_frac_bits);<br /></div><br /><br />gdzie za familycode należy wstawić ID układu. TYle wiem po analizie plików źródłowych.<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">/* DS18X20 specific values (see datasheet) */<br />#define DS18S20_ID 0x10<br />#define DS18B20_ID 0x28<br /></div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=332">main.c</a> — 31 mar 2015, o 11:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[nixie]]></name></author>
<updated>2014-04-11T10:12:30+01:00</updated>
<published>2014-04-11T10:12:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77647#p77647</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77647#p77647"/>
<title type="html"><![CDATA[Re: ATTINY 25 + DS18B20 proste monitorowanie temperatury]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77647#p77647"><![CDATA[
Powinno być:<br /><br />[syntax=c]if (DS18X20_OK == DS18X20_read_meas_single(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits)<br />{<br />      // wykonaj kod po poprawnym odczycie<br />}[/syntax]<br /><br />albo<br /><br />[syntax=c]DS18X20_read_meas_single(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits);[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=358">nixie</a> — 11 kwi 2014, o 10:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[yaiba83]]></name></author>
<updated>2014-04-11T09:19:08+01:00</updated>
<published>2014-04-11T09:19:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77646#p77646</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77646#p77646"/>
<title type="html"><![CDATA[Re: ATTINY 25 + DS18B20 proste monitorowanie temperatury]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77646#p77646"><![CDATA[
A żaden komunikat przy robaku się nie pokazuje?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2332">yaiba83</a> — 11 kwi 2014, o 09:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[djostry]]></name></author>
<updated>2014-04-11T08:44:34+01:00</updated>
<published>2014-04-11T08:44:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77643#p77643</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77643#p77643"/>
<title type="html"><![CDATA[ATTINY 25 + DS18B20 proste monitorowanie temperatury]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6715&amp;p=77643#p77643"><![CDATA[
Próbuje wykonać na 18B20 układ który monitoruje temperaturę ( bez wyświetlacza, procesor attiny 25 ).<br />Mam w zmiennej &quot;cel&quot; wartość temperatury z 18B20, biblioteki z obsługi 18B20 z blue book'a,  w zmiennej &quot;ust&quot; mam ustawioną temperaturę na sztywno w programie.<br />jeżeli temperatura jest poniżej ustawionej temperatury, to poprzez wyjście na PB0 sygnał PWM będzie &quot;ruszał&quot; grzałki na 12V. <br />jak temperatura dochodzi do ustawionej to wypełnienie PWM sie zmniejsza.<br />program działa, po diodach led widzę jak pracuje, widzę tez ładnie na oscyloskopie sygnał PWM.<br />męczy mnie ten robak przy funkcji odczytu temperatury (screen poniżej ), nie wiem o co chodzi na razie....<br />Może ktoś mi to poprawi, albo podpowie co zrobić ?<br /><br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1163/4a4ec07ad74216cd260da70e17450c1b.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1163/4a4ec07ad74216cd260da70e17450c1b.jpg" alt="Obrazek" /></a><br /><br /><br />kod:<br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 26-03-2014<br /> *      Author: Rafal<br /> */<br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &quot;1Wire/ds18x20.h&quot;<br />#include &lt;avr/pgmspace.h&gt;<br /><br />#define LED_Z (1&lt;&lt;PB2)//LED_Z - LED ZIELONA ( sygnalizacja pracy programu )<br />#define LED_CZ (1&lt;&lt;PB4)     //LED_CZ - LED CZERWONA ( sygnalizacja temperatury )<br />#define LED_CZ_TOG PORTB ^= LED_CZ<br />#define LED_Z_TOG PORTB  ^= LED_Z<br />#define LED_Z_ON PORTB  |= LED_Z<br />#define LED_CZ_ON PORTB  |= LED_CZ<br />#define LED_Z_OFF PORTB  &amp;=~ LED_Z<br />#define LED_CZ_OFF PORTB &amp;=~ LED_CZ<br /><br />uint8_t subzero, cel, cel_fract_bits;   // cel - zmienna dziesietna z temperatura<br />uint8_t czujniki_cnt;<br />uint8_t ust;     // zmienna ( temperatura ustawiona w programie )<br /><br /><br />//     OCROA - REJESTR WARTOSCI PWM<br />//     |=  USTAWIENIE BITU<br />//     &amp;=~ ZEROWANIE BITU,<br />//     ^=  ZMIANA STANU BITU<br /><br />int main (void)<br /><br />{<br />// ****** inicjalizacja **************************************************************<br />TCCR0A |=(1&lt;&lt;WGM00); // tryb Fast PWM<br />TCCR0B |= (1&lt;&lt;CS02); // PRESCALER 256<br />TCCR0A |= (1&lt;&lt;COM0A1)| (1&lt;&lt;COM0A0); //WLACZENIE TRYBU PWM<br />DDRB = 0b110111; // ustawienie kierunku portu, wyjscie to 1,  wejscie to 0<br /><br />ust = 25; //zmienna temperatura ustawiona  w programie <br /><br />while (1)<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 />     /* 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 /><br />DS18X20_OK == DS18X20_read_meas_single(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits);<br /><br />     LED_Z_TOG;    // informacja o pracy programu<br />          // czerwona led - powyzej ustawiona led nie swieci, rowna led mruga, mniejsza led swieci<br /><br />    if (cel &gt; ust) LED_CZ_OFF, OCR0A = 255;<br />    else if (cel == ust) LED_CZ_TOG, OCR0A = 233;<br />    else if (cel == (ust-1))LED_CZ_ON, OCR0A = 220;<br />    else if (cel == (ust-2))LED_CZ_ON, OCR0A = 190;<br />    else if (cel == (ust-3))LED_CZ_ON, OCR0A = 180;<br />    else if (cel == (ust-4))LED_CZ_ON, OCR0A = 180;<br />    else if (cel == (ust-5))LED_CZ_ON, OCR0A = 170;<br />    else if (cel == (ust-6))LED_CZ_ON, OCR0A = 160;<br />    else if (cel == (ust-7))LED_CZ_ON, OCR0A = 150;<br />    else if (cel == (ust-8))LED_CZ_ON, OCR0A = 140;<br />    else if (cel == (ust-9))LED_CZ_ON, OCR0A = 130;<br />    else if (cel == (ust-10))LED_CZ_ON, OCR0A = 120;<br />    else if (cel &lt;  (ust-10))LED_CZ_ON, OCR0A = 0;<br /><br /> }<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1163">djostry</a> — 11 kwi 2014, o 08:44</p><hr />
]]></content>
</entry>
</feed>