硬汉嵌入式论坛

 找回密码
 立即注册
查看: 443|回复: 1
收起左侧

[脱机烧录] 花了两天时间才打通H7-TOOL脱机访问树莓派单片机SWD Multi Drop接口

[复制链接]

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
111542
QQ
发表于 2024-5-11 01:37:53 | 显示全部楼层 |阅读模式
Cortex-M SWD接口的Multi-drop功能是指在单个SWD接口上连接多个设备的能力。

这是通过SWD协议的第二版本(SWD v2)实现的(规格书 ADIv5.1里面有介绍),它允许主机通过仅两条线(SWDIO和SWCLK)与多个设备同时通信。这种多点连接架构不限制有效连接数,只受电气特性的限制,并且在最大程度上支持向后兼容。

树莓派单片机就是这样的,我们TOOL的LUA小程序还没有办法直接访问,所以就花了些时间,让LUA小程序对Multi Drop做了个支持。

比如向RAM地址x20000000写入5个字节数据,然后读取出来:

重新封装了下pg_init.  就这么个功能搞了两天。

[Lua] 纯文本查看 复制代码
ProgChipIdType = 1 
pg_init()

datawrite = "\x11\x22\x63\x44\x54"
re = pg_write_mem(0x20000000, datawrite)
if(re == 1) then
    print("写入成功")
else
    print("写入失败")
end
 
re,dataread = pg_read_mem(0x20000000, 5)
 
if(re == 1) then
    print("读取成功")
    print_hex(dataread)
else
    print("读取失败")
end



下载 (1).png

关于Muti-Drop
https://developer.arm.com/documentation/ddi0314/h/Debug-Access-Port/SW-DP/SW-DP-multi-drop-support
















回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
111542
QQ
 楼主| 发表于 2024-5-11 01:48:10 | 显示全部楼层





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-11-1 09:01 , Processed in 0.222792 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表