Arduino / / 2022. 4. 5. 14:29

아두이노로 시리얼 모니터 사용해보기 !

728x90

안녕하세요 데브구일입니다!

 

오늘은 아두이노를 가지고 시리얼 모니터를 사용해보고자 합니다 :D

 

시리얼 모니터를 이용해서 버튼을 눌렀을때 LED가 켜지면 

시리얼 모니터에 LED가 켜졌다라는 메세지를 띄워볼게요 !

 

먼저 준비물은 버튼만들기와 동일합니다 !!

 

1. 아두이노

 

2. LED

3. 저항

 

4. 브레드 보드

 

5. 버튼

 

물론 재료가 없어도 아두이노만 가지고도 가능합니다만

 

눈에 보여야 할 맛이 나겠지요 ? :D

 

우선 시리얼 모니터에 대해 알아 볼게요 !

 

시리얼 모니터는 저희가 아두이노를 사용하면서 센서의 값이나, 읽어낸 파일 등을 

모니터에 띄워줄 수 있는 역할을 합니다 :D

 

이것 말고도 시리얼 통신도 가능하지만 이건 나중에 다른 예제로 찾아뵙겠습니당 :D

 

먼저 시리얼 모니터를 사용하기에 앞서서 아두이노 스케치 프로그램을 살펴보겠습니다 !

 

 

 

사진을 보시면 위쪽 메뉴에서 툴 -> 시리얼 모니터를 클릭하시거나 !

 

오른쪽에 보이는 돋보기 모양 아이콘을 클릭하시게 되면 !!

 

 

이런 창 하나가 나타나실겁니다 :D

 

* 혹시 창이 나오지 않고 에러가 나시는 분들은 

  아두이노가 컴퓨터와 연결이 되었는지 확인해주세요 !

 

여기에서 여러분이 보셔야 할 부분은 오른쪽 아래 있는 보드레이트라고 적혀있는 건데요!

 

 

 

보드레이트를 클릭해보시면 !

 

다양한 값이 적혀 있습니다 !

 

이것을 보드레이트 혹은 전송 속도라 하는데요 :D

기본 값은 9600으로 설정이 되어있으실텐데요 !

 

나중에 다양한 통신 모듈을 사용하시다보면 다른 보드레이트 값도 사용하시게 될겁니다 :D

 

대부분의 통신 모듈이 데이터 시트에 전송속도 값이 적혀 있어요 ! 

 

우선 저희는 9600 보드레이트를 사용할 거에요 !

 

#define LED 8
#define BUTTON_IN 9
 
void setup() {
  pinMode(LED, OUTPUT);
  pinMode(BUTTON_IN, INPUT_PULLUP);
  Serial.begin(9600);
}
 
void loop() {
  if(digitalRead(BUTTON_IN) == LOW) {
    digitalWrite(LED, HIGH);
    Serial.println("LED ON")
  } else {
    digitalWrite(LED, LOW);
    Serial.println("LED OFF")
  }
}

 

오늘의 소스 코드입니다 :D

 

버튼 만들기 했을때와 같은 코드를 사용하였구요 !

 

여기에 Serial이라는 새로운 명령어가 나왔습니다 

 

하나씩 알아볼게요 :D

 

void setup() {
  pinMode(LED, OUTPUT);
  pinMode(BUTTON_IN, INPUT_PULLUP);
  Serial.begin(9600);
}

 

setup()을 먼저 확인해보면

 

저희가 못 보던 다른 함수가 생겼지요 ? :D

 

Serial.begin(9600) 이라는 함수가 생겼는데

 

보시면 Serial 이라는 명령어가 있습니다 :D

여기서 Serial에 .(점, 닷)을 찍고 나서

함수를 적게 되는데요

 

원래 클래스 안에 들어있는 함수를 사용할때

저렇게 사용을 하게 됩니다 :D

 

Serail 클래스 안에는 다양한 함수들이 있는데요 !

 

저희가 사용한 함수는 begin()입니다 !

 

begin()은 매개변수가 전송 속도를 입력하셔야 하는데요 !

 

전송 속도는 저희가 9600 보드레이트를 사용하기때문에

 

begin(9600)으로 사용하게 됩니다 !!

 

그래서 Serial.begin(9600) 이지요 !

 

쉽게 생각하시면 Serial을 시작하는데 전송속도를 9600으로 해서 시작하겠다 !!

 

라고 생각하시면 됩니다 !! :D

 

void loop() {
  if(digitalRead(BUTTON_IN) == LOW) {
    digitalWrite(LED, HIGH);
    Serial.println("LED ON");
  } else {
    digitalWrite(LED, LOW);
    Serial.println("LED OFF");
  }
}

 

다음은 loop()입니다 :D

 

여기서는 Serial.println()이라는 함수를 사용하는데요 !

 

println()는 매개변수로 들어가는 값을 시리얼 모니터에 출력해줍니다 !

 

저는 Serial.println("LED ON")과 Serial.println("LED OFF")를 사용했기때문에

 

LED가 켜질때 "LED ON"이 출력될 것이고 LED가 꺼질때 "LED OFF"가 출력될 것 입니다 !

 

그리고 저는 println()이라는 함수를 사용했는데요 print() 라는 것도 존재합니다 :D

 

이 둘의 차이는 줄 바꿈을 하느냐 안하느냐 차이니까 상황에 맞춰서 유용하게 사용하세요 :D

 

그럼 출력이 된 것을 한번 확인해보도록 할게요 !

 

 

 

 

사진을 보시면 "LED OFF"가 계속해서 출력되다가 !

 

버튼을 누르는 순간부터 ! 

 

"LED ON"이 출력 되는 것을 확인하실 수 있어요 !! :D

 

이렇게 시리얼 모니터를 사용하면 나중에 프로그램이 어느부분이 진행되고 있는지도 알 수 있겠지요?? :D

 

 

 

 

오늘은 시리얼 모니터에 대해서 배워보았는데요 

 

어떠셨나요 ?? :D

 

저 같은 경우에는 시리얼 모니터 사용방법 또한 간단해서

시리얼 모니터를 통해서 프로그램이 진행되는 것을 확인하고 버그를 찾기도 한답니다 :D

 

나중에는 센서의 값을 받아서 시리얼 모니터에 출력해보고 ! 제어를 해볼 수도 있으니

 

여러분도 꼭 연습해보시고 다양한 센서를 사용해보시면  도움이 많이 되실 것 같습니다 :D

 

그럼 저는 다음에 새로운 포스팅으로 돌아올게요 :D !

 

 

 

 

 

 

 

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유