No target connected和Internal command error解决方法总结
软件方面与硬件方面我曾都试过,但我将软件方面的解决方法都试过了,但都没有解决,后来就看硬件方面,因为我使用的板子是别人设计的,所以我就检查一下板子的原理图,果然是VDDA电压不足导致的,后面我将VDDA的电压施加为3.3V,芯片就可以识别了。
软件方面
1、按复位键
(1)SWD是五线的(既包含NRST) 先长按STM32芯片的复位键,再点击仿真或者下载按钮,再松开复位键。需要注意的是,在程序里一定要避开对SWD引脚的配置。 参考连接:KEIL提示“No target connected”、“Internal command error”的解决方法
(2)SWD是四线的(不包含NRST) 下载STM32 ST-LINK Utility,用镊子或导线把STM32的NRST接地,让其复位,然后STM32 ST-LINK Utility识别到STM32芯片,接着用STM32 ST-LINK Utility擦除芯片,最终就可以重新下载了。 参考链接1:STLINK烧录遇到No target connected问题 参考链接2:ST Link设备连接正常,但是keil中找不到已连接的设备
2、SWD的引脚被初始化为普通引脚,或用作其他功能 解决方法: (1)SWD引脚配置 将SWD引脚配置好,勿作他用。 标准库的配置方法:STM32库中关于GPIO_PinRemapConfig函数的使用 HAL库的配置方法:stm32用keil+stlink不识别问题
3、使用了ST_link,还出现了st-link usb communication error,可能是固件未更新 参考链接:STlink下载出现st-link usb communication error解决方法
硬件方面
(1)换个下载器试试 (2)芯片供电不足,检查一下5V,3.3V的电压是否有问题。我的板子是别人设计的,原因就是在引脚VDDA处电压不足,复位模块RC振荡器、PLL的供电全部来自于VDDA,也就是说单片机的时钟系统的供电来自于VDDA,它没有正常供电当然是差找不到单片机!
把VDDA与VDD相连接,VDDA =VDD=3.3V,芯片就可以识别了。 参考链接:STM32的SWD烧录模式No Target Connected 错误的一种情况
|