Перейти к содержанию
    

ATSAML21 / JLink / openocd не могу запустить отладку

Портирую проект для ATSAML21E18B / emBitz под Eclipse / makefile / openocd. Имел ряд сложностей, которые более менее успешно преодолел. Сейчас не могу запустить отладку JLink / OpenOCD.  Коннект JLink c таргетом проходит успешно.

Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : J-Link ARM V8 compiled Nov 28 2014 13:44:46
Info : Hardware version: 8.00
Info : VTarget = 3.306 V
Info : clock speed 1000 kHz
Info : SWD DPIDR 0x0bc11477
Info : saml2x.cpu: hardware has 4 breakpoints, 2 watchpoints
Info : starting gdb server for saml2x.cpu on 3333
Info : Listening on port 3333 for gdb connections

Запуск отладки вызывает вот такие сообщения в консоль.

Info : accepting 'gdb' connection on tcp/3333
target halted due to debug-request, current mode: Thread 
xPSR: 0x61000000 pc: 0x00002c64 psp: 0x200006d0
Warn : Prefer GDB command "target extended-remote 3333" instead of "target remote 3333"
target halted due to debug-request, current mode: Thread 
xPSR: 0x61000000 pc: 0x00000114 msp: 0x20001688

Обновлял прошивку JLink до последней версии. OpenOCD так же ставил самую новую версию. Не помогло.

PS: Исходный проект Windows / emBitz и тот же самый JLink запускается и работает норм.

Изменено пользователем nanorobot

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так а в чем проблема-то? В логе OpenOCD (в обоих) ничего криминального не видно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну во первых в том, что не работает. Не стартует , не останавливается на main(). Во вторых в том что вторая и предпоследняя строки второго лога не вполне ясны, и как бы на что-то намекают. Непонятно на что. Нет лога заливки прошивки в чип - ну и самой заливки как таковой, и тд.
     А вообще проблема получила и другие грани. Попробовал запустить отладку с этим JLink на давно отлаженном дивайсе на STM32L052, результат - стартует и улетает куда то на адрес FFFFFFFF или как то похоже,  и после сброса не работает тоже. Запуск с STLink - все нормально запускается и работает. Кроме того на JLink  SWD DPIDR - (сигнатура чипа?) в обоих случаях (и для ATSAML21 и для STM32L052) равна 0x0bc11477. Я бы грешил на сам  JLink,  но

PS: Исходный проект Windows / emBitz и тот же самый JLink запускается и работает норм. 

Ранее с этим JLink работал несколько  лет назад, все это время использовал STLink. Но дефицит STM заставил присмотреться к альтернативным чипам.

Изменено пользователем nanorobot

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, вообще, Eclipse + OpenOCD - это почти конструктор, очень настраиваемая и приспособляемая вещь. При условии, конечно, что ядро поддерживается аппаратным адаптером и OpenOCD. Надо вам повнимательнее посмотреть на все установки Eclipse для этого проекта.

 

Почему, например, он у вас 2 раза останавливается (судя по логу)? И чему соответствуют адреса 0x00002c64, 0x00000114 ? Соответствующие вкладки Debug configuration можете показать?

 

Для проверки по частям (чтобы понять, кто виноват - Eclipse/GDB или уже OpenOCD не так работает) можно попробовать пройти начальную последовательность (от ресета) с прямым ручным управлением OpenOCD (не задействуя Eclipse).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

51 minutes ago, Raven said:

Для проверки по частям (чтобы понять, кто виноват - Eclipse/GDB или уже OpenOCD не так работает) можно попробовать пройти начальную последовательность (от ресета) с прямым ручным управлением OpenOCD (не задействуя Eclipse).

Спасибо. Что то начало получаться. Подключился:
 

JLinkGDBServer -if SWD -device ATSAML21E18
  

Удалось залить прошивку из Eclipse, убедился что прошивка работает. Видимо с OpenOCD что то не так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошо, что хоть путем замены GDB server удалось продвинуться. Но я бы еще с OpenOCD в командном режиме поработал бы. Есть ощущение, что работать должно, нужно только правильно приготовить.

 

Во всяком случае, опыт работы с OpenOCD пригодится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чтобы не плодить тем, добавлюсь здесь.

Плата NucleoF767ZI, пробую запустить opeтOCD

$ openocd -f stlink.cfg -f board/st_nucleo_f7.cfg
Open On-Chip Debugger 0.11.0
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
Warn : ignoring extra IDs in hla_vid_pid (maximum is 8 pairs)
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
srst_only separate srst_nogate srst_open_drain connect_deassert_srst

Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : clock speed 2000 kHz

И вываливается в консоль. 

Подключено две платы, может в этом дело? Хотя свободна одна, другая висит на GDB сервере.

$ st-info --probe
Found 1 stlink programmers
  version:    V2J43S28
  serial:     066EFF505277504867142926
  flash:      2097152 (pagesize: 2048)
  sram:       524288
  chipid:     0x451
  dev-type:   STM32F76x_F77x

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 hours ago, MrYuran said:

Подключено две платы, может в этом дело? Хотя свободна одна, другая висит на GDB сервере.

А если плату, висящую на GDB сервере, совсем исключить из системы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 05.06.2024 в 09:12, Raven сказал:

А если плату, висящую на GDB сервере, совсем исключить из системы?

Завтра попробую. Она далековато висит, километров 30

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А сегодня запустился.

~$ st-info --probe
Found 2 stlink programmers
1.
  version:    V2J45S30
  serial:     0671FF303550503043034527
  flash:      2097152 (pagesize: 2048)
  sram:       524288
  chipid:     0x451
  dev-type:   STM32F76x_F77x
2.
  version:    V2J45S30
  serial:     0669FF313937424757083810
  flash:      2097152 (pagesize: 2048)
  sram:       524288
  chipid:     0x451
  dev-type:   STM32F76x_F77x
$ openocd -f board/st_nucleo_f7.cfg
Open On-Chip Debugger 0.12.0+dev-01590-g437dde701 (2024-06-04-14:40)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
srst_only separate srst_nogate srst_open_drain connect_deassert_srst
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : clock speed 2000 kHz
Info : STLINK V2J45M30 (API v2) VID:PID 0483:374B
Info : Target voltage: 3.246781
Info : [stm32f7x.cpu] Cortex-M7 r1p0 processor detected
Info : [stm32f7x.cpu] target has 8 breakpoints, 4 watchpoints
Info : [stm32f7x.cpu] Examination succeed
Info : starting gdb server for stm32f7x.cpu on 3333
Info : Listening on port 3333 for gdb connections

Правда, непонятно, с какой платой

И все равно подключения снаружи не происходит

 

upd: на localhost цепляет. Наружу не раздает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно, соединение по TCP/IP с внешним хостом требует в OpenOCD каких-то дополнительных настроек или танцев с бубном. Я в таком варианте его не пользовал, подсказать не могу. {RTFM + Google} вам в помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

st-util тоже как-то криво работает. Сначала клиент подключается, потом скипает.

Сейчас запустил в качестве GDB сервера CubeIDE в режиме отладки. По экземпляру на плату.

Тупо, зато работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...