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

调试器如何通过AP0~AP3访问H757?

[复制链接]
sistao 提问时间:2026-9-4 14:46 / 未解决

向大佬们请教一个关于调试器访问H757的问题。参考手册指出H757有4个AP接口,分别可以访问不同内核或者寄存器,AP0是M7访问端口,AP1是D3域访问端口,AP2是系统访问端口,AP3是M4访问端口。

image.png

但是在实际使用时发现,只有AP0可以访问M7和内存/寄存器,AP1~AP3访问失败。

下面是我在使用过程中的现象:

1.通过JLINK Commander命令行来访问

1)首先向SRAM0x20000000地址写入0x12345678,然后向DP接口的Select 寄存器写入0x00000000,选中AP0作为访问端口;

2)向AP接口的TAR寄存器写入地址值0x20000000(要读的地址),然后读AP接口的DWR寄存器。

测试结果是:可以通过AP0将0x20000000地址处的数据读出来,数据值0x12345678,与写入值一致。

image.png

为了验证其他AP端口,我将图中划红线的部分改成0x30000000,用于选中AP3接口。但是读出来的数值是0。改成AP1和AP2访问相应的区域读出来的值也是0,如下图:

image.png

刚开始怀疑是jlink是盗版的,可能只支持AP0访问,后面找来了一个正版jlink,也是同样的现象。

2.使用Jlink 在Keil环境中对M7和M4分别进行调试

对M7内核可以正常调试,但是对M4内核调试失败,指针直接跳转到0x08000000,这个地址是M7程序地址,而非M4。这个现象是不是再次印证了AP3访问接口没有走通,最起码对JLINK来说没有走通?

3.使用STLINK、ULINK2在Keil环境中对M7和M4分别进行调试

对M7、M4内核都可以正常调试。但是不知道如何通过AP1、AP2进行访问相应的地址。

综合上面的测试结果,下面是我向大佬们请教的问题:

1.Jlink是否支持A0~AP3访问端口,网上查了一些资料,说是支持的,那么为什么采用AP1、AP2、AP3访问失败呢?是不是我的配置有问题?

2.STLINK、ULINK2可以通过AP0、AP3进行访问,但是这个是KEIL中默认的值(选择对M7调试,就是AP0,对M4调试就是AP3),没办法更改。STLINK、ULINK2也没有类似于JLINK Commander的命令行,那么如何通过AP1和AP2进行访问呢?

(可能有些地方表述的不太清楚,请谅解)希望得到大佬的回复,谢谢。

image.png
收藏 评论0 发布时间:2026-9-4 14:46

举报

0个回答

所属标签

相似问题

官网相关资源

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