본문 바로가기

Activities/AnyWhereGym Project

[아두이노] 순서대로 반짝이는 LED & 버튼








- 준비물 : LED 5개, 560ohm 저항 5개




#define DELAY_TIME 100


void setup() {

 pinMode(2, OUTPUT);

 pinMode(3, OUTPUT);

 pinMode(4, OUTPUT);

 pinMode(5, OUTPUT);

 pinMode(6, OUTPUT);

}


void loop() {

  digitalWrite(2, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(2, LOW);

  digitalWrite(3, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(3, LOW);

  digitalWrite(4, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(4, LOW);

  digitalWrite(5, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(5, LOW);

  digitalWrite(6, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(6, LOW);

  digitalWrite(5, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(5, LOW);

  digitalWrite(4, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(4, LOW);

  digitalWrite(3, HIGH);

  delay(DELAY_TIME);

  

  digitalWrite(3, LOW);

}



준비물 : LED 1개, 버튼 1개, 560 ohm 저항 1개, 10k ohm 저항 1개







버튼을 누르면 LED에 불이 들어옵니다.





- 플로팅 상태는 입력핀의 전압이 고정이 되어 있지 않기 때문에 발생한다.


- 풀업 : 입력핀과 전원사이를 저항을 두고 연결한다.

스위치가 연결이 되지 않으면 입력핀의 전압은 5V가 된다.


- 풀 다운 : 입력핀과 GND 사이를 저항을 두고 연결한다.

스위치가 연결되지 않으면 입력핀의 전압은 0V가 된다.


즉, 스위치 앞에 전기를 붙여주는것이 풀업이고

스위치 뒤에 (GND쪽에) 전기를 붙여주는것이 풀다운이다.



버튼을 눌러도 플로팅 상태이기 때문에

풀업이나 풀다운처럼 저항을 앞, 뒤로 붙여줘야 한다.

→ 이상태가 되어야만 버튼을 정확히 제어하는 것이 가능하다.







< 도전해보기 >


- LED가 켜지는 순서를 바꾸어 본다.

- 버튼 방식을 풀업으로 구현해 본다.

(지금 예제는 풀다운)



< 이번시간에 배운거 정리 >

- 가장 기본적인 LED

- 버튼을 가지고 LED 제어하는 방법 알아봄



< 기억할 것 >

- digital Write와 digital Read를 통해 LED를 제어할 수 있다

- 버튼에서는 플로팅상태가 있는데 이것을 풀업, 풀다운가지고 처리할 수 있다

- LED를 제어하는 곳에다가 저항을 붙여서 구현을 할 수 있고

다양한 패턴을 넣으면 재미있는것을 만들 수 있다

- 공부한것을 바탕으로 재미난 것들 여러개 만들어 보기 !