DS18B20 odpowiada 0AA0h...

Jun 05, 2008 5 Replies

Hej!!



Bawię się (pod assemblerem niestety :/) AVRem i DS18B20. Udało mi się już jako-tako dogadać. Wysyłam reset, skip_rom, i convert, po 1 sekundie reset, skip_rom i Read_Scratchpad i co?? 2 pierwsze bajty odpowiedzi to ZAWSZE 0AA0h (w kolejności odbierania!!)... jak takie same polecenia wysyłam korzystając z gotowców pod Bascomem, dostaję jakieś rozsądne wartości (np 9C01h czyli ok 25 stopni). sprawdzam timingi na oscyloskopie i wydaje się być OK. Niestety, mam tylko oscyloskop analogowy przez co nie jestem w stanie zbadać tego dokładnie (albo w pętli czytam z czujnika co 10ms, ale nie robie konwersji, albo robię konwersje co 10ms, ale czujnik głupieje). Dziwi mnie tylko stała i dosyć charakterystyczna wartość odczytanej temperatury... stąd pytanie - może ktoś wie kiedy DS tak odpowiada? Niestety, w Bascomie robiłem różne głupoty z tym cznujnikiem, ale nigdy nie udało mi się takiej wartości uzyskać :(..



Pozdrawiam Konop


U¿ytkownik "Konop" snipped-for-privacy@gazeta.pl napisa³ w wiadomo¶ci news:g28qd0$7i8$ snipped-for-privacy@inews.gazeta.pl...

có¿, na pierwszy rzut oka pochrzani³e¶ kolejno¶æ bitów w bajtach i odbierasz

+85C (0x5005 w kolejno¶ci odbierania), czyli domy¶ln± warto¶æ po w³±czeniu zasilania, a warto¶æ tê odbierasz dlatego, ¿e wys³a³e¶ równie¿ nieprawid³owo rozkaz konwersji.

e.

entroper pisze:

Z bitami pewnie racja, ale... Ostatnio zrobiłem układzik wykorzystujący 18B20 - do 18 czujników na jednej linii. W ciągu kilku dni 4 czujniki przestały reagować na komendę convert - można odczytać ich adres, scratch, ustawić alarmy, ale wartość dwóch pierwszych rejestrów daje niezmiennie +85,0C. Sprawdzałem je na kilku innych urządzeniach i to samo (czyli to nie błąd z komendą). Pozostałe czujniki chodzą normalnie. Ma ktoś pomysł, co się im stało?

U¿ytkownik "Obserwator" snipped-for-privacy@tego-nie-powinno-byc.o.pl.invalid> napisa³ w wiadomo¶ci news:g2b5fc$vnu$ snipped-for-privacy@mail.man.lodz.pl...

jednej linii. W ci±gu kilku dni 4 czujniki przesta³y reagowaæ na

niestety te czujniki teraz s± w³a¶nie takiej jako¶ci. Przechiñszczone trochê za bardzo. Osobi¶cie widzia³em te¿ inne cuda w ich wykonaniu, jak np. zg³aszanie +85C w dwóch losowych punktach (ró¿nych dla ró¿nych czujników, ale sta³ych dla danego czujnika, przy zachowanym CRC, do zaobserwowania tylko przy bardzo powolnych zmianach temperatury). Byæ mo¿e powsta³a jaka¶ felerna seria, któr± siê do dzi¶ upycha po ró¿nych sklepach licz±c, ¿e rynek to jako¶ wci±gnie i trafi³o na Ciebie :) Z drugiej strony 4 sztuki to trochê du¿o, mo¿e pracujesz na granicy dopuszczalnych timingów, kilka sztuk siê rozjecha³o po wygrzaniu i st±d problemy. Ostatecznym rozstrzygniêciem by³by test na przebiegach idealnie spe³niaj±cych wymagania producenta.

e.

entroper pisze:

W opisywanym urządzeniu komunikację z czujnikami zapewnia mi układ DS2482 - konwerter i2c do 1-wire, więc tam timingi raczej są w porządku. Gorzej, że jak się taki czujnik "uprze" i zacznie trzymać stale +85,0, to już w innych maszynach (1-wire programowo na nóżkach uC) też nic nie pokazuje. Czyli pewnie jednak Chińczyki...

U¿ytkownik "Obserwator" snipped-for-privacy@tego-nie-powinno-byc.o.pl.invalid> napisa³ w wiadomo¶ci news:g2bbkj$bf8$ snipped-for-privacy@mail.man.lodz.pl...

Moze nawet podroby - dallas od czasu do czasu ostrzega.

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required