К1921ВГ1Т плата 050 Rev1.1 Не могу прошить загрузчик через jtag.

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

Ответить
Yuriy
Сообщения: 3
Зарегистрирован: 17 июн 2026, 11:24
Предприятие: ООО ОКБ Авиаавтоматика

К1921ВГ1Т плата 050 Rev1.1 Не могу прошить загрузчик через jtag.

Сообщение Yuriy »

Добрый день.

Не могу зашить загрузчик в К1921ВГ1Т на плата КДФЛ.441461.050 Rev1.1
Во время прошивки: Джампер SRV-ON установлен. Джампер nRST-ON снят, Джампер B2 - BT_EN установлен.

OpenOCD использовал из патча SDK. https://gitflic.ru/project/niiet/openoc ... 7bc98f72f8

Bin-файл бутлоадера из недавнего обновления https://gitflic.ru/project/niiet/k1921v ... nch=master


Запустил openocd,
Z:\sc-dt_Patch_Niiet_Win32\tools\bin>openocd.exe -s Z:\k1921vg1t_sdk\tools\openocd\scripts -f Z:\sc-dt_Patch_Niiet_Win32\tools\share\openocd\openocd-snippets\k1921vg1t\connect_jlink_jtag.cfg
Open On-Chip Debugger -00247-g90632ca40-dirty (2025-08-01-14:40)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : Hardware thread awareness created
Info : Hardware thread awareness created
Info : J-Link V10 compiled Nov 8 2019 16:40:12
Info : Hardware version: 10.10
Info : VTarget = 3.328 V
Info : clock speed 50 kHz
Info : JTAG tap: K1921VG1T.cpu1 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : JTAG tap: K1921VG1T.cpu0 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : datacount=2 progbufsize=6
Info : Core 0 could not be made part of halt group 1.
Info : Examined RISC-V core; found 1 harts
Info : hart 0: XLEN=32, misa=0x4014912d
Info : datacount=2 progbufsize=6
Info : Core 1 could not be made part of halt group 1.
Info : Examined RISC-V core; found 1 harts
Info : hart 1: XLEN=32, misa=0x4014912d
Info : starting gdb server for K1921VG1T.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
DEPRECATED! use 'adapter speed' not 'adapter_khz'
Info : JTAG tap: K1921VG1T.cpu1 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : JTAG tap: K1921VG1T.cpu0 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : Hart 1 unexpectedly reset!
Info : k1921vg1t detected
flash 'k1921vg1t' found at 0x00000000
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : accepting 'telnet' connection on tcp/4444
Зашел в управление через телнет, успешно стер чип, и дальше не могу понять, как записать загрузчик. Процесс записи проходит, на верификации - падает.
> program Z:\\k1921vg1t_bootloader.bin verify
JTAG tap: K1921VG1T.cpu1 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
JTAG tap: K1921VG1T.cpu0 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Hart 1 unexpectedly reset!
** Programming Started **
Erasing sectors from 0 to 3
Start block write
buffer_size 8192, count 512
thisrun_count 512, target_address 0x0
** Programming Finished **
** Verify Started **
checksum mismatch - attempting binary compare
ERROR: embedded:startup.tcl:1510: Error: ** Verify Failed **
in procedure 'program'
in procedure 'program_error' called at file "embedded:startup.tcl", line 1571
at file "embedded:startup.tcl", line 1510

Пытался вступить в связь с загрузчиком - нет ответа. Джампер SRV-ON снят. Джампер nRST-ON установлен, Джампер B2 - BT_EN установлен.
k1921vx_flasher_new_gui.exe - после попытки второго варианта падает без дополнительных сообщений.
k1921vkx_flasher.exe - не падает, пишет [ERR]: Неизвестный ответ от устройства

Вероятнее всего - загрузчик не прошит.


Поставил чистую windows 10, поставил драйвер zadig-2.9, уменьшал скорость jtag, пробовал J-Link адаптер 9_plus и 10_plus. Картина не меняется.

Питания на плате есть: 5В, 3.3В, 1.1В - все в норме. Измерял мультиметром. Плата питается от штатного внешнего источника питания.

J-Link во время записи не пропадает из диспетчера задач, так что предполагаю, что непропай разъема USB - не мой случай.

USB - UART в системе видится. Если стоят джампера, то можно из терминала помигать BOOT_LED и светодиодом RESET, так что вроде этот участок тоже в порядке. Пока не стер плату - через этот порт шел текст о ходе самоконтроля памяти.

Прошу совета.
durimar_13
Сообщения: 20
Зарегистрирован: 26 фев 2025, 13:06
Предприятие: Radioamateur
Откуда: Свердловская обл.

Re: К1921ВГ1Т плата 050 Rev1.1 Не могу прошить загрузчик через jtag.

Сообщение durimar_13 »

