【问题解决】 pyocd 报错 No USB backend found 的解决方法

news2024/9/20 14:56:23

pyocd 报错 No USB backend found 的解决方法

本文记录了我在Windows 10系统上遇到的pyocd命令执行报错——No USB backend found 的分析过程和解决方法。遇到类似问题的朋友可以直接参考最后的解决方法,向了解问题发送原因的可以查看原因分析部分。

文章目录

  • pyocd 报错 No USB backend found 的解决方法
    • 一、问题现象
      • 问题背景
    • 二、原因分析
      • HidApiUSB.isAvailable
      • PyWinUSB.isAvailable
    • 三、解决方法
      • 可能方案
      • 最终方案

一、问题现象

今天在我的PC上使用执行 pyocd 时报错,具体信息如下:
在这里插入图片描述

最后一行报错信息内容是:

pyocd.probe.pydapaccess.dap_access_api.DAPAccessIntf.DeviceError: No USB backend found

问题背景

问题发生的背景补充说明:

  • 操作系统是:Windows 10 64位;
  • Python版本是:3.11.4 ;
  • pyocd版本是:0.36.0 ;
  • git-bash环境执行的命令,cmd执行也是一样的报错;
  • 另外,之前执行 pyocd 命令一直都没有问题,今天才出现的;

二、原因分析

从截图上能够看出来这是一个Python代码产生的异常,抛出异常的一行代码在截图上也可以看到:

raise DAPAccessIntf.DeviceError("No USB backend found")

同时,截图上也可以看到位于的文件路径是:

D:\Python\Python311\Lib\site-packages\pyocd\probe\pydapaccess\interface\__init__.py

git-bash环境下,直接用vim打开这个文件:

vim "D:\Python\Python311\Lib\site-packages\pyocd\probe\pydapaccess\interface\__init__.py" +54

对应的代码为:
在这里插入图片描述

抛出异常的代码位于54行,可以看到,前面两个条件都失败才会抛出此异常,两个条件分别是:

  • HidApiUSB.isAvailable
  • PyWinUSB.isAvailable

接下来分析,这两个条的值分别是如何而来的。

HidApiUSB.isAvailable

由于是pyocd命令执行时输出的报错,所以直接在pyocd包的目录下搜索:
在这里插入图片描述

具体代码如下:
在这里插入图片描述

已经可以看到这个值的来源了:

  • 如果import hid执行成功,则为True;
  • 如果import hid执行失败,则为False;

PyWinUSB.isAvailable

类似的,可以找到PyWinUSB.isAvailable的来源:
在这里插入图片描述

源于两种情况:

  • 如果 import pywinusb.hid as hid 成功,则为True;
  • 如果 import pywinusb.hid as hid 失败,则为False;

三、解决方法

通过上面的分析,我们就知道解决方法了:

  • 让 import hid 成功;
  • 让 import pywinusb.hid 成功;

具体的就是:

pip install hid

或者:

pip install pywinusb

可能方案

但是经过试验,在我的系统上,hid安装后,会仍然失败,具体是:
在这里插入图片描述

最终方案

因此,最终解决方法是:

 pip install pywinusb

安装完成后,pyocd pack find 就可以成功了:
在这里插入图片描述

问题解决,大功告成!

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

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

相关文章

ChatGPT-4o大语言模型优化、本地私有化部署、从0-1搭建、智能体构建等高级进阶

目录 第一章 ChatGPT-4o使用进阶 第二章 大语言模型原理详解 第三章 大语言模型优化 第四章 开源大语言模型及本地部署 第五章 从0到1搭建第一个大语言模型 第六章 智能体(Agent)构建 第七章 大语言模型发展趋势 第八章 总结与答疑讨论 更多应用…

端口被占用,使用小黑框查杀

netstat -ano (查看目前所有被占的端口) netstat -ano|findstr " 8080" 查一下目前被占用的端口号 ,目前我要查的端口号是:8080,注意 后面打8080的时候,要有空格,要不然报错 **task…

无人机便携式侦测干扰设备(定全向)技术详解

无人机便携式侦测干扰设备(定全向)是一种专门针对无人机进行侦测和干扰的设备。它具备定向和全向两种工作模式,能够覆盖较宽的频率范围,有效侦测并干扰无人机与遥控器之间的通信信号,从而达到控制或驱离无人机的目的。…

CRT工具

CRT工具 传输位置设置 打开SFTP alt p 命令 ls:远程机器当前目录内容 lls:传输位置文件的目录内容 pwd:远程机器的当前位置 lpwd:传输位置的位置 get 文件:ftp传输文件 get -r 文件夹:ftp传输文件…

AI中药处方模型构建与案例

在中医领域,人工智能(AI)可以生成各种指令来辅助诊断、治疗和研究。 1. 诊断辅助指令: 根据患者的症状和体征,自动分析并生成可能的中医证候诊断建议。利用中医望闻问切四诊信息,智能识别关键症状,提供对应的中医辨证思路。2. 治疗建议指令: 根据辨证结果,自动推荐相应…

2024吉他手的超级助手Guitar Pro8中文版本发布啦!

