jlink问题汇总

上传人:简****9 文档编号:106892970 上传时间:2019-10-16 格式:PDF 页数:3 大小:150.13KB
返回 下载 相关 举报
jlink问题汇总_第1页
第1页 / 共3页
jlink问题汇总_第2页
第2页 / 共3页
jlink问题汇总_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《jlink问题汇总》由会员分享,可在线阅读,更多相关《jlink问题汇总(3页珍藏版)》请在金锄头文库上搜索。

1、 本文档专为初用 JLINK 调试 ALIENTEK MiniSTM32 开发板的朋友编写。 先申明,STM32 支持 2 种模式仿真和下载,即:1、JTAG 模式,次模式需要用到 5 个 IO 口 (JTMS/JTCK/JTDI/JTDO/JNTRST) ; 2、 SWD 模式, 此模式只需要 2 个 IO 口 (SWDCLK 和 SWDIO) 。 首先,我们来了解一下这些问题的根源所在:之所以会存在大家一系列的 JLINK 无法 下载、无法调试的问题,其根本原因 ALIENTEK MiniSTM32 开发板的一些连接外设的 IO 口和 JLINK 的调试口共用了。如图 1 所示: 图 1

2、JTAG 与外设 IO 口连接情况 从图 1 可以看出,JTAG 模式的 5 个 IO 口,除了 JTCK 外,其他都和外设 IO 共用了。 并且和重要外设 LCD 共用(LCD_D3 和 LCD_D4) 。其次,JTDI 与与 PS_CLK(PS/2 的时 钟线) 、KEY1 共用,JTMS 与 PS_DAT(PS/2 的数据线)、KEY0 共用,同时该线也是 SWD 的 IO 线。正是因为这样的连接关系,所以在使用 LCD(包括 OLED)的时候,我们必须禁止 JTAG,以使得 LCD_D3 和 D4 可以作为正常 IO 口用。此时,如果 PA13 没有用来做普通 IO 口用的话,是可以用

3、 JLINK 的 SWD 模式来仿真和调试的(SWD 模式需要的 SWDIO 和 SWDCLK, 也就是 PA13 和 PA14) 。 但是, 一旦你使用了 LCD, 同时又用到了 PS/2 或者 KEY0 或则 KEY1 等外设的时候, JTAG 和 SWD 模式就都必需被禁止才能正常使用 (单独用 KEY1, 可以用 SWD 模式下载,注意仅仅是下载,而不能调试,因为 Jlink 的电平,会影响到 KEY1 的状态) 。 因为 ALIENTEK MiniSTM32 开发板的大部分例程都需要用到 LCD, 会导致 JTAG 无法 使用,所以我们多次强调大家不要用 JTAG 模式,而要选择 S

4、WD 模式。SWD 模式,仅仅 会导致 KEY0、KEY1 以及 PS/2 口无法调试,注意这里是不能调试,但是是可以下载的,下 载的前提:之前保存在 STM32 里面的程序,没有一直禁止 SWD 口(一个程序循环周期里 面 SWD 使能的时间至少超过 10ms) 。一旦这个条件得到了满足,JLINK 就可以通过 SWD 模式连接到板子上的 STM32,并给其下载代码,调试代码(有 KEY 及 PS/2 的部分不能调 试) 。所以,一旦你的板子出现了连接不上的情况,一般就是当前保存在 STM32 上面的程 序,没有满足这个条件。 好了,介绍了以上的知识之后,我们再来看看大家的问题吧。 问题一、

5、问题一、在 Options for TargetTarget 1选项卡里面,设置 Cortex-M3 J-Link 的时候,弹出如 图 2 所示的错误信息: ALIENTEK Mi n i STM32 开发板 w w w .o p e n e d v .c o m 图 2 设置 Cortex-M3 J-Link 提示错误 问题说明: 图中红圈提示信息为 SWD 模式下, 没有找到器件。 说明我们虽然设置了SWD 模式,但是还是未能找到 STM32。这种情况,一般是由于 STM32 里面跑了把 SWD 模式给 禁止的程序,可能是一直禁止(比如 PS/2 例程) ,可能是 SWD 开启时间太短(2

6、.0 早期版 本的按键实验例程) 。 解决办法:把 B0 接 V3.3(B1 默认接 GND,以下类同,注意,此时仅仅能下载代码, 并不能用 注意,此时仅仅能下载代码, 并不能用 JLINK 仿真!因为仿真!因为 STM32 工作在工作在 ISP 模式,不会执行用户代码!模式,不会执行用户代码! ) ,再点击 Auto Clk,一般就能发现到芯片了,如图 3 所示: 图 3 SWD 模式下找到了 STM32 芯片 问题问题 2、在问题 1 里面,STM32 芯片被正常的找到,但是当点击下载()/仿真() 按钮的时候,出现如图 4 所示的错误信息: 图 4 下载/仿真连接失败 ALIENTEK

7、Mi n i STM32 开发板 w w w .o p e n e d v .c o m 问题分析:出现这个问题的原因,和问题一的原因基本一样,但是由于在下载或者仿真 的时候,可能重试次数不如前者,导致无法正常连接到芯片,而前者可以连接到。所以出现 了这样的问题。 解决办法:1,把 B0 接 V3.3,再下载(注意,此时仅仅能下载代码,并不能用注意,此时仅仅能下载代码,并不能用 JLINK 仿真!因为仿真!因为 STM32 工作在工作在 ISP 模式,不会执行用户代码!模式,不会执行用户代码! ) 。2,通过串口下载一个没有禁 止 SWD 模式的代码(如跑马灯例程)或者擦除芯片。然后再用 SW

8、D 模式下载。 问题三、问题三、在下载/仿真的时候出现如图 5 所示的错误界面: 图 5 下载仿真出错 问题分析:此界面提示在 JTAG 口没有找到 Cortex M 的器件,典型的是在开始使用的 时候,忘记在 Options for TargetTarget 1选项卡里面设置为 SWD 模式了。因为我们的开发 板很多实例程序都禁止了 JTAG,而使能的是 SWD 模式。 解决办法: 1, 去 Options for TargetTarget 1选项卡里面设置 JLINK 工作在 SWD 模式下。 2,同问题二的解决办法 1。3,通过串口下载一个未禁止 JTAG 模式的程序(比如跑马灯实 验)

9、或者擦除芯片,再用 JTAG 下载。 大部分用户在使用的时候, 碰到的基本上就是以上这三类问题了。 如果大家碰到类似的 问题,用上面提供的解决办法,一般都能解决。 另外,注意 STM32 的启动模式,在 B0 接 V3.3,B1 接 GND 的时候,STM32 是工作在 ISP 模式的, 此时尽管可以随便的下载代码到开发板, 但是, 并不能让下载进去的代码执行, 如果需要让代码执行,请务必把 B0 接 GND! 还有些程序虽然可以通过 JLINK 下载,但是不能用 JLINK 仿真(比如按键实验程序) , 碰到这样的程序,大家就用串口调试吧。 最后,再一次提醒大家:用 SWD 模式,别用 JTAG 模式! 正点原子ALIENTEK 2010-12-9 ALIENTEK Mi n i STM32 开发板 w w w .o p e n e d v .c o m

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号