Python中使用pyserial实现串口通信
发布日期:2021-07-01 00:08:50 浏览次数:2 分类:技术文章

本文共 1373 字,大约阅读时间需要 4 分钟。

1、安装

pip install pyserial

2、

import serial #导入模块#todo:接受到的标准数据格式:2019-10-11 17:19:22温度79.6度湿度21.6%         0def get_data():     try:         # 端口,GNU / Linux上的/ dev / ttyUSB0 等 或 Windows上的 COM3 等         portx = "COM3"         # 波特率,标准值之一:50,75,110,134,150,200,300,600,1200,1800,2400,4800,9600,19200,38400,57600,115200         bps = 9600         # 超时设置,None:永远等待操作,0为立即返回请求结果,其他值为等待超时时间(单位为秒)         timex = 500         # 打开串口,并得到串口对象         ser = serial.Serial(portx, bps, timeout=timex)         print("串口详情参数:", ser)         print(ser.port)  # 获取到当前打开的串口名         print(ser.baudrate)  # 获取波特率         result = ser.write("xxx".encode("gbk"))  # 写数据         print("写总字节数:", result)         # print(ser.read())#读一个字节         # print(ser.read(10).decode("gbk"))#读十个字节,编码必须为gbk         # print(ser.readline().decode("gbk"))#读一行         # print(ser.readlines())#读取多行,返回列表,必须匹配超时(timeout)使用         # print(ser.in_waiting)#获取输入缓冲区的剩余字节数         # print(ser.out_waiting)#获取输出缓冲区的字节数         # 循环接收数据,此为死循环,可用线程实现         while True:             if ser.in_waiting:                 str = ser.read(ser.in_waiting).decode('gbk')                 if (str == "exit"):  # 退出标志                     break                 else:                     return str         print("---------------")         ser.close()  # 关闭串口     except Exception as e:         print("---异常---:", e)

3、这篇博客写的很详细

转载地址:https://lztom.blog.csdn.net/article/details/102553729 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:html将table中的数据导出Excel方法
下一篇:后端django将数据库中的数据变为csv格式,前端实现csv文件导出到本地

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月17日 05时36分34秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章