Serial To Arduino 라즈베리파이/아두이노2016. 2. 8. 15:52
이번에는 라즈베리에서 아두이노로 데이터를 보내보겠습니다.
라즈베리에서 온 신호를 아두이노에서 나타내기 위해 LCD를 사용했습니다.
라즈베리에서 신호가 오면 "Raspberry pi"라고 뜨고 신호가 없으면 "xxxxxxxxxxxx"라고 뜸니다.
1. 라즈베리 코드
import serial
import time
port = "/dev/ttyACM0"
serialToArduino = serial.Serial(port, 9600)
while True:
serialToArduino.writelines("Raspberry pi")
time.sleep(.5)
2. 아두이노 코드
#include <LiquidCrystal.h> //data that recieveed from RPi is represent on LCD attached on the arduino.
const int num_of_field = 12;
char value[num_of_field];
LiquidCrystal lcd(12, 11, 5,4, 3, 2);
void setup()
{
Serial.begin(9600);
lcd.begin(16,2);
}
void loop()
{
if(Serial.available()) //recieve date from RPi
{
delay(20); //for exact save
for(int i = 0; i<num_of_field; i++)
{value[i] = Serial.read();} //str storage
print_on_LCD();
delay(500); //depend eye effect, if this no, the data isn't seen due to so fast.
}
else
{
for(int i = 0; i<num_of_field; i++)
{value[i] = 'x';} //sign no data come
print_on_LCD();}
}
void print_on_LCD()
{
for(int i = 0; i<num_of_field; i++)
{ lcd.setCursor(i, 0);
lcd.print(value[i]);}
}
3. 라즈베리 파이썬 파일 실행
LXTerminal창 켜고
cd ~ 저장해놓은 디렉터리 주소
sudo python 저장해놓은 파일이름.py
참고
http://blog.oscarliang.net/raspberry-pi-and-arduino-connected-serial-gpio/
[출처] [시리얼 통신] - Serial To Arduino|작성자 DEW
'라즈베리파이 > 아두이노' 카테고리의 다른 글
서보모터 제어하기 from raspberry To Arduino (3) | 2016.02.08 |
---|---|
Serial From Arduino (0) | 2016.02.08 |
아두이노 설치 (0) | 2016.02.08 |