OpenOCD应用之J-Link

本文详细介绍了如何使用libusb工具及openocd为mini2440开发板配置J-Link接口的过程,包括安装必要的libusb工具、编译openocd并启用J-Link支持等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

按照“mini2440与J-Link 的接口连线”做好jlink到mini2440的JTAG线。

首先,很重要的一步是安装libusb工具。不安装,编译openocd 时会提示找不到usb.h文件,该文件即为libusb工具的头文件。该工具可在sourceforge上找到。


#cd libusb-0.1.12

#./configure

#make

#make install

这样,在该工具就被安装到默认路径/usr/local/bin目录下,然后把/usr/local/include目录下的usb.h和usbpp.h拷贝到/usr/include目录下,这样为后面编译openocd添加jlink支持时提供头文件

重新编译openocd。

#./configure --enable-maintainer-mode --enable-parport --disable-parport-ppdev --enable-jlink

#make  &&  make install

修改为interface jlink    #定义接口类型为jlink

屏蔽掉下面两行。

#parport_cable chameleon    #定义接口JTAG为chameleon

#parport_port 0xec00          #定义接口地址为0xec00,这个数据可以在计算机的BIOS中查找到

若设置gdb_breakpoint_override  soft,则可以在程序中设置无数个软件断点。

若设置gdb_breakpoint_override  hard,则仅可以在程序中设置2个硬件断点。

上电后即可。

 

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2011-05/35967.htm

### ST-Link 对 RTT 功能的支持分析 ST-Link 是由意法半导体(STMicroelectronics)开发的一种调试接口工具,主要用于 STM32 和其他基于 ARM Cortex-M 架构的微控制器。然而,RTT(Real-Time Transfer)功能是由 SEGGER 提供的一项技术,最初设计用于其 J-Link 调试器。 #### 关于 RTT 技术 RTT 是一种允许在不中断目标设备运行的情况下实现实时数据交换的技术[^1]。它通过特定的内存区域实现主机和嵌入式目标之间的通信,从而提供了一种高效的日志记录和其他实时数据传输方式。 #### ST-Link 是否支持 RTT? 截至目前,官方文档并未表明 ST-Link 原生支持 RTT 功能。ST-Link 主要专注于基本的调试功能(如断点设置、单步执行等),而缺乏像 J-Link 那样的高级特性支持。如果开发者希望在其项目中使用 RTT,则可能需要借助第三方解决方案或额外的软件层来桥接此功能。 尽管如此,在某些情况下可以通过以下方法间接实现类似的功能: 1. **自定义实现**: 开发者可以在应用程序内部创建环形缓冲区,并利用 UART 或 USB 接口手动发送这些数据至 PC 端模拟 RTT 行为。 2. **OpenOCD 支持**: 如果正在使用 OpenOCD 进行调试,可以尝试配置脚本以适配简单的实时打印需求;不过这仍然不是真正的 RTT 实现[^4]。 对于那些依赖 RTT 来简化开发流程的应用场景来说,选择具备原生支持能力的产品会更加便利高效——比如前面提到过的 J-Link 设备家族成员之一即可满足此类特殊用途的需求。 ```python # Example Python Code to Simulate Basic Logging Without Native RTT Support import serial def send_log_via_uart(message): ser = serial.Serial('COM3', 9600) # Replace COM port as necessary. try: ser.write((message + '\n').encode()) finally: ser.close() if __name__ == "__main__": message_to_send = "Test Log Message" send_log_via_uart(message_to_send) ``` 上述代码片段展示了一个简单的方法,即当硬件平台本身不具备内置 RTT 功能时如何构建基础的日志机制替代方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值