windows实现python串口编程

news2024/10/7 12:23:50

一、windows安装python

Welcome to Python.org

根据windows是64位找到对应的版本下载

下载完后直接安装即可!

 打开cmd查看python版本

$ python --version         #查看版本

二、串口编程

1、安装pyserial库

pyserial是Python中的一个库,用于处理串口通信。

cmd下输入命令,安装pyserial库

$ pip install pyserial

2、pyserial库常用函数介绍

serial = serial.Serial(‘COM1’, 115200)  #打开COM1并设置波特率为115200,COM1只适用于Windows
serial = serial.Serial(‘/dev/ttyS0’, 115200)  #打开/dev/ttyS0并设置波特率为115200, 只适用于Linux
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()	#中止当前输出并清除输出缓冲区数据

3、代码实例

重点掌握以下几个api的使用方法:

  • 初始化串口对象:ser=serial.Serial()
  • 打开串口:ser.isOpen()
  • 发送数据:ser.write()
  • 读取数据:ser.read()
  • 关闭串口:ser.close()

下面是串口发送/接收的示例:

import serial
from time import sleep

if __name__ == '__main__':
    ser = serial.Serial('COM25', 9600)	#打开串口
    if ser.isOpen() :
        print("open success")
    else :
        print("open failed")

    try:
        while True:
            data = input("输入要发送的数据:")
            ser.write(data.encode('utf-8'))    #发送数据
            sleep(0.5)                         #延时
            count = ser.inWaiting()            #判断当前接收的数据
            if count > 0:
                data = ser.read(count)
                print("receive:", data)        #打印接收数据
    except KeyboardInterrupt:
        if ser != None:
            ser.close()                    

4、运行结果:

$ python python_serial.py                #运行python脚本

电脑上接了个串口板,Tx与Rx短接,因此串口能接收到发送的数据,测试OK!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1836324.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript-拓展简单和引用数据类型

学习目标: 掌握拓展简单和引用数据类型 学习内容: 拓展-术语解释拓展-基本数据类型和引用数据类型 拓展-术语解释: 拓展-基本数据类型和引用数据类型: 简单类型又叫做基本数据类型或者值类型,复杂类型又叫做引用类型…

C++使用教程

目录 一、软件使用 二、C基础规则补充 关键字 整型取值范围 浮点型取值范围 字符型使用规则 字符串型使用规则 布尔类型 常用的转义移字符 三、数组、函数、指针、结构体补充 1.数组 2.函数 声明: 分文件编写: 值传递: 3.指…

【Spring Cloud应用框架】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

