Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Вт июн 28, 2022 16:24:23
накропал утилитку маленькую для конвертирования форматов файлов, возможно, кому-нибудь пригодится.
забирать здесь:
https://cloud.mail.ru/public/xwAG/bwRqRcbvNкратко об особенностях:
- можно задавать количество байтов в строке hex-файла, что удобно для сравнения по содержимому разных файлов
- можно конвертировать в обе стороны одной утилиткой
- можно конвертировать несколько файлов за раз (по маске), причем каждый файл в свою сторону (по расширению)
- не поддерживаются 32-битные записи IntelHex и некоторые другие экзотические, что для радиолюбителя не является преградой
конкретные подробности в файле
readme в той же папке
отвечу на вопросы
P.S. подобных утилит море, но написанная своими руками всегда кажется лучше
Вт июн 28, 2022 17:09:51
Вроде бы, софт от любого
нормального программатора, позволяет загружать и выгружать прошивки и в формате "*.bin" и в "*.hex"...
Вт июн 28, 2022 19:11:22
Ну, да, позволяет. Например, avrdude сохраняет хексы по 32 байта в строке, а компилятор студии - по 16. И сравнить два хекса не так уж и просто. Ну и вообще, телодвижений меньше со спецутилитой.
Вт июн 28, 2022 22:10:00
Моя котуина ест хексы с прямым переводом в бин...
А вот назад в комп пока ничего не отсылает...
Все лапки не доходят доработку сделать...
Вт июн 28, 2022 23:27:18
Вот- загрузил хекс, выгрузил бин..
ПО- от 866 программатора..
То же самое у меня успешно делал Autoprog..
Ср июн 29, 2022 21:28:15
Народ, просветите пожалуйста зачем вообще может понадобиться перевод формата загрузочного файла? И в каких случаях возникает необходимость сравнения двух hеx файлов (предназначенных для загрузки в МК)? Сам никогда ничего подобного не делал и не нужно было, поэтому и спросил.
Чт июн 30, 2022 06:45:40
Преобразование форматов файлов, как правило, необходимо в 2 случаях: когда ваш софт не понимает имеющийся формат файла или когда вы пытаетесь понять, что не так с этим файлом.
Пример первого - протеус,который отказывается загружать в EEPROM хексы, а компилятор упорно их генерирует.
Примеры второго привести сложнее, т.к. они специфичны. Например, я делал свой загрузчик и разбирался с тем, как там данные проходят. Отладчик показывает бинарные, а исходно они в хексе, постоянно водить глазами по строчками задалбывает...
Как-то так вот...
Чт июн 30, 2022 07:49:51
Мммда, представмть себе такие ситуации получилось, хоть и не разу в них не был.
Спасибо за разъяснение!
Чт июн 30, 2022 08:14:02
Ну или вот еще ситуация: надо сравнить прошивку в МК с только что скомпилированной. Считываем дудкой прошивку, делаем в ТоталКомандере "сравнить по содержимому" двух хексов и видим, что файлы разные: в первом строки в 2 раза длиннее, чем во втором, соответственно, все не совпадает. Но на самом ли деле они разные?
Чт июн 30, 2022 09:13:15
делаем в ТоталКомандере "сравнить по содержимому"
Ну если сравнивать только Топтал Командёром...
Лет 30 назад, на заре своего ембеддерства
я тоже столкнулся с этой проблемой. Пришлось писать свой "сравнивальщик", он кроме 2 сравниваемых массивов создавал ещё третий, Булевый: "вот эти байты актуальны, а эти - так, мусор". Потратил часа полтора. Классов, объектов тогда ещё был не в курсе; так, по рабоче-крестьянски на чистом Си под W98.
Чт июн 30, 2022 16:35:04
а чем еще сравнивать? ваша утилита, вероятно, лучше той, что в тоталкомандере, но где она?!
Чт июн 30, 2022 17:54:23
некоторые загрузчики умеют сравнивать. Но только с тем, что загружено в железяку, что не всегда удобно и возможно.
так что да, сравнение - полезная штука
а для утилит, что в тоталкоммандере, вероятно, нужен тс, у меня же, например, Far
Чт июн 30, 2022 19:53:17
ARV писал(а):надо сравнить прошивку в МК с только что скомпилированной
А это зачем нужно? Вижу лишь одну причину - для контроля правильности заливки прошивки. Если так, то как отметил
Martian некоторые загрузчики умеют это делать (сам я других и не знаю
), и сравнение нужно лишь для тех, которые это делать не умеют? Или сравнивать возникает надобность ещё в каких-то других ситуациях (каких)?
Чт июн 30, 2022 21:07:23
мне казалось, я дал исчерпывающий перечень ситуаций, когда требуется применение конвертеров формата... не понимаю дальнейших вопросов "зачем?"
кому незачем, тот не конвертирует, не сравнивает и не понимает ответов тех, кто это делает. а поводов это делать больше одного
Чт июн 30, 2022 21:44:25
Хорошо, больше не буду донимать Вас расспросами по этому поводу.
Просто надеялся узнать что-то новое для себя без всякого подвоха, т.е. кто-то знает нечто, чего не знаю я. Но, видимо, был неправильно понят.
Пт июл 01, 2022 10:08:16
Один из вариантов применения был у меня в котуинке.
Программатор ISP для AT89S52 на основе ардуино-нано.
Программатор "одноразового применения" - прошивка БИОС для котуинки.
Сам файл биоса надо было разместить в качестве бинарного массива в ПЗУ адуринки.
Вот и надобность - выходной файл ассемблера 51й превращаем в бинарник с привязкой к особенностям АВРки.
Возможны аналогичные варианты с другими МК.
Пт июл 01, 2022 12:39:53
А это зачем нужно? Вижу лишь одну причину - для контроля правильности заливки
С этим справляется любой программатор.
А вот другое... Сошлюсь на свой печальный опыт (никогда так не делайте!) . После нахождения и исправления довольно неординарной ошибки поленился (или отвлечён был более важным делом?) и не сделал копию. Комп накрылся неожиданно (они всегда это делают неожиданно
), и я остался без работающего искодника. Путём последовательного приближения от последней сохранённой версии к работающему хексу восстановил (и 3 раза скопировал
) исходник.
Но это было ещё во времена горбачёвщины. Могло быть и не такое...
Пт июл 01, 2022 16:22:04
Понял, спасибо за науку.
Ср ноя 08, 2023 09:19:58
Как работать с этим конвертертерм в первом посту по шагово объясните пожалуйста, не могу открыть, у меня программатор postal3. Хочу залить атмегу328 а прошивка в hex
Ср ноя 08, 2023 09:30:22
Это еше ладно. Есть с переворотом байтов, в стиралках например сталкивался ево2. Например байт 06_F2_42 срхраняешь а он 60_2F_24
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.