WCH低功耗蓝牙系列芯片usb烧录故障排查

news/2025/10/10 0:00:25/文章来源:https://www.cnblogs.com/frontier/p/19132244

正常识别:可以在设备管理器中识别出USB Module

使用USB烧录的一般操作:按住评估板上的“Download”按键,或者将PB22短接到GND,同时给板子上电。若是第一次拿到芯片,codeflash中是空的,不用按住“Download”按键也可以被ISP工具识别。

如果碰到USB烧录异常的问题,先排查一下烧录的环境是否正常:

检查焊接是否正常,芯片GND脚上有没有注意加锡吹焊,PB10、PB11有没有虚焊漏焊。

检查电源是否正常,57x、58x芯片的VINTA引脚上的电压是否在1.05±0.015v范围内,208的VINTA在1.2v左右。VINTA没有电压,常见于焊接不良、PCB封装不正确等情况。

检查32M晶振(只能是32MHz,不能用其他频率)是否起振,32M晶振正常工作是芯片各模块正常工作的必要条件。

  检查32M晶振的PCB焊盘顺序有没有问题,有没有外接电容。蓝牙MCU内部集成了32M晶振的匹配电容,再外接电容可能导致容值过大,无法起振。

  若是有源晶振,检查是否供电正常,注意有源晶振的时钟输出口,需要接到MCU的32M OUT引脚,而非IN引脚。

检查USB线材有没有问题,用测试线材能不能给评估板或者其他确定正常的板子成功烧录。有些线材不带D+ D-信号线,或者老线材内部断线/短路,不要用这样的线材。

检查有没有引出PB22作为下载配置脚,上电的同时需要PB22接地才能进boot loader。

检查一下有没有打开多个ISP工具,可能芯片已在其他窗口被识别。

检查一下主从设备之间有没有接HUB,或者有没有使用延长线。尝试去掉HUB或者延长线,直接接主机接口。

检查PB23是否在ISP工具中被配置为RST引脚,而后在PCB板上被一直拉低。CH583系列的部分MCU、CH592系列,一直触发RST会导致无法烧录,后续设计的MCU应该也会有此特性;有部分MCU的烧录功能不受PB23复位功能的影响。

检查下载配置脚有没有被改到PB11。如果误修改到了PB11,需要将PB11接到v33,上电之后再快速断开PB11与v33的连接就可以再次进入boot loader修改下载配置脚。

如果经常需要在PB22与PB11之间切换,或者项目本身就用到USB1接口作为下载口且需要PB11作为下载配置脚,可以在v33接一个4.7K~7K的上拉电阻以及一个按键,按下按键就接通这个上拉电阻到PB11,这样USB接口内置的1.5K下拉电阻相对较强,不会影响到上电boot识别之后的USB通信,节省PB22这一个GPIO。

 

烧录环境没有问题的话,观察一下板子通过USB连接到电脑时,电脑是否有弹出提示。

电脑弹出提示电流过大:Ⅰ.排查板子上USB口的的GND、VCC是否画颠倒了。

            Ⅱ.排查板子上是否有电源线短路,是否有元器件损坏导致大电流。

给MCU上电10s内电脑弹出提示无法识别:

            Ⅰ.检查有没有安装CH372的电脑驱动。CH372DRV.EXE - 南京沁恒微电子股份有限公司 (wch.cn) 

            Ⅱ.检查是否焊接了其他频率的外部高频晶振。只能是32M高频晶振,其他频率不要用。

            Ⅲ.排查PB10、PB11是否接反。

            Ⅳ.检查USB烧录用的线材,不要用内部有接触不良/断裂的线材。

            Ⅴ.排查PB10是否被强下拉到GND、PB11是否被强上拉到V33(强上下拉电阻:阻值小于4K)。针对USB烧录问题,先把两USB信号脚悬空进行测试,如有特殊需要再自行加电路看看是否兼容。

            Ⅵ.检查是否存在信号干扰/信号线被短路,是否在烧录USB口同时外接了其他设备。

给MCU上电10s内电脑没有弹出提示:

            Ⅰ.排查PB10、PB11两者是否短路。通常线材是两端公头,可以将板子上的USB母口接出来到A口母口,检查一下A口母口上的D+D-两线有没有短路。

            Ⅱ.排查PB10是否被强上拉到V33、PB11是否被强下拉到GND(与弹出提示的短路情况电平相反,强上下拉电阻:阻值小于4K)。针对USB烧录问题,先把两USB信号脚悬空进行测试,如有特殊需要再自行加电路看看是否兼容。

            Ⅲ.PB23不要一直接到GND。用万用表量一下PB23是否短路到了GND。

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

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

相关文章

使用docker构建.net api镜像及nginx反向代理 - binzi

一、使用docker构建.net api镜像并且运行容器 如果你使用的是windows,确保你已经安装了docker 打开Windows PowerShell 运行docker version如果能显示客户端和服务端信息,说明 Docker 环境正常。 在webapi中右键dock…

利用sprintf与snprintf巧妙实现数值变量转换为字符串型

0.前情提要 这是在搞STM32开发时遇到的一个问题,要将数字通过串口发送给上位机,但是HAL库中的HAL_UART_Transmit函数只接受uint8_t *类型的参数,因此我们需要通过一个函数先将数值类型变量转换为char *字符串,再强…

Helmholtz-Gibbs自由能与熵弹性