RK3588/算能/Nvidia智能盒子:[AI智慧油站」,以安全为基,赋能精准经营

2021年9月,山东省应急管理厅印发了关于《全省危险化学品安全生产信息化建设与应用工作方案(2021-2022 年)》的通知,要求全省范围内加快推进危险化学品安全生产信息化、智能化建设与应用工作,建设完善全省危险化学品安全…

从老花眼开始

三年前,博主的的火眼金睛开始老花了,表现就是看近处看不清了。人眼对可视距离的标准可以定义为:看手机为近距离,看电脑为中距离,看电视为中距离,看红绿灯为远距离。老花眼就是戴近视眼镜直接看手机看不清了…

【ARM-Linux篇】POSIX消息队列

System V消息队列POSIX 消息队列主 要 函 数#include <sys/msg.h> int msgget(key_t key, int oflag) int msgsnd(int msqid, const void * ptr, size_t length, int flag) ssize_t msgrcv (int msqid, void *ptr, size_t length, long type, int flag) int msgctl(int m…

AI智能盒子助力中钢天源设备工厂升级安全防护

中钢集团安徽天源科技股份有限公司成立于2002年3月27日,是中央企业中国中钢股份有限公司控股的上市公司&#xff0c;主导产品为永磁铁氧体器件、钕铁硼器件、四氧化三锰、锶铁氧体预烧料及各类磁选机等。 在中钢天源智能化升级过程中&#xff0c;采用并定制开发一系列厂区安全…

聊聊系统架构之负载均衡优化实践

一、写在前面 最近在进行线上监控检查时&#xff0c;我遇到了两个超出预期的案例。首先&#xff0c;网关层的监控数据与应用实际监控数据存在不一致性&#xff0c;尤其是max有较大的差异&#xff0c;详见如下图。其次在某个应用中&#xff0c;通过httpclient请求某域名时发现只…

【Spine学习12】之 事件帧

1、新建事件帧&#xff1a; 2、选择第8s的攻击帧&#xff0c;点击第一步新建的attack事件帧前面的钥匙 这样每次动作到8s的时候会自动跳出事件帧提示 这个文字实际动画不会显示 事件是动画过程中所发生情况的触发器。 给程序员识别的

漏洞复现之CVE-2012-1823(PHP-CGI远程代码执行)

关于CGI知识点 CGI模式下的参数&#xff1a; -c 指定php.ini文件的位置 -n 不要加载php.ini文件 -d 指定配置项 -b 启动fastcgi进程 -s 显示文件源码 -T 执行指定次该文件 -h和-&#xff1f; 显示帮助题目如下图&#xff0c;没有什么发现 目录扫描一下 dirsearch -u http://4…

​【数据结构与算法】冒泡排序:简单易懂的排序算法解析

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《数据结构与算法》 期待您的关注 ​ 目录 一、引言 二、冒泡排序原理 &#x1f343;基本思想&#xff1a; &#x1f343;算法…

基于SpringBoot+Vue企业会议室预定管理系统设计和实现

基于SpringBootVue企业会议室预定管理系统设计和实现 &#x1f345; 作者主页 网顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定制系统 …

猫头虎 分享已解决Bug || `Uncaught ReferenceError: x is not defined`✨

猫头虎 分享已解决Bug || Uncaught ReferenceError: x is not defined&#x1f680;✨ 摘要 ✨&#x1f4a1; 大家好&#xff0c;我是猫头虎&#xff0c;一名全栈软件工程师&#xff0c;同时也是一位科技自媒体博主。今天我要和大家分享一些前端开发过程中常见的Bug以及详细的…

STM32 proteus + STM32Cubemx仿真教程(第五课ADC光敏电阻采样教程)

文章目录 前言一、ADC概念二、光敏电阻的概念1. 光敏电阻的工作原理2. 光敏电阻的特性3. 光敏电阻的应用4. 光敏电阻的电路设计5. 实际使用中的注意事项总结 三、STM32Cubemx创建工程四、proteus仿真电路图五、代码编写1. HAL_ADC_Start 函数原型参数返回值功能描述示例 2. HAL…

重学java 73.设计模式

本想送你一本沉思录&#xff0c;可该迷途知返的人是我 —— 24.6.18 设计模式 设计模式(Design pattern)&#xff0c;是一套被反复使用、经过分类编目的、代码设计经验的总结&#xff0c;使用设计模式是为了可重用代码、保证代码可靠性、程序的重用性,稳定性。 1995 年&#x…

PHP学习笔记--初学

笔录&#xff1a;我是从黑马里面找的资料学习的&#xff0c;如果有人看我的笔记话&#xff0c;建议去看黑马程序课程&#xff0c;更详细一些。 目录 php定义&#xff0c;平台支持&#xff1a; 静态网站&#xff1a; 动态网站&#xff1a; 服务器概念&#xff1a; IP的概念…

电脑版微信修改信息提示音的方法,Resource Hacker修改EXE信息

微信默认的提示音大家都是一样的&#xff0c;在人多的情况下&#xff0c;不容易分辨是不是自己的微信有消息&#xff0c;很不方便&#xff0c;所以飞飞会把微信的消息提示音换了&#xff0c;手机微信换通知铃声还是很简单的&#xff0c;今天着重和你们分享下电脑版微信如何修改…

探索C嘎嘎的奇妙世界:第十四关---STL(string的模拟实现)

1. string类的模拟实现 1.1 经典的string类问题 上一关已经对string类进行了简单的介绍&#xff0c;大家只要能够正常使用即可。在面试中&#xff0c;面试官总喜欢让学生自己来模拟实现string类&#xff0c;最主要是实现string类的构造、拷贝构造、赋值运算符重载以及析构函数…

Multisim仿真之万用表、安捷伦万用表、信号发生器操作方法

1、XMM是安捷伦示波器 如下图所示&#xff0c;实物安捷伦的外围3个插孔对应于 XMM图标示波器的右侧3个引脚&#xff0c;上下一一对应 2、函数信号发生器XFG 如下图所示&#xff0c;COM就是GND&#xff0c;正负的意思就是相对于GND而言&#xff0c;有正负电压&#xff1b; 3、…

ViNT: A Foundation Model for Visual Navigation

介绍 现存的问题&#xff1a;预训练的方式在很多领域取得了成功&#xff0c;但是由于环境、平台和应用程序的绝对多样性&#xff0c;因此很难应用在机器人领域。 那么想要做移动机器人的基础模型需要什么&#xff1f; 本文定义了一个机器人领域的基础模型&#xff0c;可以实…