Arduinoで温度を測ってみた
温度センサーはLM35CAZを使った。
配線はこんなかんじ。
スケッチはこれ。
/* LM35CAZを用いた温度測定(_℃〜_℃) シリアルモニターとLCDに表示 */ #include <LiquidCrystal.h> #define A_inPin 0 //A0ピンに温度センサーの出力を入れる float A_val; // アナログ入力値(0〜203) float tempC = 0; // 摂氏値( ℃ ) float temp; // int i; // float sum; // initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //おまじない程度 void setup(){ Serial.begin(9600); Serial.println("start"); pinMode(A_inPin,INPUT); lcd.begin(16, 2); lcd.setCursor(0, 0); lcd.print("temp"); lcd.setCursor(13, 0); lcd.print("deg"); } void loop(){ A_val = analogRead(A_inPin); //arduinoは1ミリ秒間に1000回データ取得できる //較正する。(1℃=100mVに対応) tempC = (( 5 * A_val) / 1024) * 100; sum=0; for (i=0;i<=50;i++){ sum = sum + tempC; delay(2); //50<1000*2でないとだめ? } temp = sum/50; //LCDに表示 lcd.setCursor(7, 0); lcd.print(temp); //シリアルに表示 Serial.println(temp); delay(500); //0.5秒後にデータ取得 }
出力はこんな感じ。
start 29.38 28.89 28.89 28.89 28.89 28.89
あとでまた書き直します・・