#include <ezButton.h> // ezButton 라이브러리를 포함합니다.
// 핀번호 지정 및 버튼 객체 생성
ezButton button(2); // 버튼 객체 생성
const int relayPin = 3; // 릴레이 신호 핀 번호
bool relayState = false; // 릴레이 상태 변수
void setup() {
Serial.begin(9600); // 시리얼 통신 시작
button.setDebounceTime(50); // 디바운싱 시간 설정
pinMode(relayPin, OUTPUT); // 릴레이 신호 핀 설정
}
void loop() {
button.loop(); // 버튼 객체의 loop() 메소드를 호출합니다.
if (button.isPressed()) { // 버튼이 눌렸는지 확인합니다.
Serial.println("Button is pressed!"); // 버튼이 눌렸다면 시리얼 모니터에 메시지를 출력합니다.
relayState = !relayState; // 릴레이 상태를 토글합니다.
if (relayState) {
Serial.println("Relay State: Normal Close"); // 릴레이 상태를 시리얼 모니터에 출력합니다.
} else {
Serial.println("Relay State: Normal Open"); // 릴레이 상태를 시리얼 모니터에 출력합니다.
}
digitalWrite(relayPin, relayState); // 릴레이 상태를 업데이트합니다.
}
}