树莓派USB与arduino通信

声明:虽然内容大部分为作者引用(均已附上原址链接),但是未经作者允许,谢绝整版转载。

1.安装pyserial模块

>>wget http://pypi.python.org/packages/source/p/pyserial/pyserial-2.7.tar.gz

>>tar -zxaf pyserial-2.7.tar.gz解压默认在pyserial-2.7目录下

>>cd pyserial-2.7

>>python setup.py install

这种手动安装方式会出现很多问题,可能和环境有关,最后换用pip安装(pip是最初和python一起安装的)

>>pip install pyserial(安装成功)可能会出现大片红色报错,多试几次就ok了

参见https://blog.csdn.net/testcs_dn/article/details/53178076

2.使用arduino和树莓派usb通信,测试串口

(1)arduino写串口通信,并测试通过

https://www.cnblogs.com/aiyauto/p/7071712.html

Serial.begin()函数默认8N1

int i;
void setup()
{
  Serial.begin(115200);
  pinMode(13,OUTPUT);
}
void loop()
{
  if(Serial.read()=='o')
  {
  for(i=0;i<5;i++)
  {
  digitalWrite(13,HIGH);
  delay(300);
  digitalWrite(13,LOW);
  delay(300);
  }
  Serial.println("Hello World!");
  }
}

(2)树莓派usb口写通信协议

参看https://blog.csdn.net/fhqlongteng/article/details/80417028

>>lsusb 查看usb设备能否识别(可通过拔插判断)

>>ls -l /dev/tty*   查看所有设备,tty是指终端设备https://blog.csdn.net/a746742897/article/details/52302394

树莓派USB与arduino通信_第1张图片

可知是识别成了/dev/ttyUSB1,可以通过拔插来判断或日期来判断

 >>stty -F /dev/ttyUSB1 查询波特率

可以修改波特率和通讯格式,参看https://blog.csdn.net/panfengsoftware/article/details/7942051

>>stty -F /dev/ttyUSB1 speed 115200 cs8 -parenb -cstopb

(3)开始测试

参看https://blog.csdn.net/u012611644/article/details/79125234

>>import serial

>>ser=serial.Serial("/dev/ttyUSB1",115200,timeout=0.5)

>>ser.open

>>ser.write('o')

>>ser.read(11)

看到13口LED灯闪烁5次,并且读取回发信息“Hello World”,通信成功!

 

你可能感兴趣的:(树莓派USB与arduino通信)