Как получить информацию о регистрации работы в GDB с OpenOCD

Я новичок в OpenOCD и GDB, так что будьте добры ко мне. Я запускаю свой OpenOCD на сервере в Screen1, который общается с системой. На экране 1 я жду, когда будет установлено соединение:

Информация: JTAG нажмите: некоторые abcd: процессор включен

В Screen2 я запускаю gdb, а затем (gdb) целевого удаленного локального хоста:2001 Screen2: принимаю соединение gdb с 2001 -> Это работает нормально, затем я получаю кучу сообщений об ошибках, таких как: Ошибка: запуск цели остановит ее первым. -> Почему я должен получить это. Все, что я сделал, это подключился. Screen1: теперь все, что я хочу сделать, это набрать info reg и получить значения регистров. Вопрос 1: Как вы надежно останавливаете систему? Какая команда? Если я продолжу делать c stop CTRl-C, то в большинстве случаев информация о регистре всегда равна нулю, но время от времени я получаю действительные значения. Что бы гарантированно остановить процессор и прочитать регистры.

1 ответ

У вас должно быть -c 'reset halt' в аргументе вашей команды openocd.

Или вы можете ввести reset halt либо из gdb, либо в командной строке openocd, если вы подключаетесь к openocd через telnet.

Из GDB

      (gdb) monitor reset halt

Из Telnet

Добавлять -c 'telnet_port 4444' вам команду openocd, затем с другого терминала запустите telnet localhost 4444.

      $ telnet localhost 4444
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Open On-Chip Debugger
> reset halt
Другие вопросы по тегам