Jump to content

    

Почему IAR 7.70 не создает hex-файл.

Установил IAR 7.70.1.11486, а до этого пытался тоже  самое сделать в IAR 7.40.

 

В обоих не смог добиться выхода hex-файла, который нужен для программирования через ST-LINK V2 .

 

Выполнил такие две установки:

1) Вошел в Project->Options->Output Converter. В закладе Output установил галочку в Generate additional output, задал формат Output format = Intel extended, В окошке Output file установил галочку Override default и задал имя proj.hex.

2) Вошел в Tools->Filename Extensions->Edit.  В окне Filename Extensions Overrides выбрал Output Converter->Edit. В окне Edit Filename Extensions  установил галочку в Override и задал имя расширения .hex.

 

После запуска Make все проходит без замечаний, но в папке Proj\Release\Exe получаю только файл proj.out, а ожидаемого proj.hex по прежнему нет.

 

Что еще нужно сделать, чтобы получить hex-файл?

 

Share this post


Link to post
Share on other sites
2 minutes ago, Serhiy_UA said:

Что еще нужно сделать, чтобы получить hex-файл?

Поискать в корне проекта сгенерированный файл?

Share this post


Link to post
Share on other sites
3 minutes ago, haker_fox said:

Поискать в корне проекта сгенерированный файл?

Искал. Его нет совсем, нигде.

Share this post


Link to post
Share on other sites
1 hour ago, Serhiy_UA said:

2) Вошел в Tools->Filename Extensions->Edit.  В окне Filename Extensions Overrides выбрал Output Converter->Edit. В окне Edit Filename Extensions  установил галочку в Override и задал имя расширения .hex.

Только. что проверил без выполнения вашего п. 2, т.е. нужно выполнить только п.1 Генерирует hex в Exe. И всегда генерировал, т.к. с IAR'ом работаю с 2005 года с небольшими перерывами)))

Share this post


Link to post
Share on other sites
36 minutes ago, haker_fox said:

 И всегда генерировал, т.к. с IAR'ом работаю с 2005 года с небольшими перерывами)))

А какой номер сейчас у вашего IAR, в ранних версиях задание на выдачу hex-файлов осуществлялось несколько иначе, только через опции линковщика в одном окне. Потом этот процесс был усложнен до этих двух пунктов в разных окнах, т.е. вне места задания параметров линковщика. Если можете, укажите, где этот ваш IAR взят. 

Share this post


Link to post
Share on other sites
13 minutes ago, Serhiy_UA said:

А какой номер сейчас у вашего IAR

Скажем там, я с 2013 года точно работал со следующими версиями, обновляясь мо мере выхода новых: 6.30, 7.10, 7.50, 8.10, 8.22, 8.32. Да, возможно вранних иарах что-то было по-другому, я моу и путать. Но точно проблем не было.

13 minutes ago, Serhiy_UA said:

Потом этот процесс был усложнен до этих двух пунктов в разных окнах

Ну вот я вм точно говорю ,что про второй пункт даже и не знал! Услышал о нём только от вас.

iar1.PNG

 

iar2.PNG

Share this post


Link to post
Share on other sites
3 часа назад, Serhiy_UA сказал:

2) Вошел в Tools->Filename Extensions->Edit.  В окне Filename Extensions Overrides выбрал Output Converter->Edit. В окне Edit Filename Extensions  установил галочку в Override и задал имя расширения .hex.

Нафига (извините за выражение)???  :wacko:  Зачем переопределять список расширений исходных файлов "Output Converter-а"??? Сами то поняли что сделали?

Естественно что hex-а нет, так как Вы указали его как исходное для "Output Converter-а". Откуда-ж оно возьмётся?

Share this post


Link to post
Share on other sites
42 minutes ago, jcxz said:

Нафига (извините за выражение)???  :wacko:  Зачем переопределять список расширений "Output Converter-а"??? Сами то поняли что сделали?

Я сначала испробовал версию 7.40, как бы цифра говорила сама за себя, все должно работать. Но не заработало. А Гугл сказал, что у всех работает, но все через опции линкера. Зашел в Хелп к 7.40, там и нашел этот второй пункт. Кстати, в 7.40 нужно было определять, и пункт 2 не лишний. А уже в 7.70 в Tools->Filename Extensions->Edit  все стояло как надо, переопределение не требуется, и второй пункт отпадает, сам собой. Согласен.

 

Настройки у меня для  Output Converter такие же, что и на скрине приведенном haker_fox

 

Так что вопрос остается, при правильном завершении make (замечаний и ошибок нет), ни в Release,  ни в Debug, ни где-то еще, hex-файл не формируется. А формируется только out-файл. 

 

В приложении проект для STM32f103 целиком. Может это поможет найти истину.

 

Proj02_F103.zip

Share this post


Link to post
Share on other sites
57 minutes ago, jcxz said:

Естественно что hex-а нет, так как Вы указали его как исходное для "Output Converter-а". Откуда-ж оно возьмётся?

Я не успеваю за Вашими мыслями. Можно чуть по подробнее и медленее. Что должно быть сзади, а что спереди?

Share this post


Link to post
Share on other sites
36 minutes ago, Serhiy_UA said:

Что должно быть сзади, а что спереди?

Да просто не делайте свой пункт номер 2. А поскольку вы его уже тронули, верните всё как было. Если не помните как было, создайте новый проект. И будет у вас хекс. Простите, вам уже раз третий объяняют что нужно сделать. Попробуйте, а?:blum:

Share this post


Link to post
Share on other sites
1 hour ago, haker_fox said:

Да просто не делайте свой пункт номер 2. А поскольку вы его уже тронули, верните всё как было. Если не помните как было, создайте новый проект. И будет у вас хекс. Простите, вам уже раз третий объяняют что нужно сделать. Попробуйте, а?:blum:

Я так и сделал, оставил только 1-й пункт. Но результат тот же, в папке Debug/Exe есть out.файл, но нет hex.файла.

 

Спасибо за помощь и подсказки, но в этом месте с IAR я не подружился, хотя знаком с ним почти 15 лет для AVR, по этому и испытываю к нему симпатии. Хотя работал много и c Keil, но уже с Silabs. Просто для STM32 последняя оболочка STM32CubeIDE какая-то грубоватая, как мне кажется.

Думаю испробовать более свежую версию IAR, надеюсь найти ее и ключи в местных закромах.  

Share this post


Link to post
Share on other sites
3 часа назад, Serhiy_UA сказал:

Я не успеваю за Вашими мыслями. Можно чуть по подробнее и медленее. Что должно быть сзади, а что спереди?

Вы откройте этот самый 2-й пункт и посмотрите внимательно на содержимое окошка. Что за расширения файлов там перечислены? Ни на какую мысль не наталкивает?

Мне кажется после первого взгляда должно быть очевидно, что там указаны расширения исходных файлов. Исходных, Карл! ...а не результирующих.

И что же Вы сделали? Указали что исходным для Output Converter-а является .hex. Вот он его и ждёт. И не может дождаться, потому что никто его не генерит. Ведь генерить его должен он сам. Из тех исходных файлов, которые там были указаны (и которые Вы стёрли). Ясен пень что теперь у Вас ничего не происходит.

 

PS: Надо восстановить как было раньше и сделать только 1-й пункт. Всё.

1 час назад, Serhiy_UA сказал:

Я так и сделал, оставил только 1-й пункт. Но результат тот же, в папке Debug/Exe есть out.файл, но нет hex.файла.

Вам же уже сказали: Нужно восстановить как было раньше.

PS: Прям как в анекдоте "И колесо пинал и зеркало протёр, а не едет...."  :biggrin:

Share this post


Link to post
Share on other sites

Анекдот вышел вот такой.

На работе у меня 32-разрядный компьютер, а дома 64-разрядный. Решил взять незаконченную работу на дом, погода как раз была дождливой.

Выяснилось, что IAR 7.40 и IAR 7.70 под 32 разряда. А дома попытался установить на 64. Обычно программы в таких случаях в установке отказывают, а здесь все как бы в норме, никто и не пикнул. Я еще подумал, вот в IAR молодцы, веников не вяжут, и все у них круто работает на любых компьютерах. А оказалось несовместимость вышла, внешне все вроде норма, а по сути все не так. Сегодня вернулся на работу и перепроверил на 32, и там все в порядке. Так что надо будет поискать вторую версию уже на 64 разряда. Думаю все должно получиться.

Всем спасибо.

 

Share this post


Link to post
Share on other sites
18 минут назад, Serhiy_UA сказал:

Сегодня вернулся на работу и перепроверил на 32, и там все в порядке. Так что надо будет поискать вторую версию уже на 64 разряда. Думаю все должно получиться.

Долго искать придётся. :biggrin:

Что-то Вы странное пишете. Дома у меня - XP 32-бита, на работе - Win8 64. И там и там стоит одинаковый IAR_7.80.4 - и никаких проблем. Ну т.е. - он из одного дистрибутива, при установке он может конечно выбирать нужные версии файлов, но это совершенно прозрачно для пользователя.

Да и с предыдущими версиями насколько помню - всё было так же было. И нет никакого смысла ставить что-то старее 7.80.4.

Share this post


Link to post
Share on other sites
18 hours ago, jcxz said:

Долго искать придётся. :biggrin:

Дома я сначала установил IAR 7.40, опробовал на начальных установках, т.е. без пункта 2. Нужного результат не получил. Стал искать причину, не нашел. Но зато нашел пункт 2, хотя и после его внедрения ничего не вышло.

Потом взял версию IAR 7.70, еще больше провозился, и в начальном варианте, и со всякими примочками, опять ничего, hex-файла не появлялось. Так что все похоже на несовместимость. А может просто сработала защита софта.

Использовать  IAR 7.80.4. пока еще не додумался, но это не трудно, можно попробовать и его.  

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now