2025.10.09 开坑Helmholtz 自由能定义:热力学中一个非常重要的势函数,常用于描述恒温(Isothermal)和恒容(Isochoric)条件下的系统。 Helmholtz 自由能的定义公式可以写为 \[ \psi = \]Gibbs 自由能定义 熵弹性定…

日志|电话号码的字母组合|子集|回溯

解题思路:回溯三问:1.当前操作?枚举数组path[i]要填入的字母 2.子问题?构造字符串>= i 的部分 3.下一个子问题?构造>= i+1 的部分对于本题1.当前操作:枚举放入path当前i的字母 例如第2个数字对应的a b c …

Rust 的验证码图像识别系统设计与实现

一、研究背景 验证码(CAPTCHA)是互联网安全中最常见的防护手段之一,用于区分人类用户与自动化程序。 近年来,随着OCR(Optical Character Recognition,光学字符识别)与机器学习的发展,验证码识别已成为人工智能…

Docker实用篇(初识Docker,Docker的基本操作,Dockerfile自定义镜像,Docker-Compose,Docker镜像仓库) - a

Docker实用篇(初识Docker,Docker的基本操作,Dockerfile自定义镜像,Docker-Compose,Docker镜像仓库) 目录Docker实用篇(初识Docker,Docker的基本操作,Dockerfile自定义镜像,Docker-Compose,Docker镜像仓库)0.学习目…

ROIR 2023

ROIR 2023 评分 \(\in[0,10]\)。 https://www.luogu.com.cn/problem/list?type=luogu&page=1&tag=479|60&orderBy=pid&order=asc 矩形分割 (Day 1) \(3\)。 根据题意列出二元二次方程,用 \(k\) 换元…

【题解】P12992 [GCJ 2022 #1C] Intranets

以此纪念我洛谷 AC 的第 \(999\) 个题。 \(2025.10.09\) 题意: 天网是一张无向图 \(G\) ,包含 \(n\) 个点。一开始,天网上没有任何边。你以等概率随机顺序依次对所有的点对尝试加边。 每次尝试加边 \((u,v)\) 的时候…

ysyx:pa3.1批处理系统

ysyx:pa3.1批处理系统批处理系统 为了让管理员事先准备好一组程序, 让计算机执行完一个程序之后, 就自动执行下一个程序,提出了批处理系统的思想。处理系统的关键, 就是要有一个后台程序, 当一个前台程序执行结束的时…

基于 C 语言的验证码图像识别系统实现

一、项目背景 验证码(CAPTCHA, Completely Automated Public Turing test to tell Computers and Humans Apart)是一种常见的安全验证手段,用于防止机器自动提交表单、恶意注册等操作。随着计算机视觉与OCR(光学字…

C++篇:003

C++篇:003$(".postTitle2").removeClass("postTitle2").addClass("singleposttitle");C++篇:003.STL 一、STL概述 从根本上说,STL是一些“容器”的集合,也是算法和其他一些组件的集…

C 语言的验证码图像识别系统实现

一、项目背景 验证码(CAPTCHA, Completely Automated Public Turing test to tell Computers and Humans Apart)是一种常见的安全验证手段,用于防止机器自动提交表单、恶意注册等操作。随着计算机视觉与OCR(光学字…

oppoR9m刷Linux系统: 引导知识

前言全局说明注意:刷机,会丢失用户:照片、聊天等信息资料。请备份基带等信息。请慎重刷机 !!! 注意:刷机,会丢失用户:照片、聊天等信息资料。请备份基带等信息。请慎重刷机 !!! 注意:刷机,会丢失用户:照片、聊…

JAVA: Mybatis添加xml执行多行更新语句时报错

JAVA: Mybatis添加xml执行多行更新语句时报错tableMapper.xml<update id="updateTables" parameterType="Table"><foreach collection="tableList" item="item" sep…

安装Docker(CentOS安装Docker,CentOS7安装DockerCompose,Docker镜像仓库) - a

0.安装Docker 目录0.安装Docker1.CentOS安装Docker1.1.卸载(可选)1.2.安装docker1.3.启动docker1.4.配置镜像加速2.CentOS7安装DockerCompose2.1.下载2.2.修改文件权限2.3.Base自动补全命令:3.Docker镜像仓库3.1.简…

所有文档每页的第一行居中对齐

Sub 所有文档每页的第一行居中对齐()文件夹路径 = "C:\Users\你的用户名\Desktop\批量办公项目库\物业\第二次\300元含以下的住户\" 获取文件夹中第一个Word文档文件名 = Dir(文件夹路径 & "*.doc*…

065_尚硅谷_赋值运算符基本使用

065_尚硅谷_赋值运算符基本使用1.赋值运算符介绍和分类2.两个变量值互换方法1:定义一个临时变量,方法2:复合赋值的操作 3.赋值运算符的特点

上代码演示下Profile-Guided Optimization (PGO)

Shell脚本名叫step#!/bin/bashif [[ $# -ne 1 ]]; then exit; firun() { C="g++ $1 main.cpp"; echo $C; $C; a.out; }case $1 in 0) run ;; 1) run -fprofile-generate=. ;; 2) run -fprofile-use=. ;; # …

一个有趣的网站,可以给自己生成一个奖牌:aitokenawards.com

一个有趣的网站,可以给自己生成一个奖牌:aitokenawards.com 一个有趣的网站,可以给自己生成一个奖牌:AI Token Awards JSON Formatter - AI Token Awards

109

栈的特性(后进先出) 顺序栈 增删改的时间复杂度为O(1) top指针与base指针,top与base指针指向0和-1的时候关于top指针指向的顶端位置不同 先压后加,先减后弹