Arduino 使用 HSM-20G 溫濕度感應器
程式碼如下
void setup()
{
Serial.begin(9600); //使用9600的串列傳輸速率進行通訊
}
void loop()
{
int V0 = analogRead(A0); //從A0讀取電壓資料存入剛剛創建整數型變數V0,類比的電壓測量範圍為0-5V 返回的值為0-1023
float vol_0 = V0*(5.0 / 1023.0); //將V0的值換算成實際電壓值存入浮點型變數 vol_0
int hum = (3.71*pow(vol_0,3))-(20.65*pow(vol_0,2))+(64.81*vol_0)-27.44; //電壓轉換濕度公式,參考IC手冊
// Serial.print(vol_0); //串列輸出電壓值,並且不換行(檢查輸入電壓用,可跟三用電表比較,程式正常後不顯示)
// Serial.println(" V"); //串列輸出字元V,並且換行(檢查輸入電壓用,可跟三用電表比較,程式正常後不顯示)
Serial.print(hum); //串列輸出計算過的濕度值,並且不換行
Serial.println(" %"); //串列輸出字元%,並且換行
int V1 = analogRead(A1); //從A1讀取電壓資料存入剛剛創建整數型變數V1,類比的電壓測量範圍為0-5V 返回的值為0-1023
float vol_1 = V1*(5.0 / 1023.0); //將V1的值換算成實際電壓值存入浮點型變數 vol_1
int temp = (5.26*pow(vol_1,3))-(27.34*pow(vol_1,2))+(68.87*vol_1)-17.81; //電壓轉換溫度公式,參考IC手冊
// Serial.print(vol_1); //串列輸出電壓值,並且不換行(檢查輸入電壓用,可跟三用電表比較,程式正常後不顯示)
// Serial.println(" V"); //串列輸出字元V,並且換行(檢查輸入電壓用,可跟三用電表比較,程式正常後不顯示)
Serial.print(temp); //串列輸出計算過的溫度值,並且不換行
Serial.println("C"); //串列輸出字元%,並且換行
Serial.println(" ");
delay(1000); //輸出完成後等待1秒鐘,用於控制資料的刷新速度。
}
留言列表