C/Serial Monitor
[C] Serial Monitor Step 8 - 전송받은 데이터 출력하기
미친해커
2022. 1. 1. 02:48
반응형
이제 대부분의 기본적인 함수는 완성되었다. 이제 이 함수들을 사용하여 시리얼 포트로부터 데이터를 받아 출력해보는 코드를 작성해보자
#include "SerialMonitor.h"
int main(int argc, char *argv[])
{
if (argc < 2)
{
printf("Usage : Program.exe [Com Number]\n");
return -1;
}
DWORD ComNumber = atoi(argv[1]);
HANDLE hComm = GetCommHandleByComNumber(ComNumber);
if (hComm == INVALID_HANDLE_VALUE)
{
return -1;
}
if (SetBaudRate(hComm, 115200) == FALSE)
{
return -1;
}
while (TRUE)
{
char buffer[32] = { 0, };
if (SerialRead(hComm, buffer, 32) != 0)
printf("%s", buffer);
}
}
커맨드 인자로 시리얼 포트 번호를 입력받아 해당 시리얼의 핸들을 얻어 해당 핸들로부터 읽어들인 데이터가 있으면 printf 함수를 이용해 출력하는 예제이다. 아두이노에 업로드한 코드는 다음과 같다.
void setup()
{
Serial.begin(115200);
}
void loop()
{
Serial.println("Hello World Arduino!");
delay(500);
}
콘솔창에 0.5초에 한번씩 "Hello World Arduino!" 라는 문자열이 정상적으로 출력된다면 성공이다.
반응형