百科知识

unknown device是什么意思在哪

unknown device是什么意思在哪

一、前言

在使用GD32MCU过程中,我们常常遇到因错误应用导致的无法连接MCU的问题,以及只知道通过IDE硬件仿真调试MCU的情况。本文以GD32F303为例,旨在分享工作中遇到的连接问题和一些调试方法,希望能引导大家自行检查和学习,愉快地畅玩GD32MCU。

二、调试方法

① 介绍一款强大的调试工具——jlinkcmd。它在非仿真情况下,能方便地进行内核操作、单步执行、全速运行、设置断点、查看内核和外设寄存器以及读取flash代码等操作。这对于我们查看运行中MCU的情况、寻找非IDE仿真情况下MCU运行异常的原因非常有帮助。

如何操作呢?在jlink的安装版本目录下可以打开jlinkcmd。然后,使用jlink连接好MCU,打开软件“Jlink.exe”。按照提示输入相应信息,如connect、?、s等命令,即可连接目标芯片。在正确链接后,可以使用诸如mem、mem8、mem16等命令来读取内存,w1、w2、w4等命令来写入内存,以及其他如h、setbp、g、s、r等命令进行其他操作。

② 接下来,介绍一款可以在用户程序中抓取全局变量数据并绘制波形的软件——J-Scope。只需前往segger下载对应的软件安装包并正确安装,然后创建工程,选择调试接口和速度,添加想要查看的全局变量,即可开始绘制变量波形。

三、连接烧录问题总结

在GD32MCU的连接和烧录过程中,可能会遇到各种问题。以下是常见的问题及其原因和解决办法:

1. 使用jlink调试器在MDK内无法识别设备ID。可能的原因和解决办法包括:检查jlink是否正确连接目标芯片,芯片引脚是否连接正确、虚焊或接反;检查MCU是否设置了高级读保护状态;确认jlink硬件和软件版本是否满足要求;使用jlinkcmd连接目标芯片查看是否连接成功,若连接成功则删除MDK工程目录下的jlink配置并重新配置。

2. 仿真器配置中可以识别id,但下载错。可能的原因和解决办法包括:确保FlashDownload里的Flash算法正确添加,对应的大小和地址范围匹配;检查芯片是否具有读保护或写保护,并使用ISP或jlink进行解锁;针对因晶振配置导致的问题,可以尝试使用BOOT0拉高复位、使用外部晶振或isp擦除后下载等方法解决;对于MCU上电即进入低功耗模式的问题,也可采用类似方法解决。

3. 能正常下载但调试有问题。可能的原因和解决办法包括:注意debug配置是否为硬件仿真,检查boot0是否接地,检查IAP应用中的下载地址,以及在仿真正常但下载后运行不正常的情况下,检查boot0连接方式并确认其在IAR仿真环境下的自动跳转功能。

以上就是关于GD32MCU的调试和连接烧录问题的总结。希望通过分享这些方法和经验,能帮助大家更好地使用和玩转GD32MCU。


unknown device是什么意思在哪

你可能也会喜欢...