라즈베리파이, 아두이노

라즈베리와 아두이노 USB로 통신하기

포도알77 2021. 11. 27. 10:28

1. 간단하게 서로 통신할 방법이 없을까?

  아두이노는 USB로 전원을 공급받을 수 있고, 프로그램 업로드도 가능하다. 즉 USB로 데이터 송수신을 할 수 있다.

 

2. Raspberry에서 어떻게 아두이노에 데이터를 줄까?

 Raspberry에서 serial 통신을 수행하면 된다. Python의 경우 PySerial을 통하여 시리얼 통신을 열고 read, write를 수행할 수 있다.

 

3. 라즈베리 예시코드

import serial

com = serial.Serial(port = "/dev/ttyACM0",
		baudrate = 9600,
		bytesize = serial.EIGHTBITS,
		parity = serial.PARITY_NONE,
		timeout = 1)
s = "TEST CODE"
com.write(s.encode())

 Serial 통신을 몇번 다뤄본 사람은 간단하게 다른게 없다고 생각할 것이다. 처음 사용하는 사람도 그저 파일하나 오픈해서 read, write 한다고 생각하면 된다.

 

4. 아두이노 예제 코드

void setup()
{
  Serial.begin(9600);
}
void loop()
{
  char a = Serial.read();
}

  ... 간단해서 더 이상 설명할게 없다.

 

참고하고 싶다면 아래의 두 포스트를 더 참고하자.

(1) 라즈베리에서 USB를 찾고 싶다면

https://jcdgods.tistory.com/351 

 

[라즈베리파이] USB 컨버터(RS485/RS232)를 이용한 시리얼 통신 읽/쓰기 파이썬 예제

 라즈베리파이(Raspberry pi / RPi)에 USB TTL 컨버터(RS485/RS232)를 이용하여 시리얼 통신하는 예제 코드를 작성하여 둔다.  우선 컨버터를 이용하기 때문에 결국 프로토콜이 RS232이든 반이중 RS485이든

jcdgods.tistory.com

(2) 아두이노에서 Serial 통신하기

https://jcdgods.tistory.com/465

 

[간단한 아두이노 코딩] 17. USB to TTL 컨버터 사용해보기

Serial 통신 해보기 1. Serial 통신  시리얼 통신은 병렬 통신과 달리 적은 수의 신호선을 이용하여 데이터를 전송하는 방식을 말한다. 일반적으로 1~2개의 선을 가지며, 우리가 익숙하게 사용하는

jcdgods.tistory.com

 

페이스북으로 공유카카오톡으로 공유카카오스토리로 공유트위터로 공유URL 복사