디지털·가전제품
아두이노 코드 오류있나 도와주세요..
// 핀 설정
const int redPin = 13; // 빨간색 핀이 연결된 핀
const int greenPin = 12; // 녹색 핀이 연결된 핀
const int bluePin = 11; // 파란색 핀이 연결된 핀
const int tempSensorPin = A0; // 온도 센서의 데이터 핀 (아날로그 핀)
void setup() {
// RGB 핀을 출력 모드로 설정
pinMode(redPin, OUTPUT); // 이 코드가 setup() 함수 내에 있어야 합니다.
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
// LED를 처음에는 모두 끈 상태로 시작
digitalWrite(redPin, LOW);
digitalWrite(greenPin, LOW);
digitalWrite(bluePin, LOW);
Serial.begin(9600); // 시리얼 통신 시작
}
void loop() {
// 온도 센서로부터 아날로그 값 읽기
int sensorValue = analogRead(tempSensorPin);
// 아날로그 값을 전압으로 변환
float voltage = sensorValue * (5.0 / 1023.0);
// 전압을 온도로 변환 (일반적인 온도 센서 기준)
float temperatureC = voltage * 100.0;
// 현재 온도를 시리얼 모니터에 출력
Serial.print("Current Temperature: ");
Serial.println(temperatureC);
// 온도 조건을 30도로 설정
if (temperatureC >= 30.0) {
digitalWrite(redPin, HIGH); // 빨간색 LED 켜기
digitalWrite(greenPin, LOW); // 다른 색 끄기
digitalWrite(bluePin, LOW);
} else {
digitalWrite(redPin, LOW); // LED 끄기
digitalWrite(greenPin, LOW);
digitalWrite(bluePin, LOW);
}
delay(1000); // 1초 대기
}
이코드에 문제가 있는지 봐주시고 수정할부분있으면 수정해주세요.. 자꾸 오류가 뜨는데 어디서 오류가 나는지 모르겠습니다.
설정한것은 온도가 30도 이상일때 RGB LED에서 불빛이 나오도록 설정하였습니다..
1개의 답변이 있어요!