Здравствуйте!
Темой тоже интересуюсь. Но я "никакой" программист.
В репозитории проекта есть файлы *.md.
В файле README_VGxT.md, в частности,написано:
```bash
......

# -- Загрузка в микроконтроллер
# -- Вместе со сборкой
cd firmware/k1921vgxt/source/bin
# -- Сервер openocd должен быть активен
make load

```
* Готовые .elf файлы сборки можно найти в firmware/k1921vgxt/releases
Подключаем ```RX``` и ```TX```
* Подтягиваем ```BOOTEN``` к земле
* Сбрасываем микроконтроллер
* Подключаемся через ПО
* Ждём пока появится сообщение о том, что устройство подключено
* Снимаем подтяжку с ```BOOTEN```
* Появится сообщение о том, что устройство готово
* Выполняем дальнейшие операции

Буду рад, если чем помог. ;)
С уважением, Виктор.
Yuriy
Сообщения: 3
Зарегистрирован: 17 июн 2026, 11:24
Предприятие: ООО ОКБ Авиаавтоматика

Re: К1921ВГ1Т плата 050 Rev1.1 Не могу прошить загрузчик через jtag.

Сообщение Yuriy »

Добрый день, уважаемый Виктор.
Благодарю за совет.

Пробовал Вашу и другие команды openOCD - вроде прошивается, но не верифицирует. По итогам - не работает.
Собрал программатор на FT4232 вместо j-link - подключиться смог, вроде прошил, но опять не верифицирует. Замена программатора не помогла.

Предполагаю, что я нарушаю последовательность программирования, возможно - ошибаюсь с джампером, или надо программно разблокировать что-то перед записью.
Yuriy
Сообщения: 3
Зарегистрирован: 17 июн 2026, 11:24
Предприятие: ООО ОКБ Авиаавтоматика

Re: К1921ВГ1Т плата 050 Rev1.1 Не могу прошить загрузчик через jtag.

Сообщение Yuriy »

Получилось запрограммировать контроллер через jtag использую конфигурацию для режима одного ядра.
Техническая поддержка посоветовала использовать конфигурацию k1921vg1t_singlecore вместо конфигурации по умолчанию с двумя ядрами.

Что именно я сделал:
По пути V:\sc-dt_Patch_Niiet_Win32\tools\share\openocd\openocd-snippets\k1921vg1t скопировал и переименовал файл
connect_jlink_jtag.cfg
в файл
connect_jlink_jtag_singlecore.cfg

В новом файле заменил строку
source [find target/k1921vg1t.cfg]
на
source [find target/k1921vg1t_singlecore.cfg]

Затем запустил отладчик в командной строке
V:\sc-dt_Patch_Niiet_Win32\tools\bin\openocd.exe -f V:\sc-dt_Patch_Niiet_Win32\tools\share\openocd\openocd-snippets\k1921vg1t\connect_jlink_jtag_singlecore.cfg

Затем в другой командной строке запустил
telnet
и подключился
open localhost 4444
Обращаю внимание, что по умолчанию telnet в windows 10 не установлен, надо устанавливать через “Включение и отключение компонентов windows”, поставить галочку на пункте “Клиент Telnet”.

В окне Telnet я ввел команду
program V:\\run_leds.bin verify 0x0
Все успешно зашилось и верифицировалось. Затем я ввел команду
reset run
и на плате начали бегать огни зеленых светодиодов
Вывод логов успешной записи и верификации. | Показать

> program V:\\run_leds.bin verify 0x0
JTAG tap: K1921VG1T.cpu tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
JTAG tap: K1921VG1T.cpu UNEXPECTED: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
JTAG tap: K1921VG1T.cpu expected 1 of 1: 0xdeb05001 (mfg: 0x000 (<invalid>), part: 0xeb05, ver: 0xd)
JTAG tap: auto0.tap tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Trying to use configured scan chain anyway...
Bypassing JTAG setup events due to errors
** Programming Started **
Erasing sectors from 0 to 5
Start block write
buffer_size 12288, count 768
thisrun_count 768, target_address 0x0
** Programming Finished **
** Verify Started **
** Verified OK **
> reset run
JTAG tap: K1921VG1T.cpu tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
JTAG tap: K1921VG1T.cpu UNEXPECTED: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
JTAG tap: K1921VG1T.cpu expected 1 of 1: 0xdeb05001 (mfg: 0x000 (<invalid>), part: 0xeb05, ver: 0xd)
JTAG tap: auto0.tap tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Trying to use configured scan chain anyway.
Обращаю внимание на двойной слеш (\\) в успешной команде.
program V:\\run_leds.bin verify 0x0

Команды без двойного слеша не сработали, выдавалась ошибка на этапе программирования.
program V:\run_leds.bin verify 0x0
program “V:\run_leds.bin” verify 0x0

Сам файл run_leds.bin я собрал в среде Syntacore, из примера для своей отладочной платы.

Ожидаю версию загрузчика под свою отладочную плату.
ea
Администратор
Сообщения: 127
Зарегистрирован: 10 окт 2014, 09:08

Re: К1921ВГ1Т плата 050 Rev1.1 Не могу прошить загрузчик через jtag.

Сообщение ea »

Yuriy писал(а): 17 июн 2026, 13:11 Добрый день.

