用户工具

站点工具


linux:ubuntu:openocd

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
linux:ubuntu:openocd [2025/07/14 09:00] user01linux:ubuntu:openocd [2025/07/14 16:47] (当前版本) – [1. openocd使用] user01
行 2: 行 2:
  
  
-openocd使用+====== - feature ====== 
 + 
 +  * 目前在FPGA上已经测出来,已能支持32个tap, 
 +  * autotap 推定可以到16个,再多的话,需要把工具自己推出来的写成定义tap 
 + 
 +====== - openocd使用 ====== 
  
 <code> <code>
 jtag_rest 1 0               -- 复位,tck和TMS组合而成,如果有trstn的话,则产生trstn jtag_rest 1 0               -- 复位,tck和TMS组合而成,如果有trstn的话,则产生trstn
-irscan zynq.dap 0x5             -- 往tap寄存器写IR指令为0x5,   TAP在target.cfg文件中进行定义(jtag newtap)+irscan zynq.dap 0x5         -- 往tap寄存器写IR指令为0x5,   TAP在target.cfg文件中进行定义(jtag newtap)
 drscan zynq.dap 16 0x4321   -- 向指定TAP输入DR数据,长度为16,数据为0x4321 drscan zynq.dap 16 0x4321   -- 向指定TAP输入DR数据,长度为16,数据为0x4321
 </code> </code>
  
 +  * 注意,一定要先指定TAP IR, 然后才可以向 DR进行输入数据,不然openocd会报错退出。
 +  * openocd使用tcl语法进行配置,可以使用telnet进行连接
  
---- 注意,一定要先指定TAP IR, 然后才可以向 DR进行输入数据,不然openocd会报错退出。 +====== config file ====== 
---- openocd使用tcl语法进行配置,可以使用telnet进行连接+ 
 + 
 +===== ft2232h.cfg ===== 
 +<file tcl ft2232h.cfg> 
 +##################################### 
 +
 +# Layout:  FTDI FT2232H example 
 +#   ADBUS0 TCK 
 +#   ADBUS1 TDI 
 +#   ADBUS2 TDO (input) 
 +#   ADBUS3 TMS 
 +#   ADBUS4 nTRST 
 +#   ADBUS5 nSRST 
 +#   ADBUS6 OE (active high) for TRST, TDI, TMS, TCK 
 +#   ADBUS7 DBGREQ_L
  
  
-ft2232h.cfg 
-<code> 
 interface ftdi interface ftdi
 ftdi_vid_pid 0x0403 0x6010 ftdi_vid_pid 0x0403 0x6010
 ftdi_channel 0 ftdi_channel 0
-ftdi_layout_init 0x08 0x0b 
-</code> 
  
-target.cfg +###### interface config 0 
-<code>+# just TCK TDI TDO TMS 
 +# ftdi_layout_init 0x0008 0x000b 
 + 
 +###### interface config 1 
 +# ADBUS6 no used 
 +ftdi_layout_init 0x0098 0x00bb; # initial data, port direction (1-out, 0-in) 
 +ftdi_layout_signal nTRST    -data 0x0010 -input 0x0010 
 +ftdi_layout_signal nSRST    -data 0x0020 -input 0x0020 
 +ftdi_layout_signal DBGREQ_L -data 0x0080 -input 0x0080 
 + 
 + 
 +# -data   can drive to  1 & 0 
 +# -oe     can only drive to 0 / high-z, can't drive 1 
 +# -input  can use cmd ftdi_get_signal to get signal value 
 + 
 +</file> 
 + 
 +===== - target.cfg ===== 
 + 
 +<file tcl target.cfg>
 set _CHIPNAME zynq set _CHIPNAME zynq
-jtag newtap $_CHIPNAME dap -irlen 8 -ircapture 0x01 -irmask 0x03+jtag newtap $_CHIPNAME  dap -irlen 8 -ircapture 0x01 -irmask 0x03
  
 adapter_khz 5000 adapter_khz 5000
-</code> 
  
-启动openocd服务:  sudo openocd  -f ft2232h.cfg  -f target.cfg+# gdb_port    3333 
 +# tcl_port    6666 
 +# telnet_port 4444 
 + 
 +</file> 
 + 
 +====== - 启动服务 ====== 
 + 
 +<code> 
 +sudo openocd  -f ft2232h.cfg  -f target.cfg 
 +</code>
  
  
linux/ubuntu/openocd.1752454859.txt.gz · 最后更改: 2025/07/14 09:00 由 user01

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki