안녕하세요 데브구일입니다!
오늘은 아두이노를 가지고 시리얼 모니터를 사용해보고자 합니다 :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 !
'Arduino' 카테고리의 다른 글
[PlatformIO] 아두이노 Serial 출력하기 (0) | 2022.05.03 |
---|---|
[PlatformIO] 아두이노 Switch 구현하기 digitalRead() (Pull up 스위치) (0) | 2022.04.24 |
[PlatformIO] 아두이노 LED Blink digitalWrite() (PlatformIO 프로젝트 생성) (0) | 2022.04.11 |
아두이노로 버튼을 사용해보자! (0) | 2022.04.05 |
아두이노로 LED 켜기 ! (0) | 2022.04.04 |