以下是一个使用Arduino温度传感器和LED的示例代码:
#include
#include
// 定义传感器引脚
#define ONE_WIRE_BUS 2
// 初始化传感器
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
// 定义LED引脚
int ledPin = 13;
void setup(void) {
// 启动串口通信
Serial.begin(9600);
// 初始化温度传感器
sensors.begin();
// 设置LED引脚为输出模式
pinMode(ledPin, OUTPUT);
}
void loop(void) {
// 读取温度传感器数据
sensors.requestTemperatures();
float temperatureC = sensors.getTempCByIndex(0);
// 打印温度值
Serial.print("Temperature: ");
Serial.print(temperatureC);
Serial.println("°C");
// 如果温度大于30°C,点亮LED
if (temperatureC > 30) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
// 等待1秒
delay(1000);
}
这段代码使用了OneWire库和DallasTemperature库来读取温度传感器的数据。在setup函数中,我们初始化了传感器和LED引脚。在loop函数中,我们首先请求温度传感器的数据,并通过getTempCByIndex函数获取温度值。然后根据温度值来控制LED的亮灭,如果温度大于30°C,LED将点亮,否则将熄灭。最后,通过delay函数延迟1秒,然后再次循环执行。