Python学习之道-串口编程&TEMI880温箱控制

2023-10-28


PS:自己学习Python已经断断续续有1年了,之前没有写博客的习惯,前段日子去图书馆借阅了《程序员的自我修养》,觉得应该养成写博客的习惯,将自己学习的过程记录下来,方便自己也方便大家,记录自己学习历程和思路,后面回顾也方便易上手。最主要的是方面自己查找 哈哈
从大一开始接触单片机开发,串口使用了8年了,之前做上位机开发时大多使用MFC/C#/LabVIEW等,比较杂。现在学习用Python进行串口编程,相信效率会高不少。

一、环境准备

参照网上的教程,消息吸收。

安装pyserial库

https://github.com/pyserial/pyserial

pip install pyserial
PS D:\python> pip install pyserial
Collecting pyserial
  Downloading https://files.pythonhosted.org/packages/0d/e4/2a744dd9e3be04a0c0907414e2a01a7c88bb3915cbe3c8cc06e209f59c30/pyserial-3.4-py2.py3-none-any.whl (193kB)
    100% |████████████████████████████████| 194kB 613kB/s
Installing collected packages: pyserial
Successfully installed pyserial-3.4
PS D:\python>

pyserial库常用函数介绍

serial.Serial(portx, bps, timeout = waitTime)
serial = serial.Serial(‘COM1’, 115200) 打开COM1并设置波特率为115200,COM1只适用于Windows
serial = serial.Serial(‘/dev/ttyS0’, 115200) 打开/dev/ttyS0并设置波特率为115200, 只适用于Linux
print serial .portstr 能看到第一个串口的标识
serial .write(“hello”) 往串口里面写数据
serial .close() 关闭serial 表示的串口
serial .open() 打开串口
data = serial .read(num) 读num个字符
data = serial .readline() 读一行数据,以/n结束,要是没有/n就一直读,阻塞。
serial .baudrate = 9600 设置波特率
print serial 可查看当前串口的状态信息
serial .isOpen() 当前串口是否已经打开
serial.inWaiting() 判断当前接收的数据
serial.flushInput() 清除输入缓冲区数据
serial.flushOutput() 中止当前输出并清除输出缓冲区数据

参考例程

#!/usr/bin/python
# coding=UTF-8

import serial

###################################################
#
# 功 能: 将接收到的数据已hex显示
# 参 数: 串口接受到的数据
# 返 回: 转换后的数据
#
###################################################

def hexshow(data):
    hex_data = ''
    hLen = len(data)
    for i in xrange(hLen):
        hvol = ord(data[i])
        hhex = '%02x' % hvol
        hex_data += hhex+' '
    print 'hexshow:', hex_data


######################################
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python学习之道-串口编程&TEMI880温箱控制 的相关文章

