为啥keil使用JLINK调试STM32要不报错,要不就是keil挂了?求大神指点。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥keil使用JLINK调试STM32要不报错,要不就是keil挂了?求大神指点。相关的知识,希望对你有一定的参考价值。

***JLink Error: Programming failed @ address 0x08000800 (program error),报错如上。到底是什么原因啊?keil已经重装了好几遍了。

参考技术A keil中相关jlink的设置都检查一下看是否设置正确,比如速率,接口类型,flash的选择等本回答被提问者采纳 参考技术B 可能是设置的断点过多,可以把断点全部删除试试看,STLink只能设置5个

使用Keil下载Hex文件进STM32

  前言

  初学STM32时,是通过串口1把Hex文件下载进STM32的,需要一个串口模块,而且还要设置BOOT0和BOOT1电平,然后通过FlyMcu软件进行下载,这也是一种不错的方法,这里我要介绍的是使用JLink调试器和Keil MDK-ARM来下载Hex文件,无需源代码,只需要一个调试器。

  所需要的工具和软件

  Hex文件,如Demo_STM32.hex

  Keil软件,v4或v5版本,如Keil v5.16a

  ARM调试器,Jlink或ST-Link,如Jlink v9

  STM32开发板,如STM32F103RET6

  1.准备一个完整的工程

  准备一个完整的工程,注意,这个工程的芯片型号、开发板的芯片型号、Hex文件对应的芯片型号,这三者的芯片型号要保持一致,否则会出现不能正确运行的问题。如都是STM32F103RET6。

  2.确定Jlink已经检测到芯片

  如图,先选择调试器类型,然后点击 Setting,如果连接上芯片,会在右侧显示芯片的ID号。

  

技术图片

 

  3.确定这个工程的Hex文件的输出路径

  打开工程配置界面中的,Output选项,可以看出我这个工程输出文件存放的路径是在OBJ目录下,名称是NiceDay

  

技术图片

 

  打开OBJ目录可以看到这个工程生成的hex文件名称为NiceDay.hex

  

技术图片

 

  4.把要下载的Hex文件放到OBJ目录下

  

技术图片

 

  5.把Output界面的NiceDay改为Demo_STM32.hex

  注意末尾的扩展名.hex不要少。

  

技术图片

 

  6.不要编译工程,直接点击下载按钮。

  在输出窗口可以看到下载完成

  

技术图片

 

  如果程序没有运行,可以在下载界面查看是否勾选了下载完成后复位运行。

  

技术图片

 

  最后呢也是提供一些stm32方面的资料作为学习参考

(stm32串口应用)
http://www.makeru.com.cn/live/1392_1164.html?s=45051

STM32定时器深藏不露的绝技
http://www.makeru.com.cn/live/3523_1495.html?s=45051
(stm32 温湿度采集)
http://www.makeru.com.cn/live/detail/1476.html?s=45051

(stm32直流电机驱动)
http://www.makeru.com.cn/live/1392_1218.html?s=45051

以上是关于为啥keil使用JLINK调试STM32要不报错,要不就是keil挂了?求大神指点。的主要内容,如果未能解决你的问题,请参考以下文章

STM32中的下载与调试?

keil和jlink仿真调试stm32串口时,怎么一直看不到接收寄存器变化?程序不仿真直接运行是正

如何使用JLINK向stm32烧写程序

有关STM32开发板JLINK和USB串口下载仿真的区别,我的认识可正确?详见补充

请教STM32用JLINK V8 SWD输出调试信息到ITM Viewer的问题

使用Keil下载Hex文件进STM32