Как заставить MPLAB импортировать HEX-файл с комментариями или импортировать HEX-файл, указанный в командной строке?

Я работаю с компилятором CCS c, который создает свои объектные файлы в 32-битном формате Intel HEX, также известном как INHX32. У этого компилятора есть директива, которая заставляет его помещать комментарии в эти файлы. Строки комментариев находятся в начале файла и начинаются с точки с запятой, например:

;  This is a comment
:020000040000FA
:1000000007EF33F0000C000C056ED8CF06F0E0CF00
:1000100007F00001E9CF0DF0EACF08F0E1CF09F0D9

Я хотел бы использовать эту директиву, так как комментарии будут чрезвычайно полезны для тех, кто позже импортирует шестнадцатеричные файлы в MPLAB. Однако MPLAB не будет импортировать файлы с комментариями. Когда я пытаюсь, я получаю сообщение об ошибке «Неверный формат файла, информация недоступна».

Я понимаю, что эти строки комментариев не являются частью оригинальной спецификации Intel, но некоторые другие компиляторы и инструменты разработки их принимают. Есть ли способ заставить MPLAB сделать это?

Я мог бы написать сценарий, который вырезал бы эти строки, а затем передал бы полученный файл в MPLAB, но, насколько я могу судить, MPLAB не может импортировать файл через командную строку.


person Jeanne Pindar    schedule 09.10.2009    source источник


Ответы (3)


Некоторые версии MPLAB принимают комментарии и конец файла. В CCS #HEXCOMMENT\ (с обратной косой чертой) помещает комментарий в конец шестнадцатеричного файла.

person Chuck Dosh    schedule 18.01.2012
comment
Этот #HEXCOMMENT\ не работает в (старой) версии CCS, которую я использую. Комментарии по-прежнему находятся в начале шестнадцатеричного файла. - person Jeanne Pindar; 18.04.2012
comment
#HEXCOMMENT\ работает в более новой (›5.0) версии CCS, которая у меня сейчас есть. - person Jeanne Pindar; 26.07.2017

Случайная вещь...

  1. Есть ли флаг компилятора, отключающий этот комментарий в объекте? Это было бы лучшим местом для начала.

  2. Если нет, то позволяет ли C-плагин IDE добавить в него постпроцессор? Если это так, как указано выше, вы можете легко написать пожиратель комментариев.

person Foobarista    schedule 10.10.2009
comment
Мне нужны комментарии, поэтому я хочу использовать директиву, которая их создает. - person Jeanne Pindar; 10.10.2009

Оказывается, MPLAB определенно не выполняет импорт (или многое другое) из командной строки. Поэтому я написал скрипт AutoIt для удаления комментариев и сохранения остальных во временном файле. Затем он импортирует этот файл в MPLAB, управляя графическим интерфейсом MPLAB.

На самом деле это лучше, чем заставить MPLAB импортировать файл напрямую, поскольку мой сценарий отображает комментарии в диалоговом окне, поэтому пользователю не нужно открывать файл в редакторе, чтобы прочитать их.

person Jeanne Pindar    schedule 13.10.2009