아두이노 LED2개 동시에 - adu-ino LED2gae dongsie

"4차 산업혁명의 시대를 준비하는 융합인재를 위한 교육과정"

▣ 수학/과학(교과내신/교과심화/경시/창의사고력과정)

▣ 코딩(알고리즘, KOI, 정보올림피아드, C/C++언어, 이산수학)

▣ 사물인터넷(아두이노, 메이커, 프로젝트, 과학탐구)

▣ 융합실험과학(즐겁게 만들고 실험하기, 자작)

▣하늘교육 팔용학원 ▣창원하늘바다영재교육원

055)297-2626

아두이노 LED2개 동시에 - adu-ino LED2gae dongsie

아두이노(Arduino)와 브레드보드(Bread Board)를 이용한

LED 2개를 동시에 ON(켜기) 하기

// 8, 9번 핀 사용

int led1=8;

int led2=9;

void setup() {

  pinMode(led1, OUTPUT);//출력으로 설정

  pinMode(led2, OUTPUT);//출력으로 설정

}

void loop() {

  digitalWrite(led1, HIGH); //LED ON

  digitalWrite(led2, HIGH); //LED ON

  delay(500);//0.5초

  digitalWrite(led1, LOW); //LED OFF  

  digitalWrite(led2, LOW); //LED OFF 

  delay(500);//0.5초

}

이번에는 두개의 LED가 교대로 ON/OFF가 되도록 해보자.

즉 위의 코드는 LED 두개가 0.5초 간격으로 깜박 깜박 한다.

한개가 ON되면 다른 한개는 OFF가 되면서 깜박 깜박하게

해보자.^^

// 8, 9번 핀 사용

int led1=8;

int led2=9;

void setup() {

  pinMode(led1, OUTPUT);

  pinMode(led2, OUTPUT);

}

void loop() {

  digitalWrite(led1, HIGH);

  digitalWrite(led2, LOW);

  delay(500);

  digitalWrite(led1, LOW);

  digitalWrite(led2, HIGH);

  delay(500);

}

이제 LED 를 켜는 것쯤은 식은 죽 먹기 입니다.

하지만 이것은 식은죽 이상의 의미를 가지고 있습니다. 

단순히 켜고 꺼진다는 것이 아닌, LED 뿐만이 아니라 어떠한 기기들의 전원을 올리고 내릴 수 있다는 뜻입니다.

즉!! 카메라의 셔터를 누른다든지, 방안의 전등을 켜고 끈다든지 하는 것들을 할 수 있다는 것이죠!!

어쨌든 이번에는 LED 2개를 켜보도록 하겠습니다.

회로는 아래와 같이 꾸미시고~

편의상 회로를 뒤집어 놨습니다.

 

12번, 13번 이렇게  2개의 핀을 사용하지만, GND핀은 두개가 아닌 하나만사용합니다.  

회로를 보시는 것처럼 합쳐서 나갑니다 : )

코드는 아래와 같습니다.

// LED1, LED2 변수 에 각 12와 13을 넣습니다. 


int LED1 = 12;
int LED2 = 13;

void setup() {

  // 12, 13번으로 출력을 하도록 설정.
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
}

voidloop(){

  //LED1 즉 12번 핀에 연결된 LED 켜기
  digitalWrite(LED1, HIGH);

  //LED2 즉 13번 핀에 연결된 LED 끄기
  digitalWrite(LED2, LOW);
  // 0.5초 대기

  delay(500); 

  //반대로 끄고, 켭니다.
  digitalWrite(LED1, LOW);
  digitalWrite(LED2, HIGH);
  delay(500);
}

그리고 아두이노에 업로드를 하면~~

2개의 LED가 번갈아 가면서 점멸합니다.

이번에도 쉽죠?

깜박이는 속도를 변경하려면 delay(숫자); 를 변경하면 됩니다.

전에도 말씀드렸다시피 1000은 1초입니다.

만약에 30개의 LED를 컨트롤하고 싶다면 어떻게 할까요?

아쉽게도  아두이노 단독으로는 그 많은 수의 LED를 켤 수 없습니다.

두가지 이유가 있습니다.

하나는 아두이노가 그 많은 LED를 켤 만한 전압과 전류를 낼 수 없다는 것,

또 하나는 아두이노가 가진 핀의 갯수가 부족하다는 것입니다.

그럼 어떻게 하느냐??

여러개의 LED를 컨트롤 해주는 부품을 구입하거나, 회로를 직접 꾸미는 수 밖에 없습니다. : (

이것은 나중에 공부해보도록 하죠.