Интерфейс MultiProg
Элементы интерфейса

menu– основное меню программы.actions toolbar– самые используемые действия, дублируют меню.additional actions– действия применимые к конкретному программатору или контроллеру. Меняются в зависимости от выбраного контроллера-программатора.programmer & target info– короткая выдержка о подключенном программаторе и контроллере.hex buffer– визуализация всех сегментов памяти контролера в виде hex буфера.log– окошко логирования.memory/address bar– показывает имя выбранного в hex буфере сегмента памяти и выделенный адрес.
Базовые действия по программированию
connect– установка соединения с программатором и контроллером.read– чтение каждого сегмента памяти в соотвествии с картой памяти, сохранение в буфер дампа каждого сегмента.write– запись каждого сегмента памяти из буфера без предварительного массового стирания.verify– сравнение каждого сегмента памяти на соотвествие содержимому буфера.erase– массовое стирание каждого сегмента из буфера, если не предусмотрено иного механизма стирания производителем контроллера.
Быстрый старт
Обычный порядок действий:
- Откройте
Targetв меню или в actions toolbar. - Выберите программатор и контроллер, нажмите ОК.

- Убедитесь, что вы изучили руководство по настройке-установке программатора. Например руководство по USBDM.
- Посмотрите в меню
Info->Connection Image, возможно для вашего контроллера есть картинка подключения. - Подключите программатор к контроллеру и нажмите
Connect. - После успешного (SUCCESS) соединения все действия (
Read,Write,Erase,Verify) станут активными. - Поздравляю, вы разобрались 🚀
Hex буфер и memory/address bar
Hex буфер является зеркальным представлением памяти контроллера внутри программы.
В hex буфере может быть один или несколько табов с сегментами памяти. Перек лючение осуществляется нажатием на таб с названием сегмента.
Быстрая навигация
При нажатии на поле адреса можно быстро перейти по заданому смещению.

Копирование строки в hex/text
При нажатии правой кнопкой мышки можно определить формат копирования.

Опредление сегмента и адреса по memory/address bar
Почему на этом видео на ячейке 0x00-0x01 адрес всегда 0x00?
У данного контроллера (mc56f) 2 байта на 1 ячейку памяти.
Работа с файлами прошивок

-
menu->File->Openзагружает файл прошивки открытый в буфере раздел. -
menu->File->Importзагружает все разделы из выбранного файла прошивки. -
menu->File->Saveсохраняет в файл прошивки открытый в буфере раздел. Формат задается расширением (bin, s19 и т.д.). -
menu->File->Exportсохраняет все разделы из выбранного файла прошивки. Формат задается расширением (bin, s19 и т.д.). -
actions toolbar->Saveтоже самое, чтоmenu->File->Save. -
actions toolbar->Openтоже самое, чтоmenu->File->Open.
Export-Import желательно производить в формате S19 (aka .mot, .srec). Формат задается расширением при сохранении файла.
Отличие Import/Export от Save/Options
Сегменты (регионы, разделы) в данном случае разделы памяти микроконтроллера (см memory map), не все контроллеры имеют несколько сегментов памяти.
-
Exportв форматеs19, добавляет каждый сегмент в формате srec. -
Exportв форматеbin, начиная с0x00до начального адреса первого сегмента памяти заполняет файл0xFF. Далее добавляет в файл первый сегмента, далее добавляет0xFFразмером до начала следующего сегмента, далее добавляет следующий сегмент и так пока не загрузит весь буфер.
Поэтому, Export в формате bin без необходимости не рекомендуется, так как файл прошивки может получится очень большим.
Importв форматеs19, разбирает файл srec, извлекает и загружает в буфер каждый сегмент.Importв форматеbin, отсчитывает начальное смещение по адресу первого сегмента памяти, извлекает из файла данные с (начальное смещение) и размером (размер сегмента) и так по очереди каждый сегмент в буфере.Save- в форматеbinпросто сохраняет сегмента как есть, где нулевое смещение = начало сегмента. В s19 с адресацией.Open- в форматеbinзагружает выбранный сегмент памяти с нулевого смещения т.е. как есть в файле. В s19 с адресацией.
Я сохранил считанную USBDM прошивку DSC(MC56f) и она размером больше чем должна быть
У данного контроллера (mc56f - DSC) 2 байта на 1 ячейку памяти.
Поэтому если адресов 0x0-0x7FFF байт вдвое больше.
Settings - меню настроек
-
Licenseничего интересного, здесь информация о вашей лицензии и активация. -
Download logсохраняет лог текущей сессии по указанному пути, может пригодиться. -
Reset default configудаляет настройки и восстанавливает default. -
Check updatesпроверка и установка обновлений.
Info->Connection image
В настоящий момент открывает картинку размещенную в папке MultiProg/connection_image с названием контроллера.
Help-about (версия)
Версию, время сборки и hash программы можно посмотреть в
menu->Help->About.
Это может пригодится при обращении в поддержку