Paso 6: El Sketch de Arduino
Para leer la temperatura que necesita ahora para obtener el valor de A0 usando analogRead(0). Esto le dará un valor entre 0 y 1024. 1024 representa la tensión de alimentación. La siguiente es un bosquejo de ejemplo leer el LM335. Puede descargar este código aquí. Partí de la clase utiliza aquí como una librería de arduino. Si usted quiere usar lo puede descargar aquí. Una vez tengas ese archivo, descomprimirlo y copiarlo que el directorio arduino/bibliotecas. Entonces se pueden importar a cualquier dibujo que te gusta.
class LM335<br>{ float cal; int pin; public: LM335(float mCal, int mPin); float measureV(); float measureK(); float measureC(); float measureF(); float measureRankine(); };
LM335::LM335(float mCal, int mPin) { cal = mCal; pin = mPin; } float LM335::measureV() { float retVal = (float) analogRead(pin); retVal = (retVal*cal)/1024.0; return retVal; } float LM335::measureK() { return measureV()/0.01;//10mV/k } float LM335::measureC() { return (measureV()/0.01)-273.15; } float LM335::measureF() { return (((measureV()/0.01)-273.15)*1.8)+32; } float LM335::measureRankine() { return measureF() + 458.67; }
LM335 mTemp(4.92, 0);//supply volts, analog pin
void setup() { Serial.begin(38400); } void loop() { Serial.print(mTemp.measureV()); Serial.println(" volts"); Serial.println("Temperatures: "); Serial.print("Kelvin: "); Serial.println(mTemp.measureK()); Serial.print("Fahrenheit: "); Serial.println(mTemp.measureF()); Serial.print("Celsius: "); Serial.println(mTemp.measureC()); Serial.print("Rankine: "); Serial.println(mTemp.measureRankine()); delay(1000); }