|
openocd资料
安装openocd:
安装telnet:
openocd用法:
- openocd -f <接口配置文件> -f <目标芯片配置文件> -c <要执行的命令>
复制代码
- adapter_khz [khz]
- With an argument, change to the specified maximum jtag speed. For
- JTAG, 0 KHz signifies adaptive clocking. With or without argument,
- display current setting. (command valid any time)
- adapter_name
- Returns the name of the currently selected adapter (driver) (command
- valid any time)
- adapter_nsrst_assert_width [milliseconds]
- delay after asserting SRST in ms (command valid any time)
- adapter_nsrst_delay [milliseconds]
- delay after deasserting SRST in ms (command valid any time)
- add_help_text command_name helptext_string
- Add new command help text; Command can be multiple tokens. (command
- valid any time)
- add_script_search_dir <directory>
- dir to search for config files and scripts (command valid any time)
- add_usage_text command_name usage_string
- Add new command usage text; command can be multiple tokens. (command
- valid any time)
- arm
- ARM command group (command valid any time)
- arm core_state ['arm'|'thumb']
- display/change ARM core state
- arm disassemble address [count ['thumb']]
- disassemble instructions
- arm mcr cpnum op1 CRn CRm op2 value
- write coprocessor register
- arm mrc cpnum op1 CRn CRm op2
- read coprocessor register
- arm reg
- display ARM core registers
- arm semihosting ['enable'|'disable']
- activate support for semihosting operations
- arm semihosting_fileio ['enable'|'disable']
- activate support for semihosting fileio operations
- array2mem arrayname bitwidth address count
- convert a TCL array to memory locations and write the 8/16/32 bit
- values
- bindto [name]
- Specify address by name on which to listen for incoming TCP/IP
- connections (command valid any time)
- bp <address> [<asid>]<length> ['hw'|'hw_ctx']
- list or set hardware or software breakpoint
- command
- core command group (introspection) (command valid any time)
- command mode [command_name ...]
- Returns the command modes allowed by a command:'any', 'config', or
- 'exec'. If no command isspecified, returns the current command
- mode. Returns 'unknown' if an unknown command is given. Command
- can be multiple tokens. (command valid any time)
- command type command_name [...]
- Returns the type of built-in command:'native', 'simple', 'group',
- or 'unknown'. Command can be multiple tokens. (command valid any
- time)
- debug_level number
- Sets the verbosity level of debugging output. 0 shows errors only; 1
- adds warnings; 2 (default) adds other info; 3 adds debugging.
- (command valid any time)
- dump_image filename address size
- echo [-n] string
- Logs a message at "user" priority. Output message to stdout. Option
- "-n" suppresses trailing newline (command valid any time)
- exit
- exit telnet session
- fast_load
- loads active fast load image to current target - mainly for profiling
- purposes
- fast_load_image filename address ['bin'|'ihex'|'elf'|'s19'] [min_address [max_length]]
- Load image into server memory for later use by fast_load; primarily
- for profiling (command valid any time)
- find <file>
- print full path to file according to OpenOCD search rules (command
- valid any time)
- flash
- NOR flash command group (command valid any time)
- flash bank bank_id driver_name base_address size_bytes chip_width_bytes
- bus_width_bytes target [driver_options ...]
- Define a new bank with the given name, using the specified NOR
- flash driver. (configuration command)
- flash banks
- Display table with information about flash banks. (command valid
- any time)
- flash erase_address ['pad'] ['unlock'] address length
- Erase flash sectors starting at address and continuing for length
- bytes. If 'pad' is specified, data outside that range may also be
- erased: the start address may be decreased, and length increased,
- so that all of the first and last sectors are erased. If 'unlock'
- is specified, then the flash is unprotected before erasing.
- flash erase_check bank_id
- Check erase state of all blocks in a flash bank.
- flash erase_sector bank_id first_sector_num last_sector_num
- Erase a range of sectors in a flash bank.
- flash fillb address value n
- Fill n bytes with 8-bit value, starting at word address. (No
- autoerase.)
- flash fillh address value n
- Fill n halfwords with 16-bit value, starting at word address. (No
- autoerase.)
- flash fillw address value n
- Fill n words with 32-bit value, starting at word address. (No
- autoerase.)
- flash info bank_id ['sectors']
- Print information about a flash bank.
- flash init
- Initialize flash devices. (configuration command)
- flash list
- Returns a list of details about the flash banks. (command valid any
- time)
- flash padded_value bank_id value
- Set default flash padded value
- flash probe bank_id
- Identify a flash bank.
- flash protect bank_id first_block [last_block|'last'] ('on'|'off')
- Turn protection on or off for a range of protection blocks or
- sectors in a given flash bank. See 'flash info' output for a list
- of blocks.
- flash read_bank bank_id filename offset length
- Read binary data from flash bank to file, starting at specified
- byte offset from the beginning of the bank.
- flash verify_bank bank_id filename offset
- Read binary data from flash bank and file, starting at specified
- byte offset from the beginning of the bank. Compare the contents.
- flash write_bank bank_id filename offset
- Write binary data from file to flash bank, starting at specified
- byte offset from the beginning of the bank.
- flash write_image [erase] [unlock] filename [offset [file_type]]
- Write an image to flash. Optionally first unprotect and/or erase
- the region to be used. Allow optional offset from beginning of
- bank (defaults to zero)
- gdb_breakpoint_override ('hard'|'soft'|'disable')
- Display or specify type of breakpoint to be used by gdb 'break'
- commands. (command valid any time)
- gdb_flash_program ('enable'|'disable')
- enable or disable flash program (configuration command)
- gdb_memory_map ('enable'|'disable')
- enable or disable memory map (configuration command)
- gdb_port [port_num]
- Normally gdb listens to a TCP/IP port. Each subsequent GDB server
- listens for the next port number after the base port number
- specified. No arguments reports GDB port. "pipe" means listen to
- stdin output to stdout, an integer is base port number, "disabled"
- disables port. Any other string is are interpreted as named pipe to
- listen to. Output pipe is the same name as input pipe, but with 'o'
- appended. (command valid any time)
- gdb_report_data_abort ('enable'|'disable')
- enable or disable reporting data aborts (configuration command)
- gdb_save_tdesc
- Save the target description file
- gdb_sync
- next stepi will return immediately allowing GDB to fetch register
- state without affecting target state (command valid any time)
- gdb_target_description ('enable'|'disable')
- enable or disable target description (configuration command)
- halt [milliseconds]
- request target to halt, then wait up to the specifiednumber of
- milliseconds (default 5000) for it to complete
- help [command_name]
- Show full command help; command can be multiple tokens. (command
- valid any time)
- hla
- perform hl adapter actions (command valid any time)
- hla newtap basename tap_type '-irlen' count ['-expected_id' number]
- Create a new TAP instance named basename.tap_type, and appends it
- to the scan chain. (configuration command)
- hla_command hla_command <command>
- execute a custom adapter-specific command
- hla_device_desc description_string
- set the a device description of the adapter (configuration command)
- hla_layout layout_name
- set the layout of the adapter (configuration command)
- hla_serial serial_string
- set the serial number of the adapter (configuration command)
- hla_vid_pid (vid pid)*
- the vendor and product ID of the adapter (configuration command)
- init
- Initializes configured targets and servers. Changes command mode
- from CONFIG to EXEC. Unless 'noinit' is called, this command is
- called automatically at the end of startup. (command valid any time)
- interface driver_name
- Select a debug adapter interface (driver) (configuration command)
- interface_list
- List all built-in debug adapter interfaces (drivers) (command valid
- any time)
- interface_transports transport ...
- Declare transports the interface supports. (configuration command)
- itm
- itm command group (command valid any time)
- itm port <port> (0|1|on|off)
- Enable or disable ITM stimulus port (command valid any time)
- itm ports (0|1|on|off)
- Enable or disable all ITM stimulus ports (command valid any time)
- jsp_port [port_num]
- Specify port on which to listen for incoming JSP telnet connections.
- (command valid any time)
- jtag
- (command valid any time)
- jtag arp_init
- (command valid any time)
- jtag arp_init-reset
- (command valid any time)
- jtag cget
- jtag configure
- jtag init
- (command valid any time)
- jtag names
- (command valid any time)
- jtag tapdisable
- jtag tapenable
- jtag tapisenabled
- jtag_ntrst_delay
- (command valid any time)
- load_image filename address ['bin'|'ihex'|'elf'|'s19'] [min_address] [max_length]
- log_output file_name
- redirect logging to a file (default: stderr) (command valid any time)
- mdb ['phys'] address [count]
- display memory bytes
- mdh ['phys'] address [count]
- display memory half-words
- mdw ['phys'] address [count]
- display memory words
- measure_clk
- Runs a test to measure the JTAG clk. Useful with RCLK / RTCK.
- (command valid any time)
- mem2array arrayname bitwidth address count
- read 8/16/32 bit memory and return as a TCL array for script
- processing
- mflash
- mflash command group (command valid any time)
- mflash bank soc_type base_addr pin_id target
- configure a mflash device bank (configuration command)
- mflash init
- initialize mflash devices (configuration command)
- mmw address setbits clearbits
- Modify word in memory. new_val = (old_val & ~clearbits) | setbits;
- (command valid any time)
- mrb address
- Returns value of byte in memory. (command valid any time)
- mrw address
- Returns value of word in memory. (command valid any time)
- ms
- Returns ever increasing milliseconds. Used to calculuate differences
- in time. (command valid any time)
- mwb ['phys'] address value [count]
- write memory byte
- mwh ['phys'] address value [count]
- write memory half-word
- mww ['phys'] address value [count]
- write memory word
- nand
- NAND flash command group (command valid any time)
- nand device bank_id driver target [driver_options ...]
- defines a new NAND bank (configuration command)
- nand drivers
- lists available NAND drivers (command valid any time)
- nand init
- initialize NAND devices (configuration command)
- noinit
- Prevent 'init' from being called at startup. (configuration command)
- pld
- programmable logic device commands (command valid any time)
- pld device driver_name [driver_args ... ]
- configure a PLD device (configuration command)
- pld init
- initialize PLD devices (configuration command)
- poll ['on'|'off']
- poll target state; or reconfigure background polling
- poll_period
- set the servers polling period (command valid any time)
- power_restore
- Overridable procedure run when power restore is detected. Runs 'reset
- init' by default. (command valid any time)
- profile seconds filename [start end]
- profiling samples the CPU PC
- program <filename> [address] [verify] [reset] [exit]
- write an image to flash, address is only required for binary images.
- verify, reset, exit are optional (command valid any time)
- ps
- list all tasks
- rbp address
- remove breakpoint
- reg [(register_number|register_name) [(value|'force')]]
- display (reread from target with "force") or set a register; with no
- arguments, displays all registers and their values
- reset [run|halt|init]
- Reset all targets into the specified mode.Default reset mode is run,
- if not given.
- reset_config [none|trst_only|srst_only|trst_and_srst]
- [srst_pulls_trst|trst_pulls_srst|combined|separate]
- [srst_gates_jtag|srst_nogate] [trst_push_pull|trst_open_drain]
- [srst_push_pull|srst_open_drain]
- [connect_deassert_srst|connect_assert_srst]
- configure adapter reset behavior (command valid any time)
- reset_nag ['enable'|'disable']
- Nag after each reset about options that could have been enabled to
- improve performance. (command valid any time)
- resume [address]
- resume target execution from current PC or address
- rwp address
- remove watchpoint
- script <file>
- filename of OpenOCD script (tcl) to run (command valid any time)
- shutdown
- shut the server down (command valid any time)
- sleep milliseconds ['busy']
- Sleep for specified number of milliseconds. "busy" will busy wait
- instead (avoid this). (command valid any time)
- soft_reset_halt
- halt the target and do a soft reset
- srst_deasserted
- Overridable procedure run when srst deassert is detected. Runs 'reset
- init' by default. (command valid any time)
- step [address]
- step one instruction from current PC or address
- stm32f1x
- stm32f1x flash command group (command valid any time)
- stm32f1x lock bank_id
- Lock entire flash device.
- stm32f1x mass_erase bank_id
- Erase entire flash device.
- stm32f1x options_read bank_id
- Read and display device option byte.
- stm32f1x options_write bank_id ('SWWDG'|'HWWDG') ('RSTSTNDBY'|'NORSTSTNDBY')
- ('RSTSTOP'|'NORSTSTOP')
- Replace bits in device option byte.
- stm32f1x unlock bank_id
- Unlock entire protected flash device.
- stm32f1x.cpu
- target command group (command valid any time)
- stm32f1x.cpu arm
- ARM command group (command valid any time)
- stm32f1x.cpu arm core_state ['arm'|'thumb']
- display/change ARM core state
- stm32f1x.cpu arm disassemble address [count ['thumb']]
- disassemble instructions
- stm32f1x.cpu arm mcr cpnum op1 CRn CRm op2 value
- write coprocessor register
- stm32f1x.cpu arm mrc cpnum op1 CRn CRm op2
- read coprocessor register
- stm32f1x.cpu arm reg
- display ARM core registers
- stm32f1x.cpu arm semihosting ['enable'|'disable']
- activate support for semihosting operations
- stm32f1x.cpu arm semihosting_fileio ['enable'|'disable']
- activate support for semihosting fileio operations
- stm32f1x.cpu arp_examine arp_examine ['allow-defer']
- used internally for reset processing
- stm32f1x.cpu arp_halt
- used internally for reset processing
- stm32f1x.cpu arp_halt_gdb
- used internally for reset processing to halt GDB
- stm32f1x.cpu arp_poll
- used internally for reset processing
- stm32f1x.cpu arp_reset
- used internally for reset processing
- stm32f1x.cpu arp_waitstate
- used internally for reset processing
- stm32f1x.cpu array2mem arrayname bitwidth address count
- Writes Tcl array of 8/16/32 bit numbers to target memory
- stm32f1x.cpu cget target_attribute
- returns the specified target attribute (command valid any time)
- stm32f1x.cpu configure [target_attribute ...]
- configure a new target for use (configuration command)
- stm32f1x.cpu curstate
- displays the current state of this target
- stm32f1x.cpu eventlist
- displays a table of events defined for this target
- stm32f1x.cpu examine_deferred examine_deferred
- used internally for reset processing
- stm32f1x.cpu invoke-event event_name
- invoke handler for specified event
- stm32f1x.cpu itm
- itm command group (command valid any time)
- stm32f1x.cpu itm port <port> (0|1|on|off)
- Enable or disable ITM stimulus port (command valid any time)
- stm32f1x.cpu itm ports (0|1|on|off)
- Enable or disable all ITM stimulus ports (command valid any time)
- stm32f1x.cpu mdb address [count]
- Display target memory as 8-bit bytes
- stm32f1x.cpu mdh address [count]
- Display target memory as 16-bit half-words
- stm32f1x.cpu mdw address [count]
- Display target memory as 32-bit words
- stm32f1x.cpu mem2array arrayname bitwidth address count
- Loads Tcl array of 8/16/32 bit numbers from target memory
- stm32f1x.cpu mwb address data [count]
- Write byte(s) to target memory
- stm32f1x.cpu mwh address data [count]
- Write 16-bit half-word(s) to target memory
- stm32f1x.cpu mww address data [count]
- Write 32-bit word(s) to target memory
- stm32f1x.cpu tpiu
- tpiu command group (command valid any time)
- stm32f1x.cpu tpiu config (disable | ((external | internal <filename>) (sync <port width> |
- ((manchester | uart) <formatter enable>)) <TRACECLKIN freq>
- [<trace freq>]))
- Configure TPIU features (command valid any time)
- stm32f1x.cpu was_examined was_examined
- used internally for reset processing
- target
- configure target (configuration command)
- target create name type '-chain-position' name [options ...]
- Creates and selects a new target (command valid any time)
- target current
- Returns the currently selected target (command valid any time)
- target init
- initialize targets (configuration command)
- target names
- Returns the names of all targets as a list of strings (command
- valid any time)
- target smp targetname1 targetname2 ...
- gather several target in a smp list (command valid any time)
- target types
- Returns the available target types as a list of strings (command
- valid any time)
- target_request
- target request command group (command valid any time)
- target_request debugmsgs ['enable'|'charmsg'|'disable']
- display and/or modify reception of debug messages from target
- targets [target]
- change current default target (one parameter) or prints table of all
- targets (no parameters) (command valid any time)
- tcl_notifications [on|off]
- Target Notification output
- tcl_port [port_num]
- Specify port on which to listen for incoming Tcl syntax. Read help
- on 'gdb_port'. (command valid any time)
- tcl_trace [on|off]
- Target trace output
- telnet_port [port_num]
- Specify port on which to listen for incoming telnet connections.
- Read help on 'gdb_port'. (command valid any time)
- test_image filename [offset [type]]
- test_mem_access size
- Test the target's memory access functions
- tpiu
- tpiu command group (command valid any time)
- tpiu config (disable | ((external | internal <filename>) (sync <port width> |
- ((manchester | uart) <formatter enable>)) <TRACECLKIN freq>
- [<trace freq>]))
- Configure TPIU features (command valid any time)
- trace
- trace command group
- trace history ['clear'|size]
- display trace history, clear history or set size
- trace point ['clear'|address]
- display trace points, clear list of trace points, or add new
- tracepoint at address
- transport
- Transport command group (command valid any time)
- transport init
- Initialize this session's transport (command valid any time)
- transport list
- list all built-in transports (command valid any time)
- transport select [transport_name]
- Select this session's transport (command valid any time)
- usage [command_name]
- Show basic command usage; command can be multiple tokens. (command
- valid any time)
- verify_image filename [offset [type]]
- verify_image_checksum filename [offset [type]]
- version
- show program version (command valid any time)
- virt2phys virtual_address
- translate a virtual address into a physical address (command valid
- any time)
- wait_halt [milliseconds]
- wait up to the specified number of milliseconds (default 5000) for a
- previously requested halt
- wp [address length [('r'|'w'|'a') value [mask]]]
- list (no params) or create watchpoints
复制代码
- Open On-Chip Debugger 0.10.0
- Licensed under GNU GPL v2
- For bug reports, read
- http://openocd.org/doc/doxygen/bugs.html
- Warn : Interface already configured, ignoring
- Error: already specified hl_layout stlink
- Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
- adapter speed: 1000 kHz
- adapter_nsrst_delay: 100
- none separate
- Info : Unable to match requested speed 1000 kHz, using 950 kHz
- Info : Unable to match requested speed 1000 kHz, using 950 kHz
- Info : clock speed 950 kHz
- Info : STLINK v2 JTAG v37 API v2 SWIM v7 VID 0x0483 PID 0x3748
- Info : using stlink api v2
- Info : Target voltage: 3.177531
- Warn : UNEXPECTED idcode: 0x2ba01477
- Error: expected 1 of 1: 0x1ba01477
- in procedure 'init'
- in procedure 'ocd_bouncer'
复制代码
报错怎么去测试?
terminal openocd连接stm32
查看cmsis-dap端口:- ioreg -p IOUSB -l -b | grep -E "@|PortNum|USB Serial Number"
复制代码
|
|