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 11 Python
浅谈Python 集合(set)类型的操作——并交差
Jun 30 Python
Python实现SMTP发送邮件详细教程
Mar 02 Python
selenium python浏览器多窗口处理代码示例
Jan 15 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
pip 安装库比较慢的解决方法(国内镜像)
Oct 06 Python
使用python实现对元素的长截图功能
Nov 14 Python
python中有关时间日期格式转换问题
Dec 25 Python
浅谈Tensorflow 动态双向RNN的输出问题
Jan 20 Python
python 实现单例模式的5种方法
Sep 23 Python
python中super()函数的理解与基本使用
Aug 30 Python
Python实现科学占卜 让视频自动打码
Apr 09 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
一个可以找出源代码中所有中文的工具
2006/10/25 PHP
PHP校验ISBN码的函数代码
2011/01/17 PHP
PHP提取字符串中的图片地址[正则表达式]
2011/11/12 PHP
PHP中使用substr()截取字符串出现中文乱码问题该怎么办
2015/10/21 PHP
YII Framework框架教程之缓存用法详解
2016/03/14 PHP
一个简单安全的PHP验证码类 附调用方法
2016/06/24 PHP
window.open()弹出居中的窗口
2007/02/01 Javascript
为javascript添加String.Format方法
2020/08/11 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
全面接触神奇的Bootstrap导航条实战篇
2016/08/01 Javascript
Angularjs中controller的三种写法分享
2016/09/21 Javascript
VUE前端cookie简单操作
2017/10/17 Javascript
使用vue-aplayer插件时出现的问题的解决
2018/03/02 Javascript
微信小程序当前时间时段选择器插件使用方法详解
2018/12/28 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
[04:54]DOTA2-DPC中国联赛1月31日Recap集锦
2021/03/11 DOTA
使用cx_freeze把python打包exe示例
2014/01/24 Python
使用Python开发windows GUI程序入门实例
2014/10/23 Python
教你学会使用Python正则表达式
2017/09/07 Python
Django内容增加富文本功能的实例
2017/10/17 Python
Python实现聊天机器人的示例代码
2018/07/09 Python
pycharm执行python时,填写参数的方法
2018/10/29 Python
python 获取微信好友列表的方法(微信web)
2019/02/21 Python
python 输出列表元素实例(以空格/逗号为分隔符)
2019/12/25 Python
python从内存地址上加载python对象过程详解
2020/01/08 Python
基于Python爬取爱奇艺资源过程解析
2020/03/02 Python
如何通过Python实现RabbitMQ延迟队列
2020/11/28 Python
海淘母婴商城:国际妈咪
2016/07/23 全球购物
京东港澳售:京东直邮港澳台
2018/01/31 全球购物
车祸赔偿收入证明
2014/01/09 职场文书
师范毕业生自我鉴定
2014/01/15 职场文书
2014年妇联工作总结
2014/11/21 职场文书
SQLServer 日期函数大全(小结)
2021/04/08 SQL Server
laravel添加角色和模糊搜索功能的实现代码
2021/06/22 PHP
什么是clearfix (一文搞清楚css清除浮动clearfix)
2023/05/21 HTML / CSS