시리얼 통신 (직렬 통신)

학습목표

1. 시리얼 통신 개요


2 시리얼 통신을 통해 PC로 데이터 전송

2.1 예제 1

2.2 예제 2


3. 시리얼 통신으로 PC에서 아두이노 보드로 메시지 보내기

3.1 예제 3

하드웨어 구성

Sketch 프로그램

int pin_LED[4] = {8,9,10,11};
int k;

void setup() {
  Serial.begin(9600);
  for (k=0; k<4; k++) {
    pinMode(pin_LED[k], OUTPUT);
  }
  Serial.println("Enter 1,2,3,4!");
}

void loop() {
  if (Serial.available()) {         // 입력된 문자가 하나 이상 있는지 검사 
    char select = Serial.read();    // PC로부터 1개의 문자를 받아 저장
    Serial.print("Select Number=");
    Serial.println(select);         // 저장된 문자를 표시
    
    if (select == '1') {                // 문자 '1'이 입력된 경우
      digitalWrite(pin_LED[0],HIGH);    // pin_LED[0]에 연결된 LED ON
    } else if (select == '2') {         // 문자 '2'이 입력된 경우
      digitalWrite(pin_LED[1],HIGH);    // pin_LED[1]에 연결된 LED ON
    } else if (select == '3') {         // 문자 '3'이 입력된 경우
      digitalWrite(pin_LED[2],HIGH);    // pin_LED[2]에 연결된 LED ON
    } else if (select == '4') {         // 문자 '4'이 입력된 경우
      digitalWrite(pin_LED[3],HIGH);    // pin_LED[3]에 연결된 LED ON
    } else {                            // 나머지 경우
      for (k=0; k<4; k++) {             // 모든 LED OFF
        digitalWrite(pin_LED[k], LOW);
      }
    }
    delay(1000);
  }
}