WhyCan Forum(哇酷开发者社区)

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn

您尚未登录。

#1 2020-10-23 14:53:35

Blueskull
会员
注册时间: 2020-02-20
累计积分: 239

CH552通用JTAG适配器

如题,最近写了个基于CH552的通用JTAG适配器。用法如下:

向EP1写入0x00+一个字节:控制电源、FPGA复位等,具体逻辑参见jtag.c的jtag_power()实现。其中0x04位控制JTAG模式还是SPI模式。
向EP1写入0x01+字节数+比特数+0x00+tms序列数组(以字节为单位,lsb先出)+tdi序列数组(同上):输出一个JTAG序列,最多30字节。
向EP1写入0x02+数据:输出一个SPI序列,复用JTAG引脚,最多63字节。
从EP1读取数据:读取JTAG写入时TDO采样得到的数据,字节序和TMS、TDI相同。

支持WCID,可以免驱(但是WinUSB貌似不被PyUSB支持,所以我手工安装了libusb-win32)。
下位机只负责输入输出JTAG序列,具体高层逻辑(TAP状态改变、读写、复位等)完全依赖上位机。

附送Python程序用于加载高云FPGA的比特流。实测GW1NR-LV9可用。

https://github.com/blueskull/CH552-JTAG

最近编辑记录 Blueskull (2020-10-23 15:17:04)

离线

#2 2020-10-23 15:22:19

xiaohui
会员
注册时间: 2019-01-15
累计积分: 133

Re: CH552通用JTAG适配器

大神厉害,迟些帮大佬验证下gw2ar是否可以用。

离线

#3 2020-10-23 18:00:07

Blueskull
会员
注册时间: 2020-02-20
累计积分: 239

Re: CH552通用JTAG适配器

代码仓库更新,新版本支持5倍的下载速度,达到160kBps(1.28Mbps)。等有时间把USB双缓冲搞了,应该能更快。

离线

#4 2020-10-24 01:26:02

metro
会员
注册时间: 2019-03-09
累计积分: 290

Re: CH552通用JTAG适配器

不错,这个应该是类似于FTDI的MPSSE的思路吧?做得好的话可以实现SWD等协议的模拟。

离线

#5 2020-10-24 08:17:10

shawn.d
会员
注册时间: 2020-09-12
累计积分: 100

Re: CH552通用JTAG适配器

厉害!

离线

#6 2020-10-24 10:24:39

ljbfly
会员
注册时间: 2017-12-07
累计积分: 37

Re: CH552通用JTAG适配器

优秀

离线

#7 2020-10-24 11:03:40

Blueskull
会员
注册时间: 2020-02-20
累计积分: 239

Re: CH552通用JTAG适配器

metro 说:

不错,这个应该是类似于FTDI的MPSSE的思路吧?做得好的话可以实现SWD等协议的模拟。

SWD没有研究过。这个就是bit shifter,具体每个bit啥意义他不管,他只负责把收到的byte拆成bit然后shift出去,然后shift进来另一路数据。

具体的bit定义和再高一层的协议是上位机的事情。就是MPSSE。

离线

#8 2020-10-26 10:19:06

iamseer
会员
注册时间: 2020-06-06
累计积分: 17

Re: CH552通用JTAG适配器

请问这个能连接openocd吗?

离线

#9 2020-10-26 11:26:59

Blueskull
会员
注册时间: 2020-02-20
累计积分: 239

Re: CH552通用JTAG适配器

iamseer 说:

请问这个能连接openocd吗?

不能,没做OCD的接口库

离线

#10 2020-11-16 11:25:36

Blueskull
会员
注册时间: 2020-02-20
累计积分: 239

Re: CH552通用JTAG适配器

挖个坟,代码重构了,C代码文件合并了,函数解耦了,Python代码合并了,模块化了,新增参数解析器。增加了韩同学的CH552 ISP程序。
GitHub链接不变。

离线

#11 2020-11-26 16:43:43

wm20031015
会员
注册时间: 2017-10-18
累计积分: 25

Re: CH552通用JTAG适配器

这个要能挂openocd就强大了

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB