使用 Arduino 和 LM35 溫度感測器監測溫度

峻祁連發表於2015-09-14

上一篇玩兒了一下Arduino入門,這次再進一步,用一下LM35溫度感測器來監測當前溫度。LM35溫度感測器已經在Arduino入門套件裡包含了,就是那個有三個腳的小黑塊兒。

我們先把這些東西連起來。把感測器查在麵包板上,然後按照下面的示意圖和Arduino連起來。

左邊的腳是電源腳,用紅線連線到Arduino的 5V 電源孔上,最右邊的是接地,用黑線連線到Arduino的GND孔上,中間的腳是溫度資料輸出,我們連線到模擬訊號口0(A0)上面。下面會寫程式碼從A0讀取溫度值。如果你的不工作,拿很可能是把左右搞反了,調個方向再重新連一下就行了。

Screen Shot 2015-09-14 at 3.47.34 PM

接好了之後就是這樣的:

992012145

(你可能注意到Arduino上面還有個紅色的 CC3000 WIFI shield 擴充套件插板,這個是我用了連線網際網路的,現在先不用,可以忽略她)

 

下來該寫點程式碼了,開啟Arduino IDE,輸入下面的程式碼:

float temp = 0;


// the setup routine runs once when you press reset:
void setup() {

Serial.begin(115200);
Serial.println(F("reading temperature begin. \n"));

}

// the loop routine runs over and over again forever:
void loop() {
 
  static unsigned long sensortStamp = 0;
  
  if(millis() - sensortStamp > 100){
    sensortStamp = millis();
    // read the LM35 sensor value and convert to the degrees every 100ms.

    int reading = analogRead(0); //注意到我們是把LM35的輸出端連線到了A0,所以這裡是analogRead(0)
    temp = reading *0.0048828125*100;
    Serial.print(F("Real Time Temp: ")); 
    Serial.println(temp); 
  }
  
}

 

寫好程式碼,就可以把程式碼上傳到Arduino中執行了。上傳完畢後開啟串列埠編輯器你就應該能看到當前溫度已經輸出出來了。從Arduino IDE的“工具”選單裡可找到“串列埠監視器”。主要在串列埠監視器的右下角可以選擇波特率,我們要選擇115200波特,因為我們在setup裡面設定了: Serial.begin(115200); 否則的話你可能看不到輸出。

Screen Shot 2015-09-14 at 4.26.36 PM

 

為了驗證,你可以找個電吹風給感測器加加溫看看是不是溫度有變化?:)

相關文章