ds18b20 i 85stC

Aug 30, 2008 14 Replies

Witam. W dokumentacji czujnika ds18b20 napisane jest ¿e zanim czujnik skoñczy robiæ pierwszy pomiar to zwraca temperaturê 85stC. Jak w takim razie odró¿niæ czy jest to warto¶æ przed pierwszym pomiarem, czy mo¿e rzeczywi¶cie jest taka temperatura?



Dziêkujê za pomoc Pozdrawiam Pawe³



Po prostu, po komendzie "Start Conversion" musisz poczekać odpowiednio długi czas (zależny od ustawionej dokładności) i wtedy dopiero czytać temperaturę... "zwracanie" wartości 85 dotyczy sytuacji, gdy zaczniesz czytać temperaturę zanim czujnik ukończy konwersję - taka sytuacja nie powinna nigdy nastąpić!! :)...

Też pozdrawiam Też Paweł (Konop)

Tylko ¿e w moim przypadku musi byæ mo¿liwo¶æ zmiany(lub chwilowego od³±czenia czujnika) na kabelku "w locie" bez informowania o tym fakcie procesora. I w takim przypadku nie wiem jak wykryæ czy jest to pierwszy pomiar po ponownym przy³±czeniu czujnika czy te¿ poprawny odczyt.

Pozdrawiam Pawe³

Rozumiem. Mam jeszcze pytanie. Czy te 85stC zawsze jest zwracane je¶li za szybko próbujê odczytaæ temperaturê? Czy raczej jest zwracany poprzednio zapamiêtany pomiar?

Pawe³

Szczerze mówiąc nie wiem, ale chyba zawsze ;P... jeśli potrzebujesz sprawdzać, czy czujnik był odłączany, może wykorzystaj wolne obszary w pamięci RAM czujnika (jest tam kilka bajtów, np. do alarmu). Zakładając (musisz to założenie sprawdzić samemu ;P), że po utracie zasilania po odłączeniu kabelka czujnik te dane od razu zgubi (tzn że dane w RAMie padają w tym samym momencie co pomiar, a nie np chwilę później), to odczytując ten baj RAMu możesz sprawdzić czy czujnik był odłączany (ma tam wpisaną wartość startową) czy nie (ma wpisaną Twoją wartość)... Inaczej to sprawdzać - będzie ciężko... w końcu jak odróżnić 85 od 85?? :P... a tak swoją drogą - te czujniki nie mają jakiejś "Busy flag"??:>

Pozdrawiam Konop

pawel pisze:

Odczytujesz kilka pomiarów i badasz czy są takie same.

Niestety nie ma na to czasu. W miêdzy czasie m.in. muszê obs³ugiwaæ stos tcp/ip. Muszê zrobiæ jeden pomiar i wiedzieæ czy jest prawid³owy czy nie.

Pozdrawiam

Pierwszy raz mam z nimi do czynienia i te¿ nie za bardzo wiem. A mo¿e crc przesy³ane przez czujnik jest nieprawid³owe gdy zwracane jest pierwsze 85? Nie zabardzo mam czas ¿eby to sprawdzaæ i testowaæ ale chyba nie bêdê mia³ wyboru.

Pozdrawiam

A jak czujnik jest odłączony to co? Wisisz czekając na niego? Flaga, że czujnika nie było a po jego 'znalezieniu' olewasz pierwszy odczyt. Czyli tak, jakby został podłączony te kilkanaście ms później.

pawel pisze:

Poprzednio zapamiętany. Pomyliłem się kiedyś w nastawach timera i w serii odczytów dostawałem wynik "o jeden do tyłu".

U¿ytkownik "Pawel" snipped-for-privacy@poczta.onet.pl> napisa³ w wiadomo¶ci news:g9cbaa$2a5$ snipped-for-privacy@news.onet.pl...

Jak nie masz czasu, to po zabierasz siê za ten czujnik ? To wyj±tkowy powolny klamor. Trzeba mieæ istotne powody by go u¿yæ. Rozejrzyj siê za innymi czujnikami

Obserwator pisze:

A to dziwne, bo jeśli czytałeś czujnik zanim konwersja została ukończona, to przecież zabierałeś mu zasilanie (np. do resetu, lub w czasie wysyłania komendy), tak więc nie mógł on dokończyć konwersji, czyż nie?? No chyba, że pracował on w trybie 3-przewodowym, to może faktycznie by dało radę ;)... A swoją drogą, jak sprawdziłeś, że to pomiar "o jeden do tyłu" a nie aktualny?? Skoro kolejne pomiary pewnie różnią się o ułamki stopnia ;)...

Pozdrawiam Konop

Konop pisze:

Tak było - zasilanie miał oddzielnie, nie pasożytem.

Miałem obok czujnik referencyjny, a pomiary robiłem co około 1-2 sekundy, w wymuszonych warunkach temperaturowych (różnice były nawet po kilka stopni między kolejnymi pomiarami).

A czy czujnik referencyjny miał tę samą bezwładność cieplną?? ;););)... Sorry za upierdliwość ;P...

Pozdrawiam Konop

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required