아두이노 시리얼 통신하기
안녕하세요, 오늘은 저번주에 소개해드린 시리얼 통신을 실제로 사용해보려고 합니다. 실제로 아두이노에선 시리얼 통신이 어떻게 이루어지는지, 어떻게 사용하면 되는지 간단하게 설명해보는 시간을 가져보도록 하겠습니다. 보너스로 아두이노의 led도 제어하는 방법도 첨부했습니다. 그럼 오늘도 힘내서 달려봐요!
준비물
- 아두이노, USB 2.0 AB 케이블
일단 아두이노가 필요합니다. 그리고 아두이노와 컴퓨터(노트북)을 연결할 케이블도 하나 준비해주세요. 아두이노 케이블이라고 쳐서 구매하셔도 좋고, USB 2.0 AB 케이블이라고 쳐서 구매해주셔도 됩니다.
2. 아두이노 프로그램 설치 (Arduino IDE)
위 사이트에서 아두이노 IDE를 설치해주세요. 위 프로그램을 통해 아두이노와 시리얼 통신을 해볼 예정입니다. 준비가 다 되셨다면 다음 단계로 넘어가봐요.
아두이노 연결하기
아두이노와 컴퓨터를 연결하면 세팅해줘야 할 것이 있습니다. 바로 아두이노가 잘 연결되었는지 확인하는 작업인데요. 작업하시는 환경에서 장치관리자를 찾아 들어가주세요. 장치관리자에서 포트 항목으로 가시면, COM 뒤에 일정한 숫자로 지정되어 연결되어 있습니다. 그렇다면 연결이 잘 된거랍니다.
만약 장치 드라이버가 없다면 ‘기타 장치-알 수 없는 장치’ 와 비슷하게 나타나실 수도 있습니다. 그렇다면 우클릭을 통해 드라이버 소프트웨어를 설치해주셔야 합니다. 포트 하단에 아두이노가 아닌 다른 이름으도 아두이노가 연결되어 있을 수도 있습니다. 참고해주세요!
좀 더 간단하게 아까 설치한 아두이노 프로그램을 통해 확인하실 수도 있습니다. 아두이노 툴을 실행시켜 상단의 ‘툴-포트’ 메뉴를 들어가보시면 아두이노가 잘 연결되었는지 확인 가능합니다. 잘 연결되었다면 연결되어있는 아두이노를 클릭하세요.
통신하기
이제 준비는 끝났습니다. 이제 코딩을 하면 간단하게 통신을 할 수 있습니다. 프로그램의 사용방법을 먼저 설명해보도록 하겠습니다.
프로그램을 실행하면 상단에 위와 같은 버튼이 있습니다. 좌측부터 차례대로 설명하겠습니다. 제일 좌측 버튼은 확인 버튼으로 컴파일을 할 수 있습니다. 그 다음의 우측 버튼은 아두이노에 파일을 업로드해서 실행시킬 수 있는 버튼입니다. 그 다음은 새 파일을 여는 버튼과 저장 버튼이 차례대로 있습니다. 가장 포인트인 우측 버튼은 시리얼 모니터 화면을 켜는 버튼입니다. 아두이노와 통신하는 내용을 쉽게 보실 수 있습니다.
일단 아두이노에 간단하게 코딩을 해보도록 하겠습니다. 아두이노 보드에 있는 led를 5를 전송하면 깜빡거리도록 하는 코드를 작성해봤습니다. 추후에 아두이노 코딩과 관련된 설명을 하겠지만, 일단 간단하게 setup()은 맨 처음에 1번만 실행되는 함수입니다. loop는 이름대로 계속해서 반복 실행되는 부분입니다.
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(13, OUTPUT);
}void loop() {
// put your main code here, to run repeatedly:
int test = Serial.parseInt(); //input int
if(test==5){
Serial.println(test); //print test
digitalWrite(13, HIGH); //led on
delay(3000);
digitalWrite(13, LOW); //led off
delay(3000);
}
}
begin을 통하여 통신의 시작을 알린 뒤, loop 안에서 숫자를 입력 받아 만약 5가 입력되면 그 숫자를 출력하고, 아두이노에 달려있는 led를 3초동안 켰다가 꺼는 작업을 실행하는 코드입니다. 위의 코드만으로 간단하게 시리얼 통신으로 아두이노를 제어할 수 있습니다.
글을 마치며
오늘은 실제 아두이노에서 시리얼 통신을 하고, 더 나아가 아두이노를 제어하는 방법을 가볍게 실습해봤습니다. 간단하죠? 사실상 연결만 하면 끝이랍니다! 이제 여기서 아두이노에 다양한 센서를 연결하고, 값을 전달받아 그걸 웹에 뿌려준 뒤 제어한다면 그게 바로 IoT의 시작이라고 생각합니다. 여러분도 충분히 해보실 수 있을 거라 믿어요. 앞으로도 함께 IoT 개발자를 향해 열심히 달려나가 봅시다. 🤸♀️
각종 피드백과 오류 수정 및 오탈자 지적 등의 댓글은 언제나 열린 문입니다. 문의사항이 있다면 OCOL 메일로 언제든 연락 부탁드려요. 앞으로도 쭉 IoT와 관련된 글을 올릴 예정이니 자주 만나길 바래요. 여기까지 읽어주신 분들 모두 감사합니다. 쿠키와 함께하는 달달한 한 주 되세요🍪