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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2018-05-07T13:23:43+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=20695&amp;mode</id>
<entry>
<author><name><![CDATA[JarekB]]></name></author>
<updated>2018-05-07T13:23:43+01:00</updated>
<published>2018-05-07T13:23:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207489#p207489</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207489#p207489"/>
<title type="html"><![CDATA[Re: DS18B20 pomiar z dwóch czujników na jednej magistrali]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207489#p207489"><![CDATA[
Sprawdziłeś czy czujniki każdy z osobna mierzy temperaturę?<br /><br />Druga sprawa to taki  wpis w pliku ds18x20.h<br />[syntax=c]#define MAXSENSORS 2    // &lt;----- Tutaj definiujemy maksymalną ilość czujników[/syntax]<br />Ile masz tu wpisane czujników?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18188">JarekB</a> — 7 maja 2018, o 13:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xisco24]]></name></author>
<updated>2018-05-07T10:05:57+01:00</updated>
<published>2018-05-07T10:05:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207483#p207483</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207483#p207483"/>
<title type="html"><![CDATA[Re: DS18B20 pomiar z dwóch czujników na jednej magistrali]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207483#p207483"><![CDATA[
Jaka długość kabelka do DSa? Zmniejsz rezystor do 2,2k i zobacz czy to cos pomoże.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2868">xisco24</a> — 7 maja 2018, o 10:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wawrzyc]]></name></author>
<updated>2018-05-07T08:44:12+01:00</updated>
<published>2018-05-07T08:44:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207481#p207481</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207481#p207481"/>
<title type="html"><![CDATA[DS18B20 pomiar z dwóch czujników na jednej magistrali]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20695&amp;p=207481#p207481"><![CDATA[
Potrzebuję zmierzyć temperaturę za pomocą dwóch czujników i wysłać po RS485. Dla jednego czujnika wszystko działa, gdy podłącze dwa czujniki funkcja search sensor zwraca, że znalazła jeden czujnik. Działa pomiar z tego jednego czujnika, drugi nie zwraca ok. Ma ktoś pomysł dlaczego? Czujniki podłączone równolegle, z jednym rezystorem 4,7k do plusa.<br /><br />[syntax=c]#include &lt;stdio.h&gt; <br />#include &lt;stdlib.h&gt;<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/eeprom.h&gt;<br />#include &lt;avr/wdt.h&gt;<br />#include &lt;util/delay_basic.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;onewire.h&quot;<br />#include &quot;onewire.c&quot;<br />#include &quot;ds18x20.c&quot;<br />#include &quot;ds18x20.h&quot;<br />#include &quot;crc8.c&quot;<br />#include &quot;crc8.h&quot;<br /><br />#define F_CPU 3686400UL<br />#define BAUD 2400  <br />                            // define baud<br />#define BAUDRATE ((F_CPU)/(BAUD*16UL)-1) <br /><br /><br />#define Wiper_ON() PORTC |= (1&lt;&lt;PORTC3) <br />#define Wiper_OFF() PORTC &amp;= ~(1&lt;&lt;PORTC3)<br /><br />void TransmissionStart(uint8_t lenght);<br />uint8_t BytesCount, FrameLenght, counterTx;<br />char bufferTx&#91;50&#93;;<br />uint8_t czujniki_cnt;/* ilość czujników na magistrali */<br />uint8_t subzero, cel, cel_fract_bits;<br /><br /><br />void TransmissionStart(uint8_t lenght)<br />{<br />counterTx = 0;<br />FrameLenght = lenght;<br />UDR |= bufferTx&#91;0&#93;;<br />}<br /><br />ISR(USART_TXC_vect)//przerwanie WYSŁANY BAJT<br />{<br />if (counterTx&lt;FrameLenght)<br />{<br />counterTx++;<br />UDR = (bufferTx&#91;counterTx&#93;);//jest jeszcze cos do wysłania<br />}<br />else<br />{<br />}<br />}<br /><br /><br /><br />int main(void)<br />{<br />_delay_loop_2 (65500);<br />_delay_loop_2 (65500);<br /><br />DDRC |= (1&lt;&lt;DDC2);<br />DDRC |= (1&lt;&lt;DDC3);<br /><br />DDRD |= (1&lt;&lt;PD2);<br />PORTD |= (1&lt;&lt;PD2); <br /><br /><br /><br />//TCCR0 |= (1&lt;&lt;CS02) | (1&lt;&lt;CS00);//prescaler 1024<br />    // TIMSK |= (1&lt;&lt;TOIE0) | (1&lt;&lt;TOIE1);<br />//TCCR1B |= (1&lt;&lt;CS11) | (1&lt;&lt;CS10);//prescaler 1024<br /><br /><br />UBRRH = (BAUDRATE&gt;&gt;8);                      // shift the register right by 8 bits<br />UBRRL = BAUDRATE; <br /><br /><br />//Enable receiver and transmitter */<br />UCSRB = (1&lt;&lt;TXEN)|(1&lt;&lt;TXCIE);<br /> <br /> /* Set frame format: 8data, 1stop bit */<br />UCSRC = (1&lt;&lt;URSEL)|(3&lt;&lt;UCSZ0);<br /><br />sei();<br /><br />//wdt_enable(WDTO_1S);<br />czujniki_cnt = search_sensors();<br />BytesCount = 0;<br />bufferTx&#91;BytesCount&#93; = czujniki_cnt;<br />TransmissionStart(BytesCount);<br /><br /><br />    <br />while(1)<br />{<br /><br />DS18X20_start_meas ( DS18X20_POWER_EXTERN, NULL );///////////////////////////////<br />    _delay_ms(750);<br /><br /><br />if(DS18X20_OK== DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) ) <br />    {<br />BytesCount = 0;<br />bufferTx&#91;BytesCount&#93; = cel;<br />TransmissionStart(BytesCount);<br />}<br /><br />    else<br />    {<br />BytesCount = 0;<br />bufferTx&#91;BytesCount&#93; = 0;<br />    TransmissionStart(BytesCount);<br />    }  <br />if(DS18X20_OK== DS18X20_read_meas(gSensorIDs&#91;1&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) ) <br />    {<br />BytesCount = 0;<br />bufferTx&#91;BytesCount&#93; = cel;<br />TransmissionStart(BytesCount);<br />}<br /><br />    else<br />    {<br />BytesCount = 0;<br />bufferTx&#91;BytesCount&#93; = 0;<br />    TransmissionStart(BytesCount);<br />    }       <br /><br />  <br />}<br /><br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=15536">wawrzyc</a> — 7 maja 2018, o 08:44</p><hr />
]]></content>
</entry>
</feed>