Étape 6: Le croquis de l’Arduino
Pour lire la température que maintenant, vous avez besoin pour obtenir la valeur de A0 à l’aide de analogRead(0). Cela vous donnera une valeur comprise entre 0 et 1024. 1024 représentera la tension d’alimentation. Voici une esquisse de l’exemple de lire le LM335. Vous pouvez télécharger ce code ici. J’ai séparé la classe j’ai utilisé ici comme une bibliothèque d’arduino. Si vous voulez l’utiliser vous pouvez le télécharger ici. Une fois que vous avez ce fichier, décompressez-le et copiez vous votre répertoire arduino/bibliothèques. Vous pouvez l’importer ensuite dans n’importe quel dessin que vous aimez.
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); }