DS18b20 i bascom.

Witam! Mam maly problemik. Podlaczylem DS18B20 do AT90S8535 i oprogramowalem to w bascomie. Problem jest w tym, ze wartosc, ktora dostaje na wyjsciu nie odpowiada zeczywistosci. W pokoju jest 21 st.C a na wyswietlaczu mam 18 (bzdura). Jak wloze uklad w lod to pokazuje 0 (dobrze). Jak trzymam czujke to dostaje max 26 st. - a powinno dac chociazby te trzydziesci pare. DS18B20 podlaczylem przez 3-wire ( nozka 1:GND, nozka 2: +5V przez

4,7k(lub2k2-bez rozn.) i do PB.0, nozka 3: +5V) Do odczytu temp. uzywam subprocedurki:

'w main: (..............) 1wwrite &HCC 1wwrite &H44 Read1820 (..............)

'w sub: Sub Read1820 ' reads sensor ans calculate 1wreset ' reset the bus 1wwrite &HCC ' read internal RAM 1wwrite &HBE ' read 9 data bytest Bd(1) = 1wread(9) ' read bytes in array 1wreset ' reset the bus Tmp = Bd(1) And 1 ' 0.1C precision If Tmp = 1 Then Decr Bd(1) T = Makeint(bd(1) , Bd(2)) T = T * 50 : T = T - 25 : T1 = Bd(8) - Bd(7) : T1 = T1 * 100 T1 = T1 / Bd(8) : T = T + T1 : T = T / 10 X = T / 10 End Sub

Co zrobilem zle?

Serdecznie pozdrawiam Michal

Reply to
Michał
Loading thread data ...
Reply to
Robert Polkowski

Jak mnie oko nie myli to procedura odczytu temperatury z DS18S20 a nie DS18B20 snipped-for-privacy@interia.pl

Reply to
nonxx

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.