Python串口通信-[基本语法]-[获取GPS定位器的串口名称]:Python 中进行串口通信,可以使用 pyserial 库

本文主要是介绍Python串口通信-[基本语法]-[获取GPS定位器的串口名称]:Python 中进行串口通信,可以使用 pyserial 库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、安装依赖库

pip install pyserial

2、写一个基本的通信方法

import serialdef send_to_ser(name,baud):#name = 'COM1' 串口名称#baud = 9600  波特率ser = serial.Serial(name, baud)ser.write(b'start') #给串口写入数据,bytes类型recv = ser.read(10) #从串口读取10个字节数据 print(recv)if __name__ == '__main__':send_to_ser('COM1',9600)

3、获取usb定位在电脑的端口

import serial.tools.list_portsdef get_ser_port_name(chip_name = 'CH340'):'''chip_name: gps定位使用的芯片名,不同型号的gps的芯片是不一样的。return: name=COM6  等串口名字'''# 获取可用串口列表ports = serial.tools.list_ports.comports()# 遍历并打印可用串口信息for port in ports:try:ser = serial.Serial(port.device)ser.close()is_connected = Trueexcept serial.SerialException:is_connected = Falsedesc = port.descriptionname = port.nameif (chip_name in desc) and is_connected and name!='COM1':# print(name)return name# print(f"串口名称: {port.name}")# print(f"描述: {port.description}")# print(f"设备: {port.device}")# print(f"厂商: {port.manufacturer}")# print(f"产品: {port.product}")# print(f"序列号: {port.serial_number}")# print(f"是否已连接: {is_connected}")# print("--------------------------")else:#代表搜索不到了return None

注意:

1、CH340 芯片,不止应用在GPS定位器上,还可能有其他usb设备也会使用,如果电脑上插入的usb设备中,有多个使用了CH340芯片时,就无法区分开来。

2、可以通过更多的信息来区别:制造商id=port.pid,供应商id=port.vid 

3、在调试的时候,可以一个一个设备进行信息获取,获取到对应usb设备对应的 port.description,port.pid和port.vid 。 为后续脚本的运行设置好对应usb设备的信息。

4、具体操作还是要根据具体业务来操作,不能拿来即用

这篇关于Python串口通信-[基本语法]-[获取GPS定位器的串口名称]:Python 中进行串口通信,可以使用 pyserial 库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/168229

相关文章

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

Python logging模块使用示例详解

《Pythonlogging模块使用示例详解》Python的logging模块是一个灵活且强大的日志记录工具,广泛应用于应用程序的调试、运行监控和问题排查,下面给大家介绍Pythonlogging模... 目录一、为什么使用 logging 模块?二、核心组件三、日志级别四、基本使用步骤五、快速配置(bas

Python日期和时间完全指南与实战

《Python日期和时间完全指南与实战》在软件开发领域,‌日期时间处理‌是贯穿系统设计全生命周期的重要基础能力,本文将深入解析Python日期时间的‌七大核心模块‌,通过‌企业级代码案例‌揭示最佳实践... 目录一、背景与核心价值二、核心模块详解与实战2.1 datetime模块四剑客2.2 时区处理黄金法

使用animation.css库快速实现CSS3旋转动画效果

《使用animation.css库快速实现CSS3旋转动画效果》随着Web技术的不断发展,动画效果已经成为了网页设计中不可或缺的一部分,本文将深入探讨animation.css的工作原理,如何使用以及... 目录1. css3动画技术简介2. animation.css库介绍2.1 animation.cs

Java进行日期解析与格式化的实现代码

《Java进行日期解析与格式化的实现代码》使用Java搭配ApacheCommonsLang3和Natty库,可以实现灵活高效的日期解析与格式化,本文将通过相关示例为大家讲讲具体的实践操作,需要的可以... 目录一、背景二、依赖介绍1. Apache Commons Lang32. Natty三、核心实现代

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

Python文件操作与IO流的使用方式

《Python文件操作与IO流的使用方式》:本文主要介绍Python文件操作与IO流的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python文件操作基础1. 打开文件2. 关闭文件二、文件读写操作1.www.chinasem.cn 读取文件2. 写

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

python通过curl实现访问deepseek的API

《python通过curl实现访问deepseek的API》这篇文章主要为大家详细介绍了python如何通过curl实现访问deepseek的API,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编... API申请和充值下面是deepeek的API网站https://platform.deepsee