728x90

링크

- ref : https://roboticsbackend.com/raspberry-pi-arduino-serial-communication/

 

 

위 글에서 아두이노와 라즈베리파이를 USB로 연결하여 직렬 통신을 하는 방법을 설명해주고 있습니다

 

 

보통 아두이노와 라즈베리파이 간의 통신에 대한 글들은

GPIO를 이용한 I2C 통신에 대해 서술하고 있지만

 ref : https://dronebotworkshop.com/i2c-arduino-raspberry-pi/

전압 컨버터가 없어 그냥 USB로 사용하겠습니다.

 

 

 

연결 방법은

 

아두이노 USB단자를 파이 USB에 연결하면 끝

 

 

 

아두이노 코드

void setup() {
  Serial.begin(9600);
}
void loop() {
  Serial.println("Hello from Arduino!");
  delay(1000);
}

 

 

 

아두이노 포트 확인

- 아두이노가 ttyACM0로 연결되어있내요.

 

 

 

 

 

파이썬 시리얼 통신 라이브러리 설치

pip install pyserial

 

 

파이썬 코드

#!/usr/bin/env python3
import serial
if __name__ == '__main__':
    ser = serial.Serial('/dev/ttyACM0', 9600, timeout=1)
    ser.flush()
    while True:
        if ser.in_waiting > 0:
            line = ser.readline().decode('utf-8').rstrip()
            print(line)

 

vim에서는 복붙이 잘안되다보니 nano 에디터로 위 코드를 복붙했습니다.

 

 

 

 

 

 

300x250

+ Recent posts