随机推荐

  • VC++常规错误1>nafxcwd.lib(afxmem.obj) 【转】

    VC 常规错误之17 1 gt nafxcwd lib afxmem obj error LNK2005 1 错误案例 在写日志程序中出现 工程是MFC程序 注 win32控制台应用程序 不会出现这种错误 当然是不支持MFC库的那种 2 错
  • Antd Tree组件Tree props#属性 checkStrictly

    Antd 3 20 7 版本 Tree组件Tree props 属性 checkStrictly 值为true 则点击选中树 子节点时 不会联动选中父节点 而父节点选中也不会默认把所有子节点选中
  • 谈谈机器学习(Machine Learning)大牛

    闲着无事 想写点一些我所了解的machine learning大家 由于学识浅薄 见识有限 并且仅局限于某些领域 一些在NLP及最近很热的生物信息领域活跃的学者我就浅陋无知 所以不对的地方大家仅当一笑 Machine Learning 大家
  • Echarts图表类型

    Echarts图表类型每个系列通过 type 决定 的图表类型 不同的type的值对应的图表类型如下 type bar 柱状 条形图 type line 折线 面积图 type pie 饼图 type scatter 散点 气泡 图 typ
  • Connect the Cities 【HDU - 3371】【Kruskal、变了形的优先队列】

    题目链接 就是问你能否通过选取一些边构成一棵树 最小生成树 这道题的关键不在于此 在于学到了另外一种优先队列的写法 struct cmp bool operator Eddge e1 Eddge e2 return e1 val gt e2
  • 操作系统第二章

    一 名词解释 1 进程上下文 进程执行活动全过程的静态描述 2 直接制约 一组在异步环境下的并发进程 各自的执行结果互为对方的执行条件 从而限制各进程的执行速度的过程称为并发进程的直接制约 3 临界区 每个进程中访问临界资源的那段程序代码
  • AirtestIDE使用之提示adb server version(40) dosen‘t match this client(41); killing...

    AirtestIDE使用之提示adb server version 40 dosen t match this client 41 killing 因为要做平板的自动化测试 使用appium无法控制平板 偶然情况下发现Airtest可以控制
  • es6 删除数组中指定对象并返回新数组

    Here are a few ways to remove an item from an array using JavaScript All the method described do not mutate the original
  • 【书籍】算法相关书籍

    1 概述 书籍 算法图解 pdf 评分 3颗星 简介 算法入门的好书籍
  • 第十四届蓝桥杯青少组选拔赛Python真题 (2022年11月27日),包含答案

    第十四届蓝桥杯青少组选拔赛Python真题 2022年11月27日 一 编程题 第 1 题 问答题 输入一个整数N 100sNs100 输出N 10的结果例如 N 5 5 10 的结果为15 15 5 10 输入描述 输入一个整数N 100
  • hadoop集群搭建(基于docker-compose)

    1 创建工作目录 比如 home hadoop 需要配置2个文件 data是挂载目录 会自动创建 2 hadoop env 内容不用改 基本是默认配置 后续修改配置在这修改就行了 配置详情自己百度下 CORE CONF fs default
  • localhost和127.0.0.1有什么区别?

    一 localhost和127 0 0 1的关系 localhost也叫local 正确的解释是 本地服务器 localhost 是一个域名 在过去它指向 127 0 0 1 这个IP地址 在操作系统支持 ipv6 后 它同时还指向ipv6
  • Dynamics 365配置ADFS

    准备工作 Dynamics 365服务器 ADFS服务器及SSL证书 配置基于声明的身份验证 首先 需要在Dynamics 365服务器和ADFS服务器上安装SSL证书 安装到本地计算机 点击下一步 选择根据证书类型 自动选择证书存储 由于
  • Flowable 之事件和网关

    文章目录 一 网关 1 1 排他网关 1 2 并行网关 1 3 包容网关 1 4 事件网关 二 事件 2 1 定时器事件 2 1 1 定时器启动事件 2 1 2 中间计时器捕获事件 2 1 3 边界计时器事件 2 2 消息事件 2 2 1
  • 使用scala练习Java经典习题之循环

    文章目录 1 兔子生孩子 2 求101 200素数个数 3 水仙花数 4 正整数分解质因数 5 求最大公约数和最小公倍数 6 求1000内完数 7 猴子吃桃问题 8 企业奖金问题 9 1234 这4个数字 能组成多少个互不相同且无重复数字的
  • 计算机保研经验(中科大、北航、成电、西交、南大)

    计算机保研经验 中科大 北航 成电 西交 南大 目录 计算机保研经验 中科大 北航 成电 西交 南大 前言 一 本人简介 二 投递与结果 三 时间线 四 夏令营具体细节 1 中科大 老师 面试 2 北航 老师 机试 面试 3 西交 面试 4
  • 爷青回

    B站主页 https space bilibili com 1707990930 欢迎 点赞 收藏 评论 如有错误请指正 Python Java领域博主 你们的支持是我最大的动力 大家好 我是爱丽 今天我们来制作一个相信每一位小伙伴都玩过的
  • html 默认打开方式,[HTML] 链接默认打开方式标签元素

    HTML 超链接 锚文本 默认打开方式与默认链接URL地址标签元素 一 语法与结构 二 Html base超链接默认打开地址与打开方式标签使用说明 1 Target 值 1 blank 新窗口打开URL链接 2 parent 在本网页刷新全
  • 【算法练习】MVP争夺战

    100分 题目描述 在星球争霸篮球赛对抗赛中 强大的宇宙战队 希望每个人都能拿到MVP MVP的条件是 单场最高分得分获得者 可以并列 所以宇宙战队决定在比赛中 尽可能让更多的队员上场 且让所有有得分的队员得分都相同 然而比赛过程中的每一分
  • Python学习之道-串口编程&TEMI880温箱控制

    Python学习之道 串口编程 TEMI880温箱控制 一 环境准备 安装pyserial库 pyserial库常用函数介绍 参考例程 二 开发实践 1 实践项目 2 协议介绍 2 1 一般的指令格式 2 2 举例 2 3 协议命令 3 串