아두이노/아두이노 과제
버튼을 통한 LED 제어
펭킹
2024. 7. 17. 15:52
int ButtonState; // 버튼 상태를 저장할 변수
void setup()
{
pinMode(2, INPUT_PULLUP); // 핀 2를 풀업 저항을 사용한 입력으로 설정
pinMode(13, OUTPUT); // 핀 13을 출력으로 설정
}
void loop()
{
ButtonState = !digitalRead(2); // 핀 2의 입력 상태를 읽고 반전시켜 ButtonState에 저장
digitalWrite(13, ButtonState); // ButtonState 값을 핀 13의 출력으로 설정
delay(1); // 1밀리초 지연
}
만약 ButtonState를 반전시키지 않았다면 다음과 같이 코드를 작성할 수 있지만, 비효율적이다.
int ButtonState;
void setup()
{
pinMode(2, INPUT_PULLUP);
pinMode(13, OUTPUT);
}
void loop()
{
ButtonState = digitalRead(2); // 버튼 상태를 읽어옴
if (ButtonState == LOW) { // 버튼이 눌린 상태
digitalWrite(13, HIGH); // LED 켜기
} else { // 버튼이 눌리지 않은 상태
digitalWrite(13, LOW); // LED 끄기
}
delay(1);
}