decimal point in temp reading

el_supremo:

 float averageTemp; // create a float to hold running average

for (int i = 1; i < 1000; i++) // start at 1 so we dont divide by 0
    averageTemp += ((Temp - averageTemp)/(float)i); // get next sample, calculate running average




This code doesn't do anything useful.
The declaration of averageTemp will cause it to be initialized with a random value which makes the for loop start its "running average" with a random value.
The for loop uses the same value of Temp every time so it is not generating a running average.

Pete

How about this,
I just split it back into two classes so "Temp" would change on every evaluation.

/*

  • Thermistor Function, Read thermistor and return a value in deg. F
    /
    double Thermister(int RawADC) {
    double Temp;
    Temp = log(((10240000/RawADC) - 10000));
    Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))
    Temp );
    Temp = Temp - 273.15; // Convert Kelvin to Celcius
    Temp = (Temp * 9.0)/ 5.0 + 32.0; // Convert Celcius to Fahrenheit
    return Temp;
    }

/*

  • avrage temp sensor reading
    */
    float AvrageTemp(int analog_pin){
    float averageTemp; // create a float to hold running average
    for (int i = 1; i < 1000; i++) // start at 1 so we dont divide by 0
    averageTemp += ((Thermister(analog_pin) - averageTemp)/(float)i); // get next sample, calculate running average
    return averageTemp; // return average temperature reading
    }