这是一个相当简单的项目,您可以使用 Starter Kit 中的部件来构建它。显示屏将以摄氏度显示当前温度,LED 将根据三个不同的温度范围分别点亮。当温度超过 26 度时,压电将发出警报信号。
你需要:
按照上面的示意图连接所有项目。
使用 Arduino IDE 将以下代码上传到您的 Arduino Uno,您就完成了。请记住,您可以通过 USB 连接或直接使用连接到 Uno 的 GND 和 Vin 连接的 9V 电池供电。
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int sensorPin = 0;
float tempC;
void setup() {
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(13, OUTPUT);
pinMode(9, INPUT);
lcd.begin(16, 2);
}
void loop() {
tempC = get_temperature(sensorPin);
lcd.setCursor(0,0);
lcd.print("Temperature: ");
lcd.setCursor(0,1);
lcd.print (tempC, 1); lcd.print(" "); lcd.print("C");
delay(200);
if (tempC <= 23){
digitalWrite(8, HIGH);
digitalWrite(7, LOW);
digitalWrite(13, LOW);
noTone(9);
}
else if (tempC > 26){
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(13, HIGH);
tone(9, 440, 250);
delay(500);
}
else {
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(13, LOW);
noTone(9);
}
}
float get_temperature(int pin) {
float temperature = analogRead(pin);
float voltage = temperature * 5.0;
voltage = voltage / 1024.0;
return ((voltage - 0.5) * 100);
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !