完整报错

SerialException:Cannot configure port something went wrong, Original message: OSError(22, '参数错误', None, 87)

解决办法

波特率错误,没错, 当时按照网上 modbus_tk 模块例子写的, 所以完全没有注意到波特率值与协调商定好的不一致, 因为当时已经可以成功的读写了(当时用的是usb串口进行的调试), 而经过我反复测试发现, usb串口连接使用波特率使用19600 没有报错, 而工业电脑上集成的串口波特率使用19600 就报我上面提的错误。因为我们当时商定的波特率是 19200。所以我波特率改为19200就直接成功了

其他(我排查的步骤)

这个垃圾问题我一步一步排查,首先当时是排查为什么报错,百度一番没找到, 谷歌一番又没找到, 然后我想到了可能是usb串口与工业电脑集成的串口有所区别, 然后我在工业电脑上接入了usb串口, 果不其然代码可以成功运行了, 这个时候我觉得可能是 COM1这种串口的名字在usb串口和工业电脑集成串口不一致导致的, 所以简单写了一个测试程序

import serial

PORT = str(input("输入连接串口号:"))
serialFd = serial.Serial(PORT,9600,timeout = 6,bytesize=8, parity='N', stopbits=1)
print ("check which port was really used >",serialFd.name)

结果我惊讶的发现,无论usb串口还是集成串口都可以成功连接, 这个时候我目标就已经转向了波特率这个参数,所以我写了下面这个测试程序

import serial

PORT = str(input("输入连接串口号:"))
b = int(input("波特率:"))
serialFd = serial.Serial(PORT,b,timeout = 6,bytesize=8, parity='N', stopbits=1)
print ("check which port was really used >",serialFd.name)

结果发现果然是波特率影响的报错, 然后我查看了软件连接的波特率

果然和我写的波特率不一致, 我哭笑不得。很多错误都是低级错误,但是报错却很难查到
所以你看到这篇文章希望可以节约你的时间,这个垃圾问题浪费了我一个小时的时间。

最后

其实核心的一个问题就是为什么 usb串口使用波特率使用19600不会报错,而工业电脑集成的串口就必须与协调的一致才可以。我当时不知道两者有区别,所以才会浪费这么长时间
如果有明白人希望给我简单的说一下, 我不是专门搞这玩意的。

SerialException:Cannot configure port something went wrong的更多相关文章

  1. Spring Boot - how to configure port

    https://stackoverflow.com/questions/21083170/spring-boot-how-to-configure-port

  2. [官网]How to configure the Microsoft Distributed Transaction Coordinator (MSDTC) on Linux

    How to configure the Microsoft Distributed Transaction Coordinator (MSDTC) on Linux APPLIES TO: SQL ...

  3. 使用weave管理docker网络

    weave简介 Weave creates a virtual network that connects Docker containers deployed across multiple hos ...

  4. How to: Fix a network printer suddenly showing as offline in Windows Vista, 7 or 8 « Robin's Blog

    This post has become quite popular – so I've updated it with a bit more detail, plus some people's e ...

  5. FW:使用weave管理docker网络

    Posted on 2014-11-12 22:20 feisky 阅读(1761) 评论(0) 编辑 收藏 weave简介 Weave creates a virtual network that ...

  6. simpleBLEPeripheral.c 文件分析

    这个配置或者说任务, 让这个蓝牙设备成为了一个简单的BLE外设. 这里定义了外设的广播数据, 以及最重要, char被改变之后的回调, 引出后来的coreHandler里面的, ack 以及写e2pr ...

  7. ubuntu 14.04安装quickbuild server (一)

    官网: http://www.pmease.com/ 指导网站: http://wiki.pmease.com/display/QB60/ 1.  安装quickbuild server ------ ...

  8. 用蓝牙芯片CC2541/CC2540实现一个智能恒温箱

    最近突然想自己做一个智能小冰箱玩一玩,于是决定动手试一试. 成品效果图 原材料 半导体制冷片一只 散热风扇 12V电源一台 智能恒温箱电路板 控制板的PCB图 原理图 供电部分原理图 制冷片控制部分原 ...

  9. 6、CC2541修改按键调节广播发送功率例程为持续发送4DB的蓝牙基站

    一.目的 在 OSAL操作系统-实验31 从机广播功率修改-(20141029更新).zip 基础上进行修改,该工程是通过5向按键的上下按键来控制广播功率的加减,总共有4个档位.我们的目的是直接用最高 ...

  10. VirtualBox Network Config

    Sharing Host VPN with VirtualBox guest After looking for this solution everywhere, I finally found a ...

随机推荐

  1. 实践torch.fx第二篇-fx量化实操

    好久不见各位,哈哈,又鸽了好久. 本文紧接上一篇<实践torch.fx第一篇--基于Pytorch的模型优化量化神器>继续说,主要讲如何利用FX进行模型量化. 为什么这篇文章拖了这么久,有 ...

  2. Elasticsearch:跨集群搜索 Cross-cluster search(CCS)及安全

    文章转载自:https://elasticstack.blog.csdn.net/article/details/116569527

  3. 使用docker-compose部署Django项目

    先从最基本的功能开始 在一切工作开始前,需要先编辑好三个必要的文件. 第一步,因为应用将要运行在一个满足所有环境依赖的 Docker 容器里面,那么我们可以通过编辑 Dockerfile 文件来指定 ...

  4. Docker 部署 JIRA(破解版)

    一. 说明 1.1 素材 本文采用素材如下: Docker镜像 Github链接(https://github.com/cptactionhank) 破解工具 Gitee链接(https://gite ...

  5. .NET 反向代理 YARP 自定义配置提供程序(Configuration Providers)

    介绍 基本 Yarp 示例显示从 appsettings.json 加载的代理配置.相反,代理配置可以从您选择的源以编程方式加载.您可以通过提供几个实现 IProxyConfigProvider 和 ...

  6. Java问题之超过数值表示范围(例如64位)结果是什么 (阶乘)

    关于老师在课上所提及的这个问题 我做了验证 截图如下 只是一个简单的计算阶乘的代码 在运行时得到了如下结果 可以看到,对于部分数字如果超出范围会从64位处自动截断,而这时由于是二进制表示,首位默认是符 ...

  7. 基于AIE的贵州省FVC提取

    植被覆盖度获取 植被覆盖度(Fractional Vegetation Cover,FVC),是指植被(包括叶.茎.枝)在地面的垂直投影面积占统计区总面积的百分比,范围在 [0,1] 之间.FVC 是 ...

  8. MyBatis获取参数值的两种方式

    MyBatis获取参数值的两种方式:${}和#{} ${}的本质就是字符串拼接,#{}的本质就是占位符赋值 ${}使用字符串拼接的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要手动加单 ...

  9. 参考Dubbo3官方文档做的学习笔记

    文章目录 概念与架构 2.1 服务发现 Dubbo3官方文档: https://dubbo.apache.org 服务:是 Dubbo 中的核心概念,一个服务代表一组 RPC 方法的集合,服务是面向用 ...

  10. 如何在IDEA中创建Module、以及怎样在IDEA中删除Module?

    文章目录 1.为何要使用Module? 2.Module的创建 3.如何从硬盘上删除module 1.为何要使用Module? 目前主流的大型项目都是分布式部署的,结构类型这种多Module结构.不同 ...