8个版本

0.3.0 2022年2月4日
0.2.0 2021年5月27日
0.1.5 2020年8月27日
0.1.4 2020年7月25日
0.1.0 2019年12月8日

#312 in 调试

Download history 941/week @ 2024-03-14 897/week @ 2024-03-21 931/week @ 2024-03-28 804/week @ 2024-04-04 642/week @ 2024-04-11 703/week @ 2024-04-18 764/week @ 2024-04-25 696/week @ 2024-05-02 727/week @ 2024-05-09 634/week @ 2024-05-16 536/week @ 2024-05-23 468/week @ 2024-05-30 405/week @ 2024-06-06 432/week @ 2024-06-13 425/week @ 2024-06-20 326/week @ 2024-06-27

1,661 个月下载量

0BSD 许可证

82KB
1.5K SLoC

用于控制J-Link调试探针的crate

crates.io docs.rs CI

此crate允许通过USB与J-Link调试探针通信。可以控制探针的引脚,并可以通过JTAG或SWD执行I/O操作,从而实现对目标MCU的控制。

请参阅变更日志,了解最近版本的变化。

用法

在您的Cargo.toml中添加条目

[dependencies]
jaylink = "0.3.0"

查看API文档,了解如何使用crate的功能。

Rust版本支持

此crate针对最新的稳定版Rust。


lib.rs:

用于通过USB与J-Link调试探针通信的crate

此crate允许访问用于控制JTAG / SWD操作和其他功能的供应商特定USB接口。它不提供对虚拟COM端口功能的访问(这是一个常规的CDC设备,因此不需要特殊支持)。

灵感来源于libjaylink(尽管这个库不是移植的)。

引脚排列

J-Link使用基于标准20针ARM JTAG连接器的引脚排列,扩展以兼容SWD,并带有UART引脚。

JTAG引脚排列

           ┌───────────┐
    VTref  │ *  1  2 * │ NC
    nTRST  │ *  3  4 * │ GND
      TDI  │ *  5  6 * │ GND
      TMS  │ *  7  8 * │ GND
      TCK ┌┘ *  9 10 * │ GND
     RTCK └┐ * 11 12 * │ GND
      TDO  │ * 13 14 * │ GND
    RESET  │ * 15 16 * │ GND
    DBGRQ  │ * 17 18 * │ GND
5V-Supply  │ * 19 20 * │ GND
           └───────────┘

SWD (+ UART)引脚排列

           ┌───────────┐
    VTref  │ *  1  2 * │ NC
        -  │ *  3  4 * │ GND
J-Link TX  │ *  5  6 * │ GND
    SWDIO  │ *  7  8 * │ GND
    SWCLK ┌┘ *  9 10 * │ GND
        - └┐ * 11 12 * │ GND
      SWO  │ * 13 14 * │ GND
    RESET  │ * 15 16 * │ GND
J-Link RX  │ * 17 18 * │ GND
5V-Supply  │ * 19 20 * │ GND
           └───────────┘

PIC32 ICSP引脚排列(未测试)

           ┌───────────┐
    VTref  │ *  1  2 * │ NC
        -  │ *  3  4 * │ GND
        -  │ *  5  6 * │ GND
     PGED  │ *  7  8 * │ GND
     PGEC ┌┘ *  9 10 * │ GND
        - └┐ * 11 12 * │ GND
        -  │ * 13 14 * │ GND
    RESET  │ * 15 16 * │ GND
        -  │ * 17 18 * │ GND
5V-Supply  │ * 19 20 * │ GND
           └───────────┘

参考

Segger发布了关于USB协议的PDF文档:“J-Link USB协议参考手册”(文档RM08001-R2)。

archive.org版本是最新的。

依赖项

~2MB
~36K SLoC