Fixed DS18B20 handling because of new floating point handling

Hi,

because of the new floating point API, the old ds18b20 code returns strange values like "19.8250.8250". 
This change fixes that. 

Best regards,
Tobias
This commit is contained in:
Tobias Mädel 2015-02-01 18:20:45 +01:00
parent 055c55a73c
commit 4bde88cd81
1 changed files with 5 additions and 6 deletions

View File

@ -105,11 +105,10 @@ function readNumber(addr, unit)
else else
return nil return nil
end end
t1 = t / 10000 t = t / 10000
t2 = t % 10000
-- print("Temperature="..t1.."."..t2.." Centigrade") -- print("Temperature="..t1.."."..t2.." Centigrade")
-- result = t1.."."..t2 -- result = t1.."."..t2
return t1, t2 return t
end end
tmr.wdclr() tmr.wdclr()
else else
@ -122,11 +121,11 @@ function readNumber(addr, unit)
end end
function read(addr, unit) function read(addr, unit)
t1, t2 = readNumber(addr, unit) t = readNumber(addr, unit)
if((t1 == nil ) or (t2 ==nil)) then if (t == nil) then
return nil return nil
else else
return t1.."."..string.format("%04u", t2) return t
end end
end end