Arduino 보드 간의 유선 직렬 통신 설정

이 블로그는 두 개의 Arduino 보드 간에 유선 직렬 통신을 설정하는 방법을 설명합니다.



This tutorial is meant for those with some knowledge of Arduino and IoT.
The purpose of building this blog is to write down the detailed operation history and my memo for learning the Arduino.
If you are also interested and want to get hands dirty, just follow these steps below and have fun!~



다음 도구가 사용됩니다.


  • Arduino 보드 2개(예: 광산은 운과 101)
  • 점프 와이어(2개면 충분)

  • 전제 조건


  • 보드가 USB를 통해 컴퓨터에 단단히 연결됨
  • 보드 드라이버가 제대로 설치됨
  • 컴퓨터에서 포트를 식별함
  • 한 사람의 TX와 다른 사람의 RX, 한 사람의 RX와 다른 사람의 TX를 연결하는 점프 와이어

  • 시작하기



    마스터 보드용 코드(Arduino 101):



    Send integer data to slave board



    void setup() {
      // Begin the Serial at 9600 Baud
      Serial.begin(9600);
      Serial1.begin(9600);
    }
    
    int thisByte = 33;
    
    void loop() {
      Serial1.write(thisByte); //Write the serial data
      if (thisByte == 126) {    // you could also use if (thisByte == '~') {
         //This loop loops forever and does nothing
         // holds
        while (true) {
          continue;
        }
        //thisByte = 32;
      }
      // go on to the next character
      thisByte ++;
      //delay(1000);
    }
    


    슬레이브 보드용 코드(Arduino yún)



    Receive data from the master board, and print the data to console



    int incomingByte = 0;  
    
    void setup() {
      // Begin the Serial at 9600 Baud
      Serial1.begin(9600);
      Serial.begin(9600);
    }
    void loop() {
      // send data only when you receive data:
      if (Serial1.available() > 0) {
      // read the incoming byte:
         incomingByte = Serial1.read();
         // say what you got:
         Serial.print("Received:  ");
         Serial.write(incomingByte);
         Serial.print("    DEC:  ");
         Serial.print(incomingByte, DEC);
         Serial.print("    HEX:  ");
         Serial.print(incomingByte, HEX);
         Serial.print("    OCT:  ");
         Serial.print(incomingByte, OCT);
         Serial.print("    BIN:  ");
         Serial.print(incomingByte, BIN);
         Serial.println(" ");
       }
    }
    


    결과의 일부





    문제 해결


  • Install Arduino IDE to Linux and enable serial ports
  • Official docs for serial communication

  • 참조



    https://docs.arduino.cc/software/ide-v1/tutorials/Linux
    https://www.circuitbasics.com/how-to-set-up-uart-communication-for-arduino/

    좋은 웹페이지 즐겨찾기