你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32L4】禁用 nJTRST 但不中断 JTAG

[复制链接]
maxtch 提问时间:2020-3-30 16:11 /
如题,我的目标板有一片 STM32L432KBU6。现在在开发过程中想要禁用掉 nJTRST 把 PB4 用作 GPIO,但又不想因此中断四线制 JTAG。这该怎么办?
限制条件:
  • 我不用 HAL 和 Cube,所有操作完全直接捅寄存器。
  • 这个 JTAG 是和别的芯片共用的,因此不可以改用 SWD。(STM32 的 TDI 接着别的芯片的 TDO,而 TMS 和 TCK 是多片芯片共享的。我有好几只自制 JTAG 调试器,均统一使用 ARM CoreSight 调试接口,因此不用担心接口兼容性。)


背景:
我之前是做过类似的设计的:STM32F103C8T6 + XC2C32A CPLD 共用一个 JTAG 接口。STM32F1 可以通过 AFIO->MAPR 去禁用掉 nJTRST 而不影响 JTAG 调试接口和 Xilinx iMPACT 通过 JTAG 烧录 CPLD。现在的问题是 STM32L432KBU6 取消了 AFIO 改作 SYSCFG,但 SYSCFG 里面也没有找到对应的寄存器,而直接修修改 GPIOB->AFIO[0] 寄存器把 PB4 从 AFIO 0 改成 AFIO 5(SPI1)会中断 JTAG 调试。如何解决?
收藏 评论4 发布时间:2020-3-30 16:11

举报

4个回答
mylovemcu 回答时间:2020-3-30 16:27:10
200108.png

是这个寄存器  (忽略红线)

配置成第二种模式就可以了

评分

参与人数 1蝴蝶豆 +3 收起 理由
STMCU + 3

查看全部评分

maxtch 回答时间:2020-3-30 17:51:43
mylovemcu 发表于 2020-3-30 16:27
是这个寄存器  (忽略红线)

配置成第二种模式就可以了

STM32F103 这个我是知道的。STM32L432 没有这个寄存器。您是不是目标芯片型号看错了?
mylovemcu 回答时间:2020-3-31 08:23:51
maxtch 发表于 2020-3-30 17:51
STM32F103 这个我是知道的。STM32L432 没有这个寄存器。您是不是目标芯片型号看错了? ...

抱歉  确实看错了  
这个芯片没用过
刚找了一下  L4的芯片没有这个寄存器  上电默认功能就是用做调试口的  属于引脚复用  要做普通口就直接把这个引脚配置成普通模式就可以了  手册上是这么写的  你试一下
maxtch 回答时间:2020-4-1 00:53:18
mylovemcu 发表于 2020-3-31 08:23
抱歉  确实看错了  
这个芯片没用过
刚找了一下  L4的芯片没有这个寄存器  上电默认功能就是用做调试口的 ...

现在的问题就是直接配置,然后在写入 GPIOB->MODER 或 GPIOB->AFRL 的瞬间 JTAG 中断。

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版