JLINK调试问题总结

STM32学习的总结编译调试错误

2013-10-23 21:30| 发布者: admin| 查看: 1980| 评论: 1|原作者: admin

摘要: 由于学习STM32也不久,经常遇到一些编译调试的错误,但是老是找不到原因,多亏身边大侠的帮忙才得以解决。因此,将之前遇到的一些错误进行总结,方便以后自己查看,也希望能满足某些有需要的同行的需求。如果大家也 ...
      由于学习mcu.com/9mcubbs/forum.php?mod=viewthread&tid=1005681" class="relatedlink">STM32也不久,经常遇到一些编译调试的错误,但是老是找不到原因,多亏身边大侠的帮忙才得以解决。因此,将之前遇到的一些错误进行总结,方便以后自己查看,也希望能满足某些有需要的同行的需求。如果大家也有相关的经验,希望能写出来供大家分享。在此先谢谢啦!
      
      一、JILINK下载程序时,出现“ FLASH timeout,Reset the Target and try it again ”错误

               遇到这个问题,要检测TARGET选择的芯片型号与你使用的芯片型号是否一致。我遇到过这个问题,就是因为我两个芯片型号不一致所引起
        的。具体错误如下所示:
62197aa567b2b7f355d316727426e97f_240.jpg 
                具体的修改过程如下所示:


                1、首先确定芯片的型号,如下所示:
a6dd381c9cce976a0cd275f3943257e8_616.jpg 

                2、芯片型号选择好之后,接下来就需要选择下载器,我用的是JLINK,如下图所示。

f2c29fd4eaab0a2874e13747314a97d9_49.jpg




0abbd9ba40a2d11e7fede4ac037555e8_204.jpg 

                3、选择合适的FLASH算法配置。




6edc517842679c658183fe969e7b9c34_18.jpg 
225099d4f1d879edbba21a83917e2304_736.jpg 

                添加新的FLASH配置之后,将之前的FLASH配置删去,如下图所示。


c530208b6c9b4542329fcf0f1e32ec8d_918.jpg 

                4、保存配置,重新编译之后就可以下载了。




          二、JLINK在调试时出现“could not stop cortex-M device,please check the JTAG cable”

                 查看了多位网友的帖子,有以下几个原因(不一定都对呦):
                 
                 1、可能是因为将处理器的复位脚直接连接到GND,所以,没有复位信号来使MCU停止。

                 2、可能是JTAG的时钟配置的不正确,将其接到RTCK。

                 3、当系统的频率过高时,会导致该错误的发生。(换个频率较低的晶振,或者检查一下时钟配置,看是否是倍频设置的过高。)

                 4、看看你是否使用了看门狗,看门狗复位也会造成该错误的发生。

                 我的就是第四个原因,开启了看门狗,将看门狗关闭就可以使用JLINK调试了。

                三、JLINK调试时出现以下错误信息:

                        JLINK warning:CPU could not be halted
                        JLINK error:can not read register 0(R0) while CPU is running
                        JLINK error:can not read register 1(R1) while CPU is running
                              JLINK error:can not read register 2(R2) while CPU is running
                              ......
                
                    参考多位网友的帖子,原因可能有以下几点:
                    
                    1、设置debug->setting->dubug->connect & reset options -> reset 选项没有设置正确,应该设置为normal。

                2、BOOTO与BOOT1的设置是否正确。

                3、JLINK功能是否关闭。我的就是为了降低功耗将所有的IO都下拉所致,在调试的过程中,关闭该函数就可以了。

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
jlink是一款流行的烧录工具,可用于烧录nor flash存储器。烧录nor flash是将二进制数据写入存储器中的过程。 首先,我们需要准备好烧录所需的硬件和软件。硬件方面,我们需要一台电脑和一个jlink调试器。软件方面,我们需要安装并配置jlink的驱动程序和烧录工具。 第二步是连接jlink调试器和目标设备。我们需要使用适当的接口将jlink调试器连接到目标设备的nor flash存储器芯片。通常情况下,我们需要使用专用的编程器或者将jlink直接连接到目标设备的调试接口。 接下来,我们需要打开jlink烧录工具的软件界面。一般来说,jlink提供了一个简单易用的图形用户界面,我们可以在界面上选择所需的配置和设置。 在软件界面上,我们需要选择烧录目标设备的型号和芯片类型。这是非常重要的,因为不同的芯片和型号可能需要不同的烧录模式和参数设置。 在选择好设备型号和芯片类型后,我们需要加载要烧录的二进制文件。这个文件通常是一个特定的固件或程序文件,包含了将要写入nor flash存储器中的数据。 最后一步是点击烧录按钮,开始烧录过程。在烧录过程中,jlink会将二进制文件中的数据逐字节地写入nor flash存储器中。烧录过程可能会需要一些时间,具体耗时取决于所烧录的文件大小和烧录速度。 完成烧录后,我们可以通过验证步骤来确保烧录的正确性。这可以通过读取已烧录的数据并与原始文件进行比较来完成。 总结而言,使用jlink烧录nor flash是一个相对简单的过程,需要准备硬件和软件,连接目标设备,选择设备型号和芯片类型,加载二进制文件,点击烧录按钮,并进行验证。这样就可以成功地烧录nor flash存储器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值