python:serial模块,读写串口数据
串口通信是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。串口是计算机上一种非常通用的设备通信协议。pyserial模块封装了python对串口的访问,为多平台的使用提供了统一的接口。
一.serial模块的安装
使用pip接口进行安装
-
-
pip install serial
二.serial库基本函数使用
1.串口初始化的函数
-
-
ser = serial.Serial('COM3',115200,timeout=5)
参数1:com3为串口的端口号
参数2:115200为串口的波特率
参数3:timeout为串口的超时设置
2.write串口写数据
-
-
Write = ser.write(b'bsp\n')
往串口里面发送数据
b:此参数表示bytes类型, 直接发送字符串会报错
\n:换行的意思
bsp:要发送的内容
3.read()串口读数据
-
-
ser.read() ####从端口读字节数据,默认1个字节
-
-
ser.read_all() ####从端口接收全部数据
-
-
ser.readline() ###读一行数据
-
-
ser.readlines() ###读多行数据
三.实例演示
直接上代码:
-
-
import serial
-
import time
-
-
if __name__ == '__main__':
-
ser = serial.Serial('COM3',115200,timeout=5) ##连接串口,打开
-
time.sleep(0.5)
-
-
Write = ser.write(b'Hello\n') ##发送数据
-
Read = ser.read() ###接收1个字节数据
-
print(Read)
-
-
Write = ser.write(b'Hello\n') ##发送数据
-
Read = ser.readline() ##接收一行数据
-
print(Read)
-
-
Write = ser.write(b'Hello\n') ##发送数据
-
Read = ser.read_all() ###接收所有数据
-
print(Read)
-
-
Write = ser.write(b'Hello\n') ##发送数据
-
Read = ser.readlines() ###读多行数据
-
print(Read)
-
-
ser.close() ###关闭串口连接
输出:
还有以下函数及功能
ser.isOpen() |
查看端口是否被打开 |
ser.open() |
打开端口 |
flush() |
等待所有数据写出 |
flushInput() |
丢弃接收缓存中的所有数据 |
flushOutput() |
终止当前写操作,并丢弃发送缓存中的数据 |
基础的串口读写操作就如上所示啦。
@Neng
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfkebie
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13