Разбирають со связкой amontecJTAGkey + openocd. LPC24xx стоит на плате от EmbeddedArtists.
OpenOCD скачал, откомпилировал, поставил - все ок. Пытають отлаживать прогу. Вроде все работает, пока не подам
команду сброса: "
monitor reset". Проц сбрасывается как положено но не останавливается. При последующей
потытке выполнить например "
stepi", gdb ругается: "putpkt: write failed: Broken pipe."
А openocd сообщает:
Warning: arm7_9_common.c:265 arm7_9_add_breakpoint(): target not halted
Info: breakpoints.c:80 breakpoint_add(): can't add breakpoint while target is running
Error: gdb_server.c:1063 gdb_bp_wp_packet_error(): gdb tried to set a breakpoint but we're not halted, dropping connection
Info: server.c:360 server_loop(): dropped 'gdb' connection
привожу конфигурационный файл openocd:
Код
#daemon configuration
telnet_port 4444
gdb_port 3333
#interface
interface ft2232
ft2232_device_desc "Amontec JTAGkey A"
ft2232_layout jtagkey
ft2232_vid_pid 0x0403 0xcff8
jtag_speed 1
#use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst
#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 4 0x1 0xf 0xe
#target configuration
daemon_startup reset
#daemon_startup attach
#target <type> <startup mode>
#target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
#target arm7tdmi little reset_run 0 arm7tdmi-s_r4
target arm7tdmi little reset_halt 0 arm7tdmi-s_r4
working_area 0 0x40000000 0x40000 nobackup
run_and_halt_time 0 30
#flash configuration
flash bank lpc2000 0x0 0x7d000 0 0 lpc2000_v2 0 12000 calc_checksum