Python使用pyserial进行串口通信的实例


Posted in Python onJuly 02, 2019

安装pyserial

pip install pyserial

查看可用的端口

# coding:utf-8

import serial.tools.list_ports

plist = list(serial.tools.list_ports.comports())

if len(plist) <= 0:
  print("没有发现端口!")
else:
  plist_0 = list(plist[0])
  serialName = plist_0[0]
  serialFd = serial.Serial(serialName, 9600, timeout=60)
  print("可用端口名>>>", serialFd.name)

所发十六进制需转换为以下格式

# 所发十六进制字符串010591F50000F104
cmd = [0x01, 0x05, 0x91, 0xF5, 0x00, 0x00, 0xF1, 0x04]

串口通信

Windows下端口为COM*, Ubuntu下为/dev/ttyS0

import serial

class Ser(object):
  def __init__(self):
    # 打开端口
    self.port = serial.Serial(port='COM4', baudrate=9600, bytesize=8, parity='E', stopbits=1, timeout=2)

  # 发送指令的完整流程
  def send_cmd(self, cmd):
    self.port.write(cmd)
    response = self.port.readall()
    response = self.convert_hex(response)
    return response

  # 转成16进制的函数
  def convert_hex(self, string):
    res = []
    result = []
    for item in string:
      res.append(item)
    for i in res:
      result.append(hex(i))
    return result

以上这篇Python使用pyserial进行串口通信的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python设计模式之抽象工厂模式
Aug 25 Python
python基础教程之匿名函数lambda
Jan 17 Python
python flask 多对多表查询功能
Jun 25 Python
Python中应该使用%还是format来格式化字符串
Sep 25 Python
python将txt等文件中的数据读为numpy数组的方法
Dec 22 Python
Python数据类型之Dict字典实例详解
May 07 Python
python Django框架实现web端分页呈现数据
Oct 31 Python
python list数据等间隔抽取并新建list存储的例子
Nov 27 Python
python3实现elasticsearch批量更新数据
Dec 03 Python
Python如何操作office实现自动化及win32com.client的运用
Apr 01 Python
Numpy 理解ndarray对象的示例代码
Apr 03 Python
Python的property属性详细讲解
Apr 11 Python
Python函数中参数是传递值还是引用详解
Jul 02 #Python
Python 运行.py文件和交互式运行代码的区别详解
Jul 02 #Python
python 函数中的内置函数及用法详解
Jul 02 #Python
使用python serial 获取所有的串口名称的实例
Jul 02 #Python
Python中那些 Pythonic的写法详解
Jul 02 #Python
python 中如何获取列表的索引
Jul 02 #Python
python 缺失值处理的方法(Imputation)
Jul 02 #Python
You might like
php设计模式 Proxy (代理模式)
2011/06/26 PHP
PHP通过内置函数memory_get_usage()获取内存使用情况
2014/11/20 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
PHP数据库操作三:redis用法分析
2017/08/16 PHP
纯CSS打造的导航菜单(附jquery版)
2010/08/07 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
2014/08/07 Javascript
node.js中使用q.js实现api的promise化
2014/09/17 Javascript
JavaScript tab选项卡插件实例代码
2016/02/23 Javascript
微信小程序 常见问题总结(4058,40013)及解决办法
2017/01/11 Javascript
Angular实现购物车计算示例代码
2017/02/21 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
2017/06/27 Javascript
vue服务端渲染缓存应用详解
2018/09/12 Javascript
node.js命令行教程图文详解
2019/05/27 Javascript
js实现二级联动简单实例
2020/01/11 Javascript
JS面向对象之单选框实现
2020/01/17 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
[55:16]Mski vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
使用python在本地电脑上快速处理数据
2017/06/22 Python
对python中的try、except、finally 执行顺序详解
2019/02/18 Python
使用Python进行中文繁简转换的实现代码
2019/10/18 Python
python集合的新增元素方法整理
2020/12/07 Python
使用html5 canvas 画时钟代码实例分享
2015/11/11 HTML / CSS
电子商务专业实习生自我鉴定
2013/09/24 职场文书
工厂厂长的职责
2013/12/12 职场文书
超市5.1促销活动
2014/01/15 职场文书
高一物理教学反思
2014/01/24 职场文书
给老婆的婚前保证书
2014/02/01 职场文书
数控技校生自我鉴定
2014/03/02 职场文书
领导干部“四风”问题批评与自我批评材料
2014/09/24 职场文书
难以忽视的真相观后感
2015/06/05 职场文书
教师外出学习心得体会
2016/01/18 职场文书
2019个人工作总结
2019/06/21 职场文书
Python 内置函数速查表一览
2021/06/02 Python
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python
nginx访问报403错误的几种情况详解
2022/07/23 Servers