К1921ВК01Т (ARM Cortex-M4F)

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

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

Виктор
Сообщения: 10
Зарегистрирован: 04 апр 2019, 12:10
Предприятие: МНИТИ

Re: К1921ВК01Т (ARM Cortex-M4F)

Сообщение Виктор » 19 апр 2019, 16:40

Добрый день!

Создал пустой проект в IAR по руководству из Быстрого Старта. Программатор JLINK, подключаюсь по SWD.

Пустой проект не прошился и в таком состоянии висит до отмены:

Код: Выделить всё

#include "include/K1921BK01T.h"

void main()
{   
  int i=0;
  while(1){}
}
1.png
1.png (32.03 КБ) 412 просмотров
Однако, если убрать опреление int i=0;, то контроллер прошьется!
Если же вместе с i объявить еще одну переменную, то опять перестанет прошиваться!
JLINK работает - я могу войти в отладку, просмотреть память, регистры и т.д.

Было обнаружено, что успешная прошивка контроллера зависит от его размера выходного файла - если он кратен 16 байтам, то МК запрограммируется, иначе - программирование зависнет.

Есть подозрение, что дело во flashloader'e. Все файлы последней версии взял из репозитория https://bitbucket.org/niietcm4/k1921vkx_sdk/downloads/
На всякий случай приложил FlashK1921VK01T.out файл (расширение изменил, что бы можно было добавить во вложения)

Подскажите, пожалуйста, в чем может быть дело?
Вложения
FlashK1921VK01T.hex
(34.68 КБ) 1 скачивание

bkolbov
Сообщения: 179
Зарегистрирован: 14 дек 2015, 11:37
Предприятие: АО НИИЭТ
Откуда: Воронеж

Re: К1921ВК01Т (ARM Cortex-M4F)

Сообщение bkolbov » 20 апр 2019, 11:23

Виктор писал(а):
19 апр 2019, 16:40
Добрый день!

Создал пустой проект в IAR по руководству из Быстрого Старта. Программатор JLINK, подключаюсь по SWD.

Пустой проект не прошился и в таком состоянии висит до отмены:
Однако, если убрать опреление int i=0;, то контроллер прошьется!
Если же вместе с i объявить еще одну переменную, то опять перестанет прошиваться!
JLINK работает - я могу войти в отладку, просмотреть память, регистры и т.д.

Было обнаружено, что успешная прошивка контроллера зависит от его размера выходного файла - если он кратен 16 байтам, то МК запрограммируется, иначе - программирование зависнет.

Есть подозрение, что дело во flashloader'e. Все файлы последней версии взял из репозитория https://bitbucket.org/niietcm4/k1921vkx_sdk/downloads/
На всякий случай приложил FlashK1921VK01T.out файл (расширение изменил, что бы можно было добавить во вложения)

Подскажите, пожалуйста, в чем может быть дело?
Добрый день!

Раз есть "волшебное" число 16 байт, то похоже что дело где-то в выравнивании блока данных внутри алгоритма программирования.

Исходников текущего алгоритма загрузки нет, но я попробовал адаптировать то, что было написано под другие мк.
Попробуйте заменить файл .out (который в arm\config\flashloader\NIIET\) файлом из архива.
Вложения
FlashK1921VK01T.zip
(6.55 КБ) 3 скачивания

Виктор
Сообщения: 10
Зарегистрирован: 04 апр 2019, 12:10
Предприятие: МНИТИ

Re: К1921ВК01Т (ARM Cortex-M4F)

Сообщение Виктор » 23 апр 2019, 11:35

bkolbov, спасибо, работает.

Ответить

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

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость