OpenOCD 开源的JTAG上位机程序开源项目

我要开发同款
匿名用户2011年05月14日
42阅读
所属分类、其他开源、硬件驱动/工具
授权协议未知

作品详情

OpenOCD是一个开源的JTAG上位机程序,目前支持多种芯片,可以简单查看src/target/target.c中的target_types的定义就可以了解支持哪些处理器了:target_type_t*target_types[]={ &arm7tdmi_target, &arm9tdmi_target, &arm920t_target, &arm720t_target, &arm966e_target, &arm926ejs_target, &feroceon_target, &xscale_target, &cortexm3_target, &arm11_target, &mips_m4k_target, NULL,};并且支持的芯片还在不断增加中。支持的编程工具,主要是并口的JTAG工具和基于FT2232的JTAG工具。当然,由于源代码都是公开的,并且可以自己编译,所以增加自己定义的工具的驱动也是相当容易的。【编译安装】自己编译安装OpenOCD可以参考DIYVersaloon中的DIYOpenOCD部分。一定要注意doc/openocd.pdf文档(需要编译生成),里面有各个配置和命令的详细说明。【配置】OpenOCD需要针对不同的JTAG工具和不同的目标芯片,配置一个配置文档。一般而言,配置文档分为4个部分1.分别是定义各个接口的Port(比如telnet_port,gdb_port,tcl_port)2.JTAG工具的定义3.目标的定义4.脚本的定义接口Port的定义一般如下(非特殊情况,无需修改,定义了一些端口号)telnet_port4444gdb_port3333tcl_port6666JTAG工具的定义,一般在工具的主页里会提供,而且针对不同的目前芯片,这个定义不需要修改。目前芯片的定义,是用来告诉OpenOCD,你的JTAG链是如何连接的(以什么顺序,链接了那些目标芯片)。OpenOCD支持的芯片的定义,基本在src/target/target目录中都可以找到对应的配置文件。脚本的定义,对于最新版本的OpenOCD尤为重要(最新的OpenOCD去掉了一些配置,而使用脚本的方式来实现)。脚本主要实现了如何操作目标芯片,不同的目标芯片的操作方式会有区别。OpenOCD的配置基本可以使用现成的一些配置,一般在使用的JTAG工具的主页上可以找到。【使用】OpenOCD的启动可以直接调用openocd.exe程序,改程序会自动寻找openocd.cfg默认配置。当然,可以使用-f参数来指定使用的配置文件,比如:openocd-fopenocd_stm32.cfg如果配合Makefile来实现编译完成后自动下载固件的功能的话,可以使用OpenOCD配置文件的脚本配置部分,以脚本的方式来实现自动的固件下载。如果需要使用GDB或者手动操作目标设备的话,在配置文件的脚本部分中,只需要初始化目标芯片的脚本即可。然后可以通过telnet或者gdb或者tcl来连接上OpenOCD。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论