
Originally Posted by
lerameur
simple I need to take the difference. I believe pic basic pro can only handle unsigned numbers. So but keeking the original forula we get negative number for zero temperature. So by putting the 3200 in front , we get a positive number and add a minus sign.
for -15 degrees celcius
we have 15*100 =1500 in the euqation
=3200 - (1500/5*9) = 500
= 500/100 ------divide by hundred caus ewe multiplied by a 100 initially
=5
= -5 ----- here we just add the minus
but anyway , remember when i said my decimal values was going reverse. I was thinking and that is similar from doing 2,s compliment . so i decided to do 2,s compliment on everything..
Zerotemp: '------------- cases when zero celcius and positive Fahrenheit
temperature = ( ~ temperature ) + 1
count_per_c = ( ~ count_per_c) + 1
count_remain= ( ~count_remain) + 1
temp1 = temperature
temperature = ((( temperature >>1 ) *100)- 25) + (((count_per_c - count_remain) * 100) / count_per_c)
if tempF <= 0 then goto ZeroF
': tempf = ( ~ tempF ) + 1 ' added this
tempF = (((temperature /5) *9 ) + 3200)
lcdout $FE,1, "TempC: ", "-", dec (temperature / 100) , ".", dec2 temperature," ",$DF,"C"
lcdout $FE,$C0, "TempF: ", dec (tempF / 100) , ".", dec2 tempF ," ",$DF,"F"
goto loop
ZeroF: '---------------- cases when zero celcius and 0 Fahrenheit
tempF = 3200 - ((temperature /5) * 9)
lcdout $FE,1, "TempC: ", "-", dec (temperature / 100) , ".", dec2 temperature," ",$DF,"C"
lcdout $FE,$C0, "TempF: ", "-", dec (tempF / 100) , ".", dec2 tempF ," ",$DF,"F"
goto loop
end
Bookmarks