SWD应用接口

SWD应用接口随着ARM公司对Cortex系列的推出,采样SWD方式调试成了大家的首选。SWD不仅速度可以与JTAG媲美,而且使用的调试线少得多。很多人在采样SWD方式进行调试时,一般都是采用4线:①VCC     –    电源②GND    –   地线③SWDIO-   数据④SWCLK-  时钟       在对NXP的LPC111

大家好,又见面了,我是你们的朋友全栈君。

随着ARM公司对Cortex系列的推出,采样SWD方式调试成了大家的首选。SWD不仅速度可以与JTAG媲美,而且使用的调试线少得多。很多人在采样SWD方式进行调试时,一般都是采用4线:

① VCC     –     电源

② GND     –    地线

③ SWDIO –    数据

④ SWCLK –   时钟

        在对NXP的LPC1114下载仿真时,用ULINK2和JLINK V8都是可以的,但是对于STM32,如果用JLINK V8可以下载,而用ULINK2下载时总是超时,而加上NRESET复位线则可以正常下载。所以为了兼容所有芯片和调试工具,最好按照一下方式进行预留接口:

PIN 1:  GND  
PIN 2:  NRST  
PIN 3:  VCC 
PIN 4:  SWDIO  
PIN 5:  SWDCLK

当然有时候只需三条线就可以,但是对于有些芯片就不稳定:

PIN 1:  GND  
PIN 2:  SWDIO  
PIN 3:  SWDCLK

所以也可以采用如下方式:

1 – VCC;  
2 – GND;  
3 – SWDCLK;  
4 – SWDIO;  
5 – NRST.  
中间三根是必须,NRST可加可不加,有人说VCC要给JLink的输出接口芯片ALVC164245供电也可以加上。


在使用Jlink开发ARM的东西时,出现了一点小问题:
在进行仿真的时候,弹出如下对话框:

JLink Error: Supply voltage too low (1 Volt is required, Measured: 0.0 Volt).
Please check target power

这个一看之下,明显是电压低了,而且已经指出是目标板的电压低,所以一个解决的办法就是测量目标板的电压,看其是否正常

还有一个问题就是:
你可以直接测试Jtag的第一管脚,如果这个管脚是对的哪啊么这个问题估计 也就解决了。

我们可以下看一下Jlink 的管脚定义:
SWD应用接口
这很明显的是第一二管脚,

在进行仿真的时候,目标板需要给jlink一个电压作为参考,也就是第一管脚,

如果这个管脚没有的话,出现的情况就是:
Jlink无法连接目标板
Jlink与FLASH连接不成功
Jlink电压低,也就上面的问题

所以倒着的话,你应该很明显的能看出来问题在拿了!!!!!!!!!!!!!!!!!!!!!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129920.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SSM整合支付宝支付功能

    SSM整合支付宝支付功能

    2021年9月26日
  • 我的第一个上位机软件「建议收藏」

    我的第一个上位机软件「建议收藏」2019年即将过去,这一年最值得开心、高兴的事就是我参与研发的“全自动生化分析仪”终于上市了,并受到市场的欢迎;由于有非常给力的销售团队,机器的订单一直不断。当然机器研制成功是项目经理和团队的功劳,而我只是参与其中的一部分而已,但这对我而言有特殊的意义;因为这是我的第一个基于linux的商用上位机软件。虽然以前在windows平台折腾过java、C#、MFC的小上位机,但那些上位机无…

    2022年5月31日
  • 微信小程序制作表格代码「建议收藏」

    微信小程序制作表格代码「建议收藏」微信小程序中没有专门的表格制作工具,不过使用列表渲染可以实现,下面是我做的表格图片:方法如下:在XXX.wxml中填写下面的代码参数内容{{item.code}}{{item.text}}{{item.type}}

    2022年7月27日
  • 【C++】智能指针详解

    【C++】智能指针详解参考资料:《C++Primer中文版第五版》我们知道除了静态内存和栈内存外,每个程序还有一个内存池,这部分内存被称为自由空间或者堆。程序用堆来存储动态分配的对象即那些在程序运行时分配的对象,当动态对象不再使用时,我们的代码必须显式的销毁它们。在C++中,动态内存的管理是用一对运算符完成的:new和delete,new:在动态内存中为对象分配一块空间并返回一个指向该对象的指针,delet…

    2022年7月11日
  • .net的winform中DialogResult属性的使用

    .net的winform中DialogResult属性的使用在winform项目开发时,我们常会遇到一种情况,在主窗口中需要打开窗口进行数据的增加或修改,关闭子窗口时需要刷新主窗口数据。此时就用到DialogResult这个属性。下面用一个简单例子说明Dia

    2022年7月1日
  • fmincon函数求极值[通俗易懂]

    fmincon函数求极值[通俗易懂]matlab中的函数fmincon可用于求可以求取多元函数的极值,其约束包括五种:1、线性不等式约束;2、线性等式约束;3、变量约束;4、非线性不等式约束;5、非线性等式约束。其形式如下:x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)求解问题的标准型为minF(X)s.tAX<=b(线性不等式约束)AeqX=beq(线性等…

    2022年6月18日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号