아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
은혜로운왈라비232
은혜로운왈라비23219.06.05

아두이노로 UART TxRx Loop 테스트를 하려고 합니다.

외부 신호가 입력되는 시점에서 특정 문자열을 출력하여 출력된 문자열을 다시 받는 테스트 프로그램을 만들고 싶습니다.

간단한 설명이나 예제 부탁 드립니다.

55글자 더 채워주세요.
답변의 개수
1개의 답변이 있어요!
  • 안녕하세요.

    이전에 제가 coding했던 내용 수정하여 올려봅니다.

    설명은 주석으로 달아두었습니다.

    int led_4 = 4; //문자열 수신 확인 출력 신호 int led_11 = 11; //문자열 전송 trigger 신호 int bt_state = 0; // 통신 상태 flag String inputString = ""; boolean stringComplete = false; //문자열 수신 완료 flag void setup() { Serial.begin(9600); //UART baud rate Serial.println("Hello~"); //출력할 문자열 pinMode(led_4, OUTPUT); pinMode(led_11, INPUT); String inputString = ""; boolean stringComplete = false; } void loop() { bt_state = digitalRead(led_11); if(bt_state == 1) { digitalWrite(led_4, HIGH); Serial.println("ABCDEFG"); } else digitalWrite(led_4, LOW); delay(20); if(stringComplete) { inputString = ""; stringComplete = false; } } void serialEvent() { while (Serial.available()) { char inChar = (char)Serial.read(); inputString += inChar; if (inChar == '\n') { stringComplete = true; } } }