您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:树莓派(python)与arduino串口通信的详细步骤

51自学网 2022-02-21 10:48:54
  python
这篇教程树莓派(python)与arduino串口通信的详细步骤写得很实用,希望能帮到您。

树莓派与arduino串口通信

第一步:先设置硬件串口分配给GPIO串口
输入sudo raspi-config命令进入树莓派系统配置界面,选择第三个Interfacing Options

在这里插入图片描述

进去选择Serial Port

在这里插入图片描述

然后选择关闭串口登录功能,打开硬件串口调试功能

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修改配置文件

打开/boot/config.txt文件,输入 sudo vim /boot/config.txt,在最后添加俩行:1、dtoverlay=pi3-miniuart-bt 2、force_turbo=1

然后重启树莓派,ls /dev -al查看串口

在这里插入图片描述

串口0对应ttyAMA0,串口1对应ttyS0,意味着此时硬件串口可以通过GPIO跟别人进行串口通信了。

第二步:编写测试程序

树莓派:

   import serial   import time     port = "/dev/ttyAMA0"   ser = serial.Serial(port,115200,timeout=1)   # //打开串口,连接到Arduino上   ser.flushInput() #   //清空输入缓冲区     while True:           #ser.write("7".encode())          ser.write("s".encode());          size = ser.inWaiting() # 获得缓冲区字符           if size != 0:            response = ser.read(size);            print(response)           time.sleep(3)

arduino:

void setup() {    Serial.begin(115200);   //定义波特率} void loop(){  while(Serial.available()>0){        char teststring = Serial.read();         Serial.println(teststring);                  if('s' == teststring )            Serial.println("Hello Raspberry,I am Arduino.");        }}

测试结果截图:

在这里插入图片描述
在这里插入图片描述

接线是,树莓派的R对Arduino的T,树莓派的T对Arduino的R,然后接上GND就行了。
C语言的程序也有,懒得整理了

到此这篇关于树莓派(python)与arduino串口通信的文章就介绍到这了,更多相关树莓派arduino串口通信内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


TensorFlow人工智能学习创建数据实现示例详解
Python 列表映射后的平均值
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。