
前言 菊花链 JTAG STM32 一、简要说明 硬件:STM32F401C-DISCO *2,MCU :STM32F401VCT6 ; 软件:\STM32Cube_FW_F4_V1.8.0\Projects\STM32F401-Discovery\Demonstrations\EWARM 对于硬件的连接以及运行后的现象,readme.txt 中已经说明: ![]() 程序运行的结果是 LD3~LD6 是跑马灯形式的闪烁。 参看 STM32F401 的参考手册,RM0368 Rev3. 里面在 Debug support(DBG)里面有描述: ![]() 同样在 JTAG 本身的官网中,也有同样的描述:UM08001(User guide of JTAG emulators for ARM cores), ![]() 这也也要注意一下,什么在菊花链中,哪一个是 Device0,即 TDO 接 JTAG 的那个设备,其他的 Device1,2,,,,依次往后排; 二、环境搭建 按照上图,进行 JTAG 的环境的搭建; 参看 STM32F401VCT6,100pinTQFP 封装的数据手册,找出其引脚的分配; ![]() ![]() 在加上 JTAG 的接口的定义: ![]() 即需要 JTAG 的标准引脚的,第 9,7,3,5,13 这 5 个引脚;然后链接相应的引脚: ![]() 此外,对于正常链接目标芯片,还需要检测芯片的电源/地,两个引脚 1,20; 当线链接好后, ![]() 可以用 IAR 直接下载程序以判断接线是否正确,或者用 KEil 的上述功能,检查他是否检测到了相应的驱动。对于多个板子的话,就是主要改变 TDI,TDO 即可;因为参照上面的描述,TCK,TMS,TRST 这三个脚都是公用的;下图所示,KEIL 发现了两个驱动,即表明菊花链的硬件链接是对的了; ![]() 通过下拉条来看,这两个驱动的名字是一摸一样的,这也复合我们实际的电路,都是使用的同样的两块 STM32F401VCT6 ;那需要怎样的设定来判断是菊花链中的哪一个设备呢? 这里简要的说明一个事情: 对于每一个 STM32 包含 2 个 TAPs(如下图): TAP0: Cortex M4 TAP. (the nearest TAP). TAP1: Boundary Scan TAP. 所以: With 2 STM32 in a scan chain, we will have 4 TAPs: TAP0: Cortex M4 TAP IC1. TAP1: Boundary Scan TAP IC1. TAP2: Cortex M4 TAP IC2. TAP3: Boundary Scan TAP IC2 ![]() 于是,对于 IAR ![]() 配置如下: 烧录 Device 0: *TAP number = 0 (Cortex TAP, the nearest ==> #0) *Preceeding bits= 0 (the very first device/TAP in the chain) 烧录 Device 1: *TAP number = 2 *Preceeding bits= 9(5+4) 双开 IAR,下载调试,ok; ![]() 如果三个的话,也是如此,则 Device2 的配置: *TAP number = 4 *Preceeding bits= 18; 大家可以试试看。 ![]() 这是在 IAR 中的描述,那么在 KEIL 中呢? ![]() 驱动是找到了,但是哪个选项是能区分不同的芯片在菊花连中的位置呢? 一开始怀疑是否是自己的 JTAG 版本不够新? KEIL 版本不够新? KEIL 的正版权限不偶? 最终咨询后,发现,都不是我想的原因,如果换成 ULINK,则可以发现: ![]() 这时候发现能够手动的的修改了,Manual Configuration,不再是灰色的了。现在想想也正常,毕竟 ULINK 才是 Keil 自己的下载工具,如果 Keil 对其他的下载工具的功能做一些限制或优化,也是正常的;选中其中的一个, ![]() 要怎么修改呢? ![]() 试验后只需要修改一个参数 IR len 即可,那么 IAR len 的长度究竟怎么算呢?大家可以动手算一算; |
【下载有礼】STM32 Finder华为应用商店正式上线!移动选型工具助力开发效率升级
【2025·STM32峰会】GUI解决方案实训分享5-调通板载的NRF24L01 SPI接口并使用模块进行无线通信(发送和接收)
【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)
实战经验 | Keil工程使用NEAI库的异常问题
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
2024意法半导体工业峰会:赋能智能电源和智能工业,构筑可持续未来
ST推出灵活、面向未来的智能电表通信解决方案,助力能源转型
意法半导体 x Qu-Bit Electronix:推动新一轮的数字声音合成革命