STM32
直播中

张生

9年用户 854经验值
擅长:光电显示 接口/总线/驱动
私信 关注
[问答]

如何利用Python去实现Arduino UNO的串口通信呢

利用Python实现串口通信的原理是什么?
如何利用Python去实现Arduino UNO的串口通信呢?

回帖(1)

凌章致

2021-12-22 11:41:42
利用Python实现串口通信——以Arduino UNO为例

实现原理




  • 利用Python实现串口通信本质上是利用python给出一个信号(只能是ASCII码),通过串口(COM)传送给硬件设备,例如:Arduino、STM32等。硬件设备接收到该信号,通过已经烧录好的程序自行处理。
  • 因此,在实现过程中,主要关注点便是:①Arduino如何发出信号到串口、python如何从串口读取信息;②python如何发送信号到串口、Arduino如何从串口读取信号。

基础内容

Python部分




  • 第三方库Serial
  • 安装:pip install pyserial
  • 主要函数介绍:

import serialport_list = list(serial.tools.list_ports.comports())      
# 获取当前可用的串口列表serialPort = "COM4"               
# 定义/设置串口名称(在‘我的电脑’设备管理器中可以查到)baudRate = 9600                        # 定义/设置串口波特率(要确保和设备的波特率相同)timeout = 1                                # 定义/设置超时时间(单位:s)ser = serial.Serial(serialPort, baudRate, timeout)
# 当然,这样也可以:ser=serial.Serial("COM4", 9600, 1)string = ser.readline().decode('utf-8')        
# 读取一列数据str_lines = ser.readlines()                              
# 读取所有数据
Arduino部分

Arduino==>Python

Python==>Arduino
举报

更多回帖

发帖
×
20
完善资料,
赚取积分