亲爱的音乐爱好者们,今天我要来和你们分享一款让我彻底沉迷的软件—Guitar Pro。如果你是一名热爱吉他的朋友,那么接下来的内容你可要瞪大眼睛仔细看哦!👀🎶 Guitar Pro免费绿色永久安装包下载:&#xff0…

90元搭建渗透/攻防利器盒子!【硬件篇】

前言 以下内容请自行思考后进行实践。 使用场景 在某些情况下开软件进行IP代理很麻烦,并不能实现真正全局,而且还老容易忘记,那么为了在实景工作中,防止蓝队猴子封IP,此文正现。 正文 先说一下实验效果&#xff1…

鸿蒙开发管理:【@ohos.account.distributedAccount (分布式帐号管理)】

分布式帐号管理 本模块提供管理分布式帐号的一些基础功能,主要包括查询和更新帐号登录状态。 说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。开发前请熟悉鸿蒙开发指导文档&#xff…

axios取消请求功能CancelToken原理解析

今天在论坛看到一个取消axios请求的功能,具体场景是这样的:前端接口以较短时间间隔请求后端接口刷新状态,接口返回“成功”状态之后还有处于pending状态的请求在排队,如果请求不取消就会导致前端最后获取到的状态出错,…

C语言实现计算器混合运算(含括号,加减乘除)

功能描述: 实现计算器混合运算基本功能,包括:( )、、-、*、/。 功能很简单,但实现起来还是有一定逻辑难度,因为,混合运算需要考虑优先级。 优先级最高的为:() 其次&a…

LabVIEW干涉仪测向系统

开发了一套基于LabVIEW的软件系统,结合硬件设备,构建一个干涉仪测向实验教学平台。该平台应用于信号处理课程,帮助学生将理论知识与实际应用相结合,深化对信号处理核心概念的理解和应用。 项目背景: 当前信号处理教学…

基于Wireshark和TiWsPC(Wireshark Packet Converter)的Zigbee抓包

前言 介绍几种Zigbee抓包方式: 1. Ubiqua 使用教程网上非常多也非常清晰; 但是Ubiqua是收费软件,较贵; 我安装过了,费好多事,没安装成功。 2. Killerbee套件 https://github.com/riverloopsec/killerbe…

TB作品】51单片机 Proteus仿真 51单片机SPI显示OLED字符驱动

// GND 电源地 // VCC 接5V或3.3v电源 // D0 P1^4(SCL) // D1 P1^3(SDA) // RES 接P12 // DC 接P11 // CS 接P10 OLED显示接口与控制实验报告 背景 OLED(有机发光二极管)显示器由于其高对比度、低功耗和…

【论文通读】RuleR: Improving LLM Controllability by Rule-based Data Recycling

RuleR: Improving LLM Controllability by Rule-based Data Recycling 前言AbstractMotivationSolutionMethodExperimentsConclusion 前言 一篇关于提升LLMs输出可控性的短文,对SFT数据以规则的方式进行增强,从而提升SFT数据的质量,进而间接帮…

关于模拟数字模块认知

工业上常见信号分类 PLC控制系统主要是电信号 电信号分为数字信号和模拟信号 PLC系统中有数字量模块DO/DI,模拟量AO/AI。(O为输出,I为输入) 在模块应用中,注意前连接器要和冷压端子相匹配。前连接器可理解为接插件&am…

Go:hello world

开启转职->Go开发工程师 下面是我的第一个go的程序 在上面的程序介绍: 1、package main 第一行代码package main定义了包名。必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。package main表示一个可独立执行的程…

用HttpURLConnection复现http响应码405

目录 使用GET方法,访问GET接口,服务端返回405使用GET方法,访问POST接口,服务端返回405使用POST方法,访问GET接口,服务端返回405 使用GET方法,访问GET接口,服务端返回405 发生场景&a…

Polkadot(DOT)即将爆雷?治理无能还歧视亚洲!资金将在两年内耗尽!是下一个FTX吗?

近期,关于Polkadot(DOT)生态圈的一系列负面消息引发了业界和投资者的广泛关注。从高昂的营销开支、缺乏实际业务亮点,再到治理问题和种族歧视指控,Polkadot似乎正面临着严峻的危机。业内人士警告,Polkadot的财政状况堪忧&#xff…

【机器学习】机器学习与时间序列分析的融合应用与性能优化新探索

文章目录 引言第一章:机器学习在时间序列分析中的应用1.1 数据预处理1.1.1 数据清洗1.1.2 数据归一化1.1.3 数据增强 1.2 模型选择1.2.1 自回归模型1.2.2 移动平均模型1.2.3 长短期记忆网络1.2.4 卷积神经网络 1.3 模型训练1.3.1 梯度下降1.3.2 随机梯度下降1.3.3 A…

简介空间复杂度

我们承接上一篇博客。我们写了时间复杂度之后,我们就要来介绍一下另一个相关复杂度了。空间复杂度。我觉得大家应该对空间复杂度认识可能比较少一些。我就是这样,我很少看见题目中有明确要求过空间复杂度的。但确实有这个是我们不可忽视的,所…