Перейти к основному содержимому

Интерфейс MultiProg

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

Описание интерфейса

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

Базовые действия по программированию

  • connect – установка соединения с программатором и контроллером.
  • read – чтение каждого сегмента памяти в соотвествии с картой памяти, сохранение в буфер дампа каждого сегмента.
  • write – запись каждого сегмента памяти из буфера без предварительного массового стирания.
  • verify – сравнение каждого сегмента памяти на соотвествие содержимому буфера.
  • erase – массовое стирание каждого сегмента из буфера, если не предусмотрено иного механизма стирания производителем контроллера.

Быстрый старт

Обычный порядок действий:

  1. Откройте Target в меню или в actions toolbar.
  2. Выберите программатор и контроллер, нажмите ОК. Target selector
  3. Убедитесь, что вы изучили руководство по настройке-установке программатора. Например руководство по USBDM.
  4. Посмотрите в меню Info->Connection Image, возможно для вашего контроллера есть картинка подключения.
  5. Подключите программатор к контроллеру и нажмите Connect.
  6. После успешного (SUCCESS) соединения все действия (Read, Write, Erase, Verify) станут активными.
  7. Поздравляю, вы разобрались 🚀

Hex буфер и memory/address bar

Hex буфер является зеркальным представлением памяти контроллера внутри программы.

В hex буфере может быть один или несколько табов с сегментами памяти. Переключение осуществляется нажатием на таб с названием сегмента. Segments

Быстрая навигация

При нажатии на поле адреса можно быстро перейти по заданому смещению. quick addr

Копирование строки в hex/text

При нажатии правой кнопкой мышки можно определить формат копирования. quick addr

Опредление сегмента и адреса по memory/address bar

quick addr Почему на этом видео на ячейке 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 размером до начала следующего сегмента, далее добавляет следующий сегмент и так пока не загрузит весь буфер.

warning

Поэтому, 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.

к сведению

Это может пригодится при обращении в поддержку