三线SWD模式Jlink
在公司实习,部门经理让我做一个USB-CAN的适配器。
在网上找资料,找到一个开源的USB-CAN的适配器的资料。
采用的是CP2102芯片实现USB转串口。STM32作为主控,高速CAN收发器采用是TJA1050。
由于USB-CAN适配器要求小巧,
在给STM32烧写程序调试的时候,传统20脚JTAG底座个头大,占用PCB面积多,连接线复杂。
采用SWD模式Jlink,只需要三根线即可与目标板实现通讯,可实现程序下载,单步调试等功能,
除了不能检测目标板电压、不能给目标板供电、速度有所降低之外,与完整版JLink的功能是一样的。
下图所示为10、20脚JTAG底座:
20脚JTAG底座, 只需要 SWD、SWC、GND三根线,即 7号、9号及GND 中的任意一根针。
由于固件烧写一次后就不再使用(掉固件的可能性非常低),因此不需要再焊排针上去了,
杜邦排针连接即可。
对于全功能JLink,
1号针脚的功能有两个:检测目标板电压;为内部的电平转换芯片提供输出端参考电压。
也就是说,如果目标板电压为3.3V,那么这里也必须给1号针脚提供3.3V电压,
才能保证正常输出。由上图可知,20针JTAG的2号针可以提供VCC供电。打开J-Link
Commander输入power on时,发现2号针脚输出的是5V电压,如法通过直接短路1、2号针
来解决问题。
所以必须给Jlink的1号管脚提供3.3V的电压,可以在Jlink中获取,也可以在待烧写的板子中获得。
烧写程序接线顺序:插杜邦排针,原始JLink上电,待编程、烧写器上电(USB)。
断开时步骤相反,切不可颠倒!
尤其不能在上电时断开上图中的连接,否则会烧坏器件!
对于Jlink软件的配置:
Option->Project settings
在选择好对应的CPU后,重要的是配置SWD模式。
三线SWD模式Jlink的更多相关文章
- SWD模式和JTAG模式
一.功能 SWD模式:仿真 下载 JTAG模式:仿真 下载 二.接口 1.J-link JTAG/SWD接口 2.开发板接口电路 ①SWD模式 4根线(包片机) ②JTAG模式 20脚JTAG(网络) ...
- SWD模式连接与注意事项
JTAG模式与SWD模式连接图 SWD 仿真模式概念简述 一.SWD 和传统的调试方式区别 1. SWD 模式比 JTAG 在高速模式下面更加可靠. 在大数据量的情况下面 JTAG 下载程序会失败, ...
- J-Link在SWD模式与MCU能连接成功但不能读写
今天在J-Link的排线末端引出3.3v.SWDIO.SWCLK.GND,连接到stm32上,发现只能连接成功,不能读和写,出现下面错误: - ERROR: RAM check failed @ ad ...
- stm32f0系列在SWD模式下载时复位失败
用stm32f030K6T6做了个小玩意,仿真电路就直接把3.3V,SWDIO,SWCLK,GND引出来连接到j-link的这四个角上,SWDIO和SWCLK引脚既没有上拉也没有下拉. MCU ...
- stm32的两种固件下载模式:JTAG和SWD
一.JTAG模式 这种模式一般有10pin的.14pin的和20pin的,尽管引脚数和引脚的排列顺序不同,但是其中有一些引脚是一样的.值得注意的是,不同的IC公司会自己定义自家产品专属的Jtag头,来 ...
- j-link或者swd调试
两种 一.JTAG调试(5针), 二.SWD调试(2针), 在JTAG/SWD模式设置库函数 (在文件stm32f10x_gpio.c中): void GPIO_PinRemapConfig(uint ...
- 浅论各种调试接口(SWD、JTAG、Jlink、Ulink、STlink)的区别
JTAG协议 JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试.现在多数的高级器件都支持JTAG协 ...
- keil下JLINK在线调试仿真设置,SWD连接
keil下JLINK在线调试仿真设置,以下三个步骤搞定: 有时我们编译时会遇到空间不足的情况,首先我们应该把 flash和RAM的size 设置为当前所用芯片的大小,如下我使用了一个片上flash 2 ...
- 嵌入式调试器原理和各类调试器集锦(JLINK、STLINK、CCDEBUG)
工欲善其事,必先善其器.调试器在嵌入式开发调试中的重要性不言而喻,单步.断点和监察的效率远高于串口打印.但是,调试器对于一般开发人员往往是一个黑匣子.今天我们就来谈谈调试器的原理,顺便把自己的几类调试 ...
随机推荐
- [Linux] 007 目录处理命令
1. 目录处理命令:mkdir 命令名称:mkdir 命令英文原意:make directories 命令所在路径:/bin/mkdir 执行权限:所有用户 语法:mkdir -p [目录名] 功能描 ...
- spring-第九篇之高级依赖关系配置
1.关于配置文件一些使用 组件与组件之间的耦合,采用依赖注入管理:基本类型的成员变量值,应该直接在代码中设置. 2.获取其他bean的属性值 PorpertyPathFactoryBean用来获取目标 ...
- 厉害了,Google大神每天写多少行代码?
文章转自开源中国社区,编译自:Quora Quora上有个有趣的问题:Google工程师们每天写多少行代码? Google 的 AdMob 全栈工程师 Raymond Farias 在 Quora 发 ...
- 点分治题单(来自XZY)
点分治题单(来自XZY) 静态点分治 [x] 洛谷 P3806 [模板]点分治1 [x] 洛谷 P4178 Tree [x] 洛谷 P2634 [国家集训队]聪聪可可 [x] 洛谷 P4149 [IO ...
- Jenkins windows 执行批量cmd命令XCOPY 提示'XCOPY' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
由于Jenkins没有配置环境变量造成 打开Jenkins=>Manage Jenkins =>Configure System =>全局属性 新增全局变量 健: Path 值: % ...
- 2018-2-13-wpf-绑定-TextLength-
title author date CreateTime categories wpf 绑定 TextLength lindexi 2018-2-13 17:23:3 +0800 2018-2-13 ...
- 2018-2-13-WPF-延迟加载
title author date CreateTime categories WPF 延迟加载 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:23:3 + ...
- Shell04--循环语句
目录 Shell04---循环语句 1. 循环语句for基本概述 2. 循环语句for场景示例 3. 循环语句while基本概述 4. 循环语句while场景示例 5. 内置跳出循环语句指令 Shel ...
- mongdb 简介以及安装
1.什么是MongoDB? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 旨在为WEB应用提供 ...
- hover()函数的用法
定义和用法 hover() 方法规定当鼠标指针悬停在被选元素上时要运行的两个函数. 实例 当鼠标指针悬停在上面时,改变 <p> 元素的背景颜色: $("p").hove ...