美文网首页串口开发教程
Python编程练习8:Python语言串口操作入门

Python编程练习8:Python语言串口操作入门

作者: 汲之郎 | 来源:发表于2022-10-15 18:10 被阅读0次

    串口通信是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。串口是计算机上一种非常通用的设备通信协议。串口通信是工程师的必备技能,很多软硬件开发都需要用到串口设备。

    python中的pyserial 模块封装了对串口的访问,兼容各种平台。

    模块安装

    pip install pyserial #安装serial模块
    
    ### 初始化
    import serial
    ser = serial.Serial('com1', 9600, timeout=1)
    

    不同平台下的初始化

    ser = serial.Serial("/dev/ttyUSB0", 9600, timeout=0.5) # 使用USB连接串行口
    ser = serial.Serial("/dev/ttyAMA0", 9600, timeout=0.5) # 使用树莓派的GPIO口连接串行口
    ser = serial.Serial(1, 9600, timeout=0.5)# winsows系统使用com1口连接串行口
    ser = serial.Serial("com1", 9600, timeout=0.5)# winsows系统使用com1口连接串行口
    ser = serial.Serial("/dev/ttyS1", 9600, timeout=0.5)# Linux系统使用com1口连接串行口
    

    对象属性
    name——设备名字
    port——读或者写端口
    baudrate——波特率
    bytesize——字节大小
    parity——校验位
    stopbits——停止位
    timeout——读超时设置
    writeTimeout——写超时
    xonxoff——软件流控
    rtscts——硬件流控
    dsrdtr——硬件流控
    interCharTimeout——字符间隔超时

    对象常用方法
    ser.isOpen()——查看端口是否被打开
    ser.open() ——打开端口
    ser.close()——关闭端口
    ser.read()——从端口读字节数据。默认1个字节
    ser.read_all()——从端口接收全部数据
    ser.write("hello")——向端口写数据
    ser.readline()——读一行数据
    ser.readlines()——读多行数据
    in_waiting()——返回接收缓存中的字节数
    flush()——等待所有数据写出
    flushInput()——丢弃接收缓存中的所有数据
    flushOutput()——终止当前写操作,并丢弃发送缓存中的数据。

    相关文章

      网友评论

        本文标题:Python编程练习8:Python语言串口操作入门

        本文链接:https://www.haomeiwen.com/subject/crzsortx.html