Witam serdecznie
Przejrzałem mnóstwo wątków i stron www o AVR i problemach z komunikacją z czujnikiem temp. DS18B20. U mnie pomiar działa ale jest pewien haczyk - temperatura mierzona jest (i wyświetlana na LCD) do wartości 70stopni Celsjusza. Dalsze ogrzewanie czujnika powoduje, że otrzymuję tylko jedną wartość temperatury tj. 127,9. Po schłodzeniu układ dalej mierzy temperaturę (bez resetowania).
Pomyślałem, że jest to jakiś problem z konwersją temperatury więc na wyświetlaczu wyświetlam teraz dwie ośmiobitowe zmienne odpowiadające danym o temperaturze z magistrali 1-Wire. Widać wyraźnie, że jedna z 8-bitowych zmiennych zmienia się wraz ze wzrostem temperatury 0..255, a druga pełni rolę licznika przepełnień tej pierwszej - wszystko jest więc ok. Przy wspomnianych 70 stopniach obie liczby przyjmują wartość 255...
Na magistrali mam 1 czujnik z zasilaniem 5V i rezystorem podciągającym 4,7k, kabelek 10cm, pomijam czytanie jego numeru ID.
Sprawdziłem 3 czujniki (niestety z tego samego źródła) i każdy zachowuje się podobnie, choć nie identycznie - temperatury przy których licznik "wariuje" różnią się o +/5 stopni.
W sieci znalazłem tylko 1 podobny wątek - nie został on jednak rozwiązany.
Z problemem walczę od około 2 tygodni. Czy ktoś ma jakiś pomysł co może być przyczyną opisanej sytuacji?
Pozdrawiam
Łukasz
Przejrzałem mnóstwo wątków i stron www o AVR i problemach z komunikacją z czujnikiem temp. DS18B20. U mnie pomiar działa ale jest pewien haczyk - temperatura mierzona jest (i wyświetlana na LCD) do wartości 70stopni Celsjusza. Dalsze ogrzewanie czujnika powoduje, że otrzymuję tylko jedną wartość temperatury tj. 127,9. Po schłodzeniu układ dalej mierzy temperaturę (bez resetowania).
Pomyślałem, że jest to jakiś problem z konwersją temperatury więc na wyświetlaczu wyświetlam teraz dwie ośmiobitowe zmienne odpowiadające danym o temperaturze z magistrali 1-Wire. Widać wyraźnie, że jedna z 8-bitowych zmiennych zmienia się wraz ze wzrostem temperatury 0..255, a druga pełni rolę licznika przepełnień tej pierwszej - wszystko jest więc ok. Przy wspomnianych 70 stopniach obie liczby przyjmują wartość 255...
Na magistrali mam 1 czujnik z zasilaniem 5V i rezystorem podciągającym 4,7k, kabelek 10cm, pomijam czytanie jego numeru ID.
Sprawdziłem 3 czujniki (niestety z tego samego źródła) i każdy zachowuje się podobnie, choć nie identycznie - temperatury przy których licznik "wariuje" różnią się o +/5 stopni.
W sieci znalazłem tylko 1 podobny wątek - nie został on jednak rozwiązany.
Z problemem walczę od około 2 tygodni. Czy ktoś ma jakiś pomysł co może być przyczyną opisanej sytuacji?
Pozdrawiam
Łukasz