Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2018-июл-18 19:23

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-июл-26 13:44 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1129
Откуда: Тула
Программа для программирования микроконтроллеров Миландр через UART загрузчик.
Поддреживаются микроконтроллеры:
  • 1986ВЕ9х;
  • 1901ВЦ1Т (тестировался wosk);
  • 1986ВЕ1Т;
  • 1986ВЕ3Т (не тестировался);
  • 1986ВЕ4У (не тестировался);
Поддерживаемые типы последовательных портов:
  • адаптеры c168h-pci и Uport 1250, 1100 фирмы MOXA (под Windows 7)
  • silabs CP2102 на плате LDM-SYSTEMS
  • Prolific (site prolific), спасибо, ЧумА
В целом же поддерживаются все виды последовательных портов, присутствующих в системе.
Программа написана под фреймворк Qt 5 без дополнительных зависимостей -- таким образом должна быть кросплатформенна.
Программа использует прошивальщики, написанные уважаемым vasili и фактически совмещает в себе все три программы, выложенные viewtopic.php?f=17&t=1739.

В ближайших планах научить программу:
  • быть консольной (тут есть вариант либо один исполняемый файл будет и консольной и GUI, либо это два разных файла);
  • работать с инфо-флеш;

Буду благодарен за тестирование программы на различных аппаратных платформах и микроконтроллерах -- прошу сообщать не только о неудачах, но и о успехах (работа с не протестированными типами МК и/или адаптерами последовательного порта/нативным COM портом).
Отдельная благодарность за компиляцию и публикацию исполняемых файлов под ОС, отличные от Windows.

UPDATES:
  • Добавлен вариант программы, работающий без библиотек (один "экзешник"). Благодарим Pavel_imp
    Вложение:
    Комментарий к файлу: вариант программы, работающий без библиотек (один "экзешник", статическая линковка)
    updater71static.exe.rar [5.49 МБ]
    Скачиваний: 101
  • Добавлена сборка под linux (Ubuntu 16.04, x64). Благодарим Lexius
    Вложение:
    Комментарий к файлу: Сборка под Linux (Ubuntu 16.04, x64)
    При использовании необходимо подпихнуть библиотеки libqt5, в частности libqt5serialport.

    updater71_linux_x64.tar.gz [66.6 КБ]
    Скачиваний: 125


Вложения:
Комментарий к файлу: Проект Qt (версия 0.1.3)
updater71_src_20170803.rar [23.69 КБ]
Скачиваний: 110
Комментарий к файлу: версия 0.1.3.
Исполняемый файл отдельно (если у Вас уже есть библиотеки Qt5).

updater71_20170803.rar [63.29 КБ]
Скачиваний: 102
Комментарий к файлу: Архив с программой и DLL Qt 5.5.1
Обязательно замените исполняемый файл на более свежий

updater71.rar [6.48 МБ]
Скачиваний: 128

_________________
сочувствующий…


Последний раз редактировалось prostoRoman 2018-фев-19 09:04, всего редактировалось 10 раз(а).
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-июл-26 17:48 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 476
Цитата:
Задайте имя файла для сохранения дампа прошивки или снЕмите флажок Load.

:)))
Если по делу, то чего-то не работает, варианты:
Цитата:
Нет ответа от МК.
Проверка связи на стандартной скорости не прошла

Демо-плата 1986ВЕ91 первой версии (MODE3 задана проводком) от Миландра, адаптер USB-RS232 на Prolific. Строка нулей отправленная через терминал дает ответ 0D,0A,3E.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-июл-27 09:32 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 476
После замены exe-шника гораздо гораздее, в режиме (только) Load:
Цитата:
Есть синхронизация.
Проверка связи на новой скорости прошла успешно.
Не прошла команда верификации флешера (размер)!

Последняя строка вызывает недоумение. В итоге прошивка не считана.
UPD:
Есть еще вариант, но проявился один раз из десятка:
Цитата:
Есть синхронизация.
Проверка связи на новой скорости НЕ прошла!
Не прошла команда загрузки флешера!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-июл-27 15:58 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 476
С exe-шником полученным в ЛС работает:
Цитата:
Есть синхронизация.
Проверка связи на новой скорости прошла успешно.
Флешер работает.
Считывание прошивки прошло успешно.


Пожелания:
1 Галку Load переименовать в Read
2 Ввести выбор типа файла hex|bin (пустяк, а приятно)
3 Возможность работать с Info-областью
4 Если закрыть программу с установленной галкой Load, то при последующем запуске для ввода имени файла галку надо сначала снять, а затем снова установить
5 Шикарно было бы иметь возможность работы с отдельными секторами - стирать, писать, читать.
6 Спасибо за утилиту, т.к. 1986BE1UARTWSD у меня не работает

Другие подробности отправил в ЛС


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-июл-27 17:33 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1129
Откуда: Тула
ЧумА писал(а):
С exe-шником полученным в ЛС работает:
Цитата:
Есть синхронизация.
Проверка связи на новой скорости прошла успешно.
Флешер работает.
Считывание прошивки прошло успешно.
Пожелания:
1 Галку Load переименовать в Read
2 Ввести выбор типа файла hex|bin (пустяк, а приятно)
3 Возможность работать с Info-областью
4 Если закрыть программу с установленной галкой Load, то при последующем запуске для ввода имени файла галку надо сначала снять, а затем снова установить
5 Шикарно было бы иметь возможность работы с отдельными секторами - стирать, писать, читать.
6 Спасибо за утилиту, т.к. 1986BE1UARTWSD у меня не работает

1. Переименовал в Dump (оно так по коду везде, для однообразия)
2. hex|bin для сохранения дампа? если так, то есть такие планы - дел то на час. А если для прошивки - то не ясно откуда этот бин грузить (логично с начала флеш, конечно)
3. Инфо есть в планах (есть и вопрос по интерфейсу - сделать аналогично выбору файла прошивки, ещё как...)
4. Исправил.
5. Есть в планах. Но тут важно определить цель - зачем это делается. Пока цель - перетирать только те сектора, в которые будет писаться прошивка. (это функционал галки Full в 1986BE1UARTWSD)
6. Так с каким процессором Вы работали? Плата, я так понимаю, "своя"? Если можно поточнее модель конвертера USB-UART.
7. Файл программы (updater71_20170727_3.zip) обновлён в первом сообщении темы.

Спасибо за тестирование!

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-авг-02 12:20 
Не в сети

Зарегистрирован: 2016-фев-16 11:59
Сообщения: 14
Откуда: Пенза, АО НПП Рубин
Делал Dump для 1901ВЦ1Т, выдало "ошибка идентификации загрузчика!".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-авг-02 13:49 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1129
Откуда: Тула
wosk писал(а):
Делал Dump для 1901ВЦ1Т, выдало "ошибка идентификации загрузчика!".

Ответил в личку. UPD: проблема устранена.

Для остальных: просьба сразу указывать с каким оборудованием работаете, использовать последнюю версию программы, готовить и выкладывать лог по следующему рецепту
Цитата:
Запустите консоль ( Win+R -> cmd -> Enter ), перейдите в папку с файлом updater71.exe ( d: Enter cd path\to\file Enter ), запустите ниже прилагаемый файл командой updater71.exe 2>log.txt Enter
Выполните нужные действия, вышлите мне (или прикрепите к сообщению на форуме) файл log.txt

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2017-дек-08 13:40 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1129
Откуда: Тула
В первое сообщение темы добавлена версия программы, собранная статически с библиотеками Qt -- это значит что исполняемый файл не требует файлов библиотек *.dll

Кроме того, всегда есть возможность создать самораспаковывающийся архив со всеми необходимыми файлами (не только библиотеки), который будет в режиме "без лишних вопросов" распаковываться во временную папку и запускать на исполнение указанную вами программу с указанными вами параметрами.
Пример для WinRAR
Код:
;Расположенный ниже комментарий содержит команды SFX-сценария
Setup=updater71.exe
TempMode
Silent=1
Overwrite=1
Update=U

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2018-янв-16 23:17 
Не в сети

Зарегистрирован: 2014-фев-17 10:09
Сообщения: 16
Откуда: Рязань
Отлично работает! Плата у меня самодельная и сразу не пошло - режим mode был не тот, rx и tx перепутал и питание не подал))) Может у кого-нибудь тоже возникнут трудности поэтому предлагаю добавить небольшую инструкцию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2018-янв-17 09:45 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1129
Откуда: Тула
actclekcz писал(а):
Отлично работает! Плата у меня самодельная и сразу не пошло - режим mode был не тот, rx и tx перепутал и питание не подал))) Может у кого-нибудь тоже возникнут трудности поэтому предлагаю добавить небольшую инструкцию.

actclekcz, спасибо за отзыв! На каком МК пробовали? Какой тип компорта?

Небольшая инструкция (draft)
1. Правильно выставить режим MODE.
2. Не путать rx/tx.
3. Подать питание на все системы.

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2018-янв-21 11:02 
Не в сети

Зарегистрирован: 2014-фев-17 10:09
Сообщения: 16
Откуда: Рязань
prostoRoman писал(а):
На каком МК пробовали? Какой тип компорта?


контроллер 1986BE1QI, маркировка MDR32F1QI 1530, преобразователь USB-UART на CP102, Windows 7 x64


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Milandr firmware updater via UART bootloader
СообщениеДобавлено: 2018-фев-16 19:08 
Не в сети

Зарегистрирован: 2014-окт-02 15:53
Сообщения: 3
Спасибо автору за программулину.
Скомпилировал ее под linux (Ubuntu 16.04).
Все работает. Тестировал на платке LDM-uROB-K1986ВЕ1QI со встроенным USB-UART (CP2102).

Прикрепляю бинарник под linux(x64). При использовании необходимо подпихнуть библиотеки libqt5, в частности libqt5serialport.


Вложения:
updater71_linux_x64.tar.gz [66.6 КБ]
Скачиваний: 124
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB