아두이노 스위치 제어 알람 릴레이 조정기
과연 잘 될까?
int Relaypin = 3;
int Switch = 9;
int Switch_stat_prev = 1;
int AllStopSwitch = 10;
byte C = 0;
void setup()
{
Serial.begin(9600);
pinMode(Relaypin, OUTPUT); // 릴레이를 출력으로 설정
pinMode(Switch, INPUT_PULLUP); // 스위치를 입력으로 설정
pinMode(AllStopSwitch, INPUT_PULLUP); // AllStopSwitch 스위치를 입력으로 설정
}
void loop()
{
if ((digitalRead(Switch) == LOW) && (Switch_stat_prev == 1)) // 스위치를 누르면
{
while ( C < 10 ) {
digitalWrite(Relaypin, HIGH); // 1채널 릴레이 ON
delay(2000);
if (digitalRead(AllStopSwitch) == HIGH) { // 릴레이끄기버튼이 눌러지면 종료
digitalWrite(Relaypin, LOW); // 1채널 릴레이 OFF로 경고음 끄기
delay(60000); // 1분간 정지
Switch_stat_prev = 0; // AllStopSwitch 스위치 변수를 0 으로 설정 후 다시 닫고 열기전까지 OFF 하기.
break;
}
//doing something inside the while loop
C++;
}
Switch_stat_prev = digitalRead(Switch); // 스위치 상태를 Switch_stat 변수에 넣기
}
else // 스위치를 누르지 않으면
{
digitalWrite(Relaypin, LOW); // 1채널 릴레이 OFF
delay(100);
}
Serial.print("Push Button = ");
Serial.print(digitalRead(Switch));
Serial.print(" / Prev Button = ");
Serial.print(Switch_stat_prev);
Serial.print(" / All Switch Button = ");
Serial.print(digitalRead(AllStopSwitch));
Serial.print("\n");
}
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
릴레이 제어
int Relaypin = 3;
int Switch = 9;
void setup()
{
pinMode(Relaypin,OUTPUT); // 릴레이를 출력으로 설정
pinMode(Switch,INPUT_PULLUP); // 스위치를 입력으로 설정
}
void loop()
{
if(digitalRead(Switch)==LOW) // 스위치를 누르면
{
digitalWrite(Relaypin,HIGH); // 1채널 릴레이 ON
delay(100);
}
else // 스위치를 누르지 않으면
{
digitalWrite(Relaypin,LOW); // 1채널 릴레이 OFF
delay(100);
}
}
스위치 제어
int led = 7;
int button = 6;
int btnState = 0;
void setup() {
pinMode(led, OUTPUT);
pinMode(button, INPUT);
}
void loop() {
btnState = digitalRead(button);
if(btnState == 1)
{
digitalWrite(led, HIGH);
}
else{
digitalWrite(led, LOW);
}
delay(10);
}