2-3 LED 여러 개 깜박이기

공부하는 학생 A·2024년 1월 23일

아두이노 

목록 보기
9/74

회로 만들기

스케치 2-3 LED 여러 개 연결하기

int led1=2, led2=4, led3=6;
void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
}
void loop() {
  digitalWrite(led1,HIGH);
  digitalWrite(led2,HIGH);
  digitalWrite(led3,HIGH);
delay(1000);
  digitalWrite(led1,LOW);
  digitalWrite(led2,LOW);
  digitalWrite(led3,LOW);
delay(1000);
}

스케치 2-3 설명

LED를 여러 개 연결할 때는 핀 모드를 각각 설정해주어야 한다.

int led1 = 2;

  • 브레드보드에 여러 개의 LED를 연결할 때 핀 번호를 변수로 지정하면 같은 번호가 반복될 때 편리하게 사용할 때 편리하게 사용할 수 있다. 이 스케치에서는 아두이노에 연결되는 핀 번호를 변수로 지정하였다. 변수는 특정한 값을 저장하는 메모리 공간을 말한다. 변수에는 값의 형식, 변수 이름, 저장된 값이 지정된다.
  • 'int' : 저장된 변숫값이 정수라는 의미이다.
  • 'led1' : 변수의 이름이다. 이름을 만들 때는 영어 소문자로 시작하고 띄어쓰기는 하지 않는다.
  • '2' : 변수에 저장된 값이다.

2-3 실행결과

스케치 2-4 for문을 이용한 LED 제어하기

int myLed[] = {2,4,6};
void setup() {
  for (int i = 0; i < 3; i++){
    pinMode(myLed[i],OUTPUT);
  }
}
void loop(){
  for (int i =0; i < 3; i++){
    digitalWrite(myLed[i],HIGH);
    delay(500);
    digitalWrite(myLed[i],LOW);
     delay(500);
  }
}

프로그램 문법 설명

배열

배열은 인덱스(index) 번호로 접근이 되는 변수들의 모임이다. 배열을 이용하면 복잡해질 수 있는 자료의 표현을 단순하게 할 수 있다.

배열이 int myLed[] = {led2,led4,led6}; 인 경우 "led1,led2,led3"은 배열 순서대로 각각 myLed[0], myLed[1], myLed[2]가 된다.

for 반복문

'for'문은 중괄호로 싸인 블록을 반복할 때 사용한다. 배열에 저장된 데이터를 사용할 때 for 반복문을 사용한다.

초기화는 처음에 한 번만 실행되며 조건부에서 조건이 실행되고, 실행이 True이면 증가 부분이 실행된다. 조건이 끝날 때(false)까지 반복한 후 끝난다.

스케치 2-4 설명

void setup() {
for (int i = 0; i < 3; i++){
pinMode(myLed[i],OUTPUT);
}

  • 초깃값이 i=0이고 i가 0부터 3보다 작을 때까지 반복하므로 i는 0, 1, 2가 되고 myLed[i]는 myLed[0], myLed[1], myLed[2]와 같이 차례로 핀 모드 설정이 실행된다.

void loop() 부분도 for문을 이용하여 led 깜박이는 것을 반복한다.

void loop(){
for (int i =0; i < 3; i++){
digitalWrite(myLed[i],HIGH);
delay(500);
digitalWrite(myLed[i],LOW);
delay(500);
}

2-4 실행결과

profile
Shine like a star, Just like a star

0개의 댓글