КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Модераторы: ea, dav, bkolbov, Alis, pip, _sva_
КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Здравствуйте! Через VSCode(PlatformIO) снес загрузчик по инструкции в 2 шага, с сообщениями SUCCESS на плате КДФЛ.441461.037. Обновил прошивку STLink до последней(V2J48S7). При попытке connect через CubeProg 2.23.0 и программатором STLink/V2(два варианта обрубок NUcleo и оригинальный STLink/V2-STM8/STM32) выдается ошибка идентификации ядра на разных частотах(перебрал все возможные) SWD(under reset/hardwarereset, Target voltage 3.24 V). Помогите разобраться пожалуйста.
-
RabidRabbit
- Сообщения: 213
- Зарегистрирован: 10 июн 2025, 12:11
- Предприятие: HomeWork
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Попробуйте подключиться с помощью openocd, без кубиков и прочего.
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Не могли бы подробнее объяснить. Нужно переходить на Eclipse ? Или openocd можно прикрутить к IAR, и будет ли дебаг работать или только прошивка? Спасибо!
Последний раз редактировалось Роман Б 23 июл 2026, 09:33, всего редактировалось 1 раз.
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Раньше не работал с OpenOCD, вроде все настроил подключается: но прошиваться отказывается, нейросетка говорит FPU для версии которая в репозитории лежит не дружит с ide IAR, https://github.com/DCVostok/openocd-k1921vk/releases в SDK NIIET еще более старая версия, приведу выдержку из общения с сеткой:
Судя по вашим логам, OpenOCD и IAR не могут правильно договориться о том, как выглядит карта регистров вашего процессора. Это две связанные ошибки, которые возникают из-за несовместимости вашей текущей версии OpenOCD с IAR.
Давайте разберем их по порядку.
1. Ошибка: Error: gdb requested a non-existing register (reg_num=25)
Это ключевая ошибка. IAR EWARM, подключаясь к GDB-серверу (которым в вашем случае является OpenOCD), ожидает, что регистр xPSR (Program Status Register) будет находиться в списке регистров под номером 25. Ваша версия OpenOCD (0.12.0+dev-00520) этого регистра по указанному адресу не предоставляет, из-за чего GDB-сервер "паникует" и обрывает соединение.
Решение: Эта проблема уже исправлена в более новых версиях OpenOCD. В патче от 30 января 2025 года был добавлен специальный алиас для регистра xPSR под индексом 25, чтобы обеспечить совместимость с IAR. Вам необходимо обновить OpenOCD до версии, которая включает это исправление.
Ткните пожалуйста может что-то свежее есть для К1946ВК035 ?
Судя по вашим логам, OpenOCD и IAR не могут правильно договориться о том, как выглядит карта регистров вашего процессора. Это две связанные ошибки, которые возникают из-за несовместимости вашей текущей версии OpenOCD с IAR.
Давайте разберем их по порядку.
1. Ошибка: Error: gdb requested a non-existing register (reg_num=25)
Это ключевая ошибка. IAR EWARM, подключаясь к GDB-серверу (которым в вашем случае является OpenOCD), ожидает, что регистр xPSR (Program Status Register) будет находиться в списке регистров под номером 25. Ваша версия OpenOCD (0.12.0+dev-00520) этого регистра по указанному адресу не предоставляет, из-за чего GDB-сервер "паникует" и обрывает соединение.
Решение: Эта проблема уже исправлена в более новых версиях OpenOCD. В патче от 30 января 2025 года был добавлен специальный алиас для регистра xPSR под индексом 25, чтобы обеспечить совместимость с IAR. Вам необходимо обновить OpenOCD до версии, которая включает это исправление.
Ткните пожалуйста может что-то свежее есть для К1946ВК035 ?
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Ушел с IAR на KEIL видит проц и прошивает при попытке отладки выдает много сообщений типа Cannot access Memory (@ 0xe7ff9002, Read, Acc Size: 2 Byte) (много) . И если есть у кого то заготовка, мигания диодиком на отладочной плате?
-
RabidRabbit
- Сообщения: 213
- Зарегистрирован: 10 июн 2025, 12:11
- Предприятие: HomeWork
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
В архиве собрано под светодиод на GPIOB(5).
Сборка (отладочный вариант, и надо из строки выкинуть буквы Z, без них форум заменяет на русские "арм" и "кортекс"):
Сборка (отладочный вариант, и надо из строки выкинуть буквы Z, без них форум заменяет на русские "арм" и "кортекс"):
Заливка (подставить путь для своего openocd):Zarm-none-eabi-gcc migalka.c -O0 -g -mthumb -fno-builtin -mcpu=Zcortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wall -Wextra -ffunction-sections -fdata-sections -Wl,-T./K1921VK035_2.ld,-gc-sections -specs=nosys.specs -ffreestanding -lnosys -nostartfiles -I./ -o out.elf && Zarm-none-eabi-objcopy -O binary out.elf out.bin
~/tools/openocd-vk/bin/openocd -f program.cfg
- Вложения
-
- vk035_migalka.7z
- (86.79 КБ) 14 скачиваний
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Спасибо Вам добрый человек! Попробую. Но уже похоже разобрался сам проблема была в компиляторе KEIL 6й версии, установил IDE 5.36+5й компилятор, запустил поменял выводы на отладке PB5 - это зеленый диод, запустил заработало, сейчас еще PLIB прикрутить попробую. Желтая уточка работает(кто в теме поймет), всегда приятно с хорошим человеком пообщаться.
Re: КДФЛ.441461.037 - в режиме SWD -> cannot identify the core
Добрый день.Роман Б писал(а): ↑22 июл 2026, 10:56 Здравствуйте! Через VSCode(PlatformIO) снес загрузчик по инструкции в 2 шага, с сообщениями SUCCESS на плате КДФЛ.441461.037. Обновил прошивку STLink до последней(V2J48S7). При попытке connect через CubeProg 2.23.0 и программатором STLink/V2(два варианта обрубок NUcleo и оригинальный STLink/V2-STM8/STM32) выдается ошибка идентификации ядра на разных частотах(перебрал все возможные) SWD(under reset/hardwarereset, Target voltage 3.24 V). Помогите разобраться пожалуйста.
1) Плагин VSCode(PlatformIO) разрбатывала команда ДЦ Восток.
2) OpenOCD можно запускать с помощью скриптов из репозитория: https://gitflic.ru/project/niiet/k1921v ... nch=master
3) Можете использовать IDE Keil. При работе с примерами из нашего SDK необходимо учитывать, что примеры собраны для компилятора версии 5.