Не могу зашить загрузчик в К1921ВГ1Т на плата КДФЛ.441461.050 Rev1.1
Во время прошивки: Джампер SRV-ON установлен. Джампер nRST-ON снят, Джампер B2 - BT_EN установлен.

OpenOCD использовал из патча SDK. https://gitflic.ru/project/niiet/openoc ... 7bc98f72f8

Bin-файл бутлоадера из недавнего обновления https://gitflic.ru/project/niiet/k1921v ... nch=master


Запустил openocd,
Z:\sc-dt_Patch_Niiet_Win32\tools\bin>openocd.exe -s Z:\k1921vg1t_sdk\tools\openocd\scripts -f Z:\sc-dt_Patch_Niiet_Win32\tools\share\openocd\openocd-snippets\k1921vg1t\connect_jlink_jtag.cfg
Open On-Chip Debugger -00247-g90632ca40-dirty (2025-08-01-14:40)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : Hardware thread awareness created
Info : Hardware thread awareness created
Info : J-Link V10 compiled Nov 8 2019 16:40:12
Info : Hardware version: 10.10
Info : VTarget = 3.328 V
Info : clock speed 50 kHz
Info : JTAG tap: K1921VG1T.cpu1 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : JTAG tap: K1921VG1T.cpu0 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : datacount=2 progbufsize=6
Info : Core 0 could not be made part of halt group 1.
Info : Examined RISC-V core; found 1 harts
Info : hart 0: XLEN=32, misa=0x4014912d
Info : datacount=2 progbufsize=6
Info : Core 1 could not be made part of halt group 1.
Info : Examined RISC-V core; found 1 harts
Info : hart 1: XLEN=32, misa=0x4014912d
Info : starting gdb server for K1921VG1T.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
DEPRECATED! use 'adapter speed' not 'adapter_khz'
Info : JTAG tap: K1921VG1T.cpu1 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : JTAG tap: K1921VG1T.cpu0 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Info : Hart 1 unexpectedly reset!
Info : k1921vg1t detected
flash 'k1921vg1t' found at 0x00000000
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : accepting 'telnet' connection on tcp/4444
Зашел в управление через телнет, успешно стер чип, и дальше не могу понять, как записать загрузчик. Процесс записи проходит, на верификации - падает.
> program Z:\\k1921vg1t_bootloader.bin verify
JTAG tap: K1921VG1T.cpu1 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
JTAG tap: K1921VG1T.cpu0 tap/device found: 0xdeb15001 (mfg: 0x000 (<invalid>), part: 0xeb15, ver: 0xd)
Hart 1 unexpectedly reset!
** Programming Started **
Erasing sectors from 0 to 3
Start block write
buffer_size 8192, count 512
thisrun_count 512, target_address 0x0
** Programming Finished **
** Verify Started **
checksum mismatch - attempting binary compare
ERROR: embedded:startup.tcl:1510: Error: ** Verify Failed **
in procedure 'program'
in procedure 'program_error' called at file "embedded:startup.tcl", line 1571
at file "embedded:startup.tcl", line 1510

Пытался вступить в связь с загрузчиком - нет ответа. Джампер SRV-ON снят. Джампер nRST-ON установлен, Джампер B2 - BT_EN установлен.
k1921vx_flasher_new_gui.exe - после попытки второго варианта падает без дополнительных сообщений.
k1921vkx_flasher.exe - не падает, пишет [ERR]: Неизвестный ответ от устройства

Вероятнее всего - загрузчик не прошит.


Поставил чистую windows 10, поставил драйвер zadig-2.9, уменьшал скорость jtag, пробовал J-Link адаптер 9_plus и 10_plus. Картина не меняется.

Питания на плате есть: 5В, 3.3В, 1.1В - все в норме. Измерял мультиметром. Плата питается от штатного внешнего источника питания.

J-Link во время записи не пропадает из диспетчера задач, так что предполагаю, что непропай разъема USB - не мой случай.

USB - UART в системе видится. Если стоят джампера, то можно из терминала помигать BOOT_LED и светодиодом RESET, так что вроде этот участок тоже в порядке. Пока не стер плату - через этот порт шел текст о ходе самоконтроля памяти.

Прошу совета.

Добрый день.
1) В документе "Быстрый старт" (https://gitflic.ru/project/niiet/niiet/ ... ecbd19f423) в шаге 6 раздела 3, указаны рекомендации по настройке OpenOCD

2) В репозитории https://gitflic.ru/project/niiet/k1921vkx_flasher
по умолчанию используются следующие настройки:
К1921ВГ1Т: BOOTEN: A8 UART: TX: B1 RX: B0
К1921ВГ3Т: BOOTEN: A8 UART: TX: C1 RX: C0
К1921ВГ5Т: BOOTEN: A8 UART: TX: B1 RX: B0
К1921ВГ7Т: BOOTEN: B0 UART: TX: A1 RX: A0

Скорректируем репозиторий и добавим фйлы прошивок загрузчика для использования в составе плат макетно-отладочных. Следите за обновлением репозитория https://gitflic.ru/project/niiet/k1921vkx_flasher
Ответить

Вернуться в «32-разрядные микроконтроллеры»