• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

python:serial模块,读写串口数据

武飞扬头像
==PP
帮助1

串口通信是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。串口是计算机上一种非常通用的设备通信协议。pyserial模块封装了python对串口的访问,为多平台的使用提供了统一的接口。

一.serial模块的安装

使用pip接口进行安装

  1.  
     
  2.  
    pip install serial

二.serial库基本函数使用

1.串口初始化的函数

  1.  
     
  2.  
    ser = serial.Serial('COM3',115200,timeout=5)

参数1:com3为串口的端口号

参数2:115200为串口的波特率

参数3:timeout为串口的超时设置

2.write串口写数据

  1.  
     
  2.  
    Write = ser.write(b'bsp\n')

往串口里面发送数据

b:此参数表示bytes类型, 直接发送字符串会报错

\n:换行的意思

bsp:要发送的内容

3.read()串口读数据

  1.  
     
  2.  
    ser.read() ####从端口读字节数据,默认1个字节
  3.  
     
  4.  
    ser.read_all() ####从端口接收全部数据
  5.  
     
  6.  
    ser.readline() ###读一行数据
  7.  
     
  8.  
    ser.readlines() ###读多行数据

三.实例演示

直接上代码:

  1.  
     
  2.  
    import serial
  3.  
    import time
  4.  
     
  5.  
    if __name__ == '__main__':
  6.  
    ser = serial.Serial('COM3',115200,timeout=5) ##连接串口,打开
  7.  
    time.sleep(0.5)
  8.  
     
  9.  
        Write = ser.write(b'Hello\n') ##发送数据
  10.  
        Read = ser.read() ###接收1个字节数据
  11.  
        print(Read)
  12.  
       
  13.  
        Write = ser.write(b'Hello\n') ##发送数据
  14.  
        Read = ser.readline() ##接收一行数据
  15.  
    print(Read)
  16.  
     
  17.  
        Write = ser.write(b'Hello\n') ##发送数据
  18.  
        Read = ser.read_all() ###接收所有数据
  19.  
    print(Read)
  20.  
     
  21.  
        Write = ser.write(b'Hello\n') ##发送数据
  22.  
    Read = ser.readlines() ###读多行数据
  23.  
    print(Read)
  24.  
     
  25.  
        ser.close() ###关闭串口连接

输出:

学新通
学新通
学新通
学新通

还有以下函数及功能

ser.isOpen()

查看端口是否被打开

ser.open()

打开端口

flush()

等待所有数据写出

flushInput()

丢弃接收缓存中的所有数据

flushOutput()

终止当前写操作,并丢弃发送缓存中的数据

基础的串口读写操作就如上所示啦。

@Neng

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfkebie
系列文章
更多 icon
同类精品
更多 icon
继续加载