реклама на сайте
подробности

 
 
> Новая версия IAR EW430 4.10A, появилась новая версия
zltigo
сообщение Oct 19 2007, 21:09
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Появился свежий компилятор для MSP430 - перепрыгнул аж на 4 версию.
Но IDE, хоть и 4.0, но совсем не совместима с прочими IDE V4 - ставить отдельно. Приручение обычное.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rezident
сообщение Oct 19 2007, 22:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



По наводке из пустыни обнаружил, что на сайте производителя появилась новая версия компилятора IAR Embedded Workbench version 4.10 for TI MSP430. Поскольку там высказывалось сомнение, то скачал. Действительно скачивается новая версия. Посему краткий отчет поверхностного исследования ее.
Зная какой самый первый вопрос интересует российских эмбеддеров, сообщаю - после увеличения дозы для версии на 1/10 таблетка по-прежнему работает. wink.gif
Далее. Дистриб на 13 Метров больше предыдущего. На этапе установки кроме собственно IAR EW дополнительно установился Microsoft Visual C++ 2005. cranky.gif Не поэтому ли дистриб на 13 Метров потолстел? Версии проекта традиционно несовместимы, посему IDE при открытии его предлагает старый (созданный в 3.42а) конвертировать. Ну сконвертировал. Визуально IDE не изменилось. После этого сразу полез в опции проекта.
В опциях оптимизации вместо выпадающего списка чекбоксы. Кроме Speed и Size появилась Balanсed, но выбирать из них можно лишь при установленном уровне оптимизации High. При выборе других уровней оптимизации "лишнее" затенено/недоступно. Кстати, забегая вперед, при компиляции проекта выскочила ошибка, связанная с этим нововведением.
Цитата
Error[e117]: Incompatible runtime models. Module acorr specifies that '__rt_version' must be '3', but module
math has the value '2'
Error while running Linker

Видимо все-таки конвертация проекта не совсем гладко проходит. Пришлось зайти в опции проекта и выбрать medium, потом снова high-speed. После этого скомпилировалось.
Далее. Заметил, что список поддерживаемых эмуляторов увеличился. Кроме TI (LPT-FET, USB-FET), J-Link и SoftBaugh (LPT, USB, USB Pro), поддерживаемых в 3.42A появились Olimex (USB, LPT) и Elprotronic USB-FPA. Соответственно в комплекте имеются драйвера для мостов USB-COM FDTI, SiLabs etc. Новых плагинов не добавилось, а версии имеющихся конечно же обновились. Больше ничего, нового/интересного в опциях не заметил. Окромя двух новых "Data20 heap size" там где Options->General options->Stack/Heap и Options->C/C++ compiler->Code "20-bit context save on interrupt". Обе e меня затенены, т.к. видимо предназначены для кристаллов со 100кБайтной Flash.
Попробовал скомпилировать проект. Компилируется. Но появились новые ремарки, которых не выдавала 3.42A.
На строки вида
Код
uchLRC=~uchLRC;

и
Код
if (((~P1IN)&BIT5)==0) stat0=0;

выдает ремарку
Цитата
Remark[Pa091]: operator operates on value promoted to int (with possibly unexpected result)

Операция побитовой инверсии над char-овскими операндами не нравится? Ну да ладно. Результаты.
Версия 3.42a
уровень оптимизации medium-speed (оптимизация по скорости). Code motion выключена.
Цитата
14 174 bytes of CODE memory
1 626 bytes of DATA memory (+ 348 absolute )
752 bytes of CONST memory

Версия 4.10a
уровень оптимизации medium (оптимизация по скорости не доступна для выбора). Code motion выключена.
Цитата
14 104 bytes of CODE memory
1 626 bytes of DATA memory (+ 348 absolute )
720 bytes of CONST memory

Версия 3.42a
уровень оптимизации high-speed (оптимизация по скорости). Code motion выключена.
Цитата
14 050 bytes of CODE memory
1 626 bytes of DATA memory (+ 348 absolute )
752 bytes of CONST memory

Версия 4.10a
уровень оптимизации high-speed (оптимизация по скорости). Code motion выключена.
Цитата
14 036 bytes of CODE memory
1 626 bytes of DATA memory (+ 348 absolute )
720 bytes of CONST memory

Ну то, что размер кода уменьшился это хорошо и объяснимо, но почему констант меньше стало, не совсем понятно. laughing.gif Компилятор их инлайнить перестал? Или что-то другое?
Запустил C-Cpy в режиме симулятора. Запускается. Внешний вид не изменился. Зато вновь заработала "ручная" симуляция вызова прерывания. 08.gif В 3.42A она почему-то не работала и симмитировать прерывания можно было только с помощью макросов.
Вот в общем пока и все. Реального устройства под рукой нет и работоспособность прошивки, скомпилированной в 4.10A проверить не могу. А хотелось бы проверить корректность оптимизации переменных типа volatile, находящихся в структуре. Глюк с оптимизацией для такого случая присутствует как в 3.30A, так и в 3.42A.
P.S. открыл еще один проект, созданный в 3.42A. Сконвертировал. Скомпилировал. Ошибки типа Error[e117]: описанной выше не выскочило, но на попытку запустить C-cpy приложение IAR тихо, без каких-то сообщений самостоятельно закрылось smile.gif Запустил вновь, зашел в опции в там где задается оптимизация выбрал medium и снова high-speed. После этого все скомпилировалось и C-Cpy уже нормально запустился. Видимо именно в этом месте конвертация проектов все же глючит. Будьте внимательны!

Оп-па! zltigo уже успел присоединить мое сообщение к своей малоинформативной ветке, хотя на мой взгляд следовало бы наоборот сделать wink.gif Ну да ладно, хозяин-барин и кто не успел, тот опоздал smile3009.gif
Для diper. Ваша просьба выполнена.

Сообщение отредактировал rezident - Oct 19 2007, 22:15
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Oct 22 2007, 09:29
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(rezident @ Oct 20 2007, 01:14) *
После этого все скомпилировалось и C-Cpy уже нормально запустился. Видимо именно в этом месте конвертация проектов все же глючит. Будьте внимательны!

А прибор то работает? smile.gif


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
rezident
сообщение Nov 20 2007, 00:07
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Dog Pawlowa @ Oct 22 2007, 14:29) *
А прибор то работает? smile.gif

Сегодня удалось-таки проверить в приборе прошивку, скомпилированную новой версией 4.10A. Работает! 08.gif
Оптимизация High-Balanсed, опция Code motion по традиции выключена. Reduce stack usage включена.
Цитата
5 466 bytes of CODE memory
405 bytes of DATA memory (+ 60 absolute )
132 bytes of CONST memory (+ 176 absolute )

В 3.42a с такими же установками (только оптимизация High-Speed) было
Цитата
5 730 bytes of CODE memory
405 bytes of DATA memory (+ 60 absolute )
164 bytes of CONST memory (+ 176 absolute )

Куда в 4.10a деваются константы, не пойму до сих пор cranky.gif
Go to the top of the page
 
+Quote Post
diper
сообщение Nov 20 2007, 07:54
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 94
Регистрация: 12-11-05
Из: Росиия, Нижний Новгород
Пользователь №: 10 750



Цитата(rezident @ Nov 20 2007, 04:07) *
Оптимизация High-Balanсed, опция Code motion по традиции выключена. Reduce stack usage включена.

Чем вызвана такая такая нелюбовь к Code motion ?

По поводу констант сложидось впечатление что он их начал активнее инлайнить. Сравнить уже не с чем моcты сожжены smile.gif
Go to the top of the page
 
+Quote Post
rezident
сообщение Nov 20 2007, 10:33
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(diper @ Nov 20 2007, 12:54) *
Чем вызвана такая такая нелюбовь к Code motion ?

Исторически так сложилось. Глючит эта опция у IAR. IAR даже с volatile не всегда корректно обходится sad.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zltigo   Новая версия IAR EW430 4.10A   Oct 19 2007, 21:09
- - diper   Цитата(zltigo @ Oct 20 2007, 01:09) Появи...   Oct 19 2007, 21:31
|- - zltigo   Цитата(rezident @ Oct 20 2007, 01:14) Оп-...   Oct 19 2007, 22:20
|- - rezident   Цитата(Dog Pawlowa @ Oct 22 2007, 15:29) ...   Oct 22 2007, 14:19
|- - Dog Pawlowa   1 ) В одном проекте только часовой кварц, контроль...   Nov 20 2007, 16:00
|- - rezident   Цитата(Dog Pawlowa @ Nov 20 2007, 21:00) ...   Nov 20 2007, 16:43
|- - Dog Pawlowa   Цитата(rezident @ Nov 20 2007, 20:43) Угу...   Nov 20 2007, 17:08
|- - diper   Цитата(Dog Pawlowa @ Nov 20 2007, 21:08) ...   Nov 20 2007, 17:32
|- - Dog Pawlowa   А еще в новой версии происходит контроль заполнени...   Nov 21 2007, 15:55
|- - diper   Цитата(Dog Pawlowa @ Nov 21 2007, 19:55) ...   Nov 21 2007, 16:13
- - gotty   Если кого интересует лекарство (генератор ключа), ...   Oct 22 2007, 08:09
|- - Dog Pawlowa   Цитата(gotty @ Oct 22 2007, 12:09) Если к...   Nov 14 2007, 15:06
|- - diper   Цитата(Dog Pawlowa @ Nov 14 2007, 19:06) ...   Nov 14 2007, 18:55
- - VAI   2 Dog Pawlowa А Вы не текстовым редактором пытаете...   Nov 15 2007, 06:20
- - gotty   2 Dog Pawlowa Если не осилите правку бинарных файл...   Nov 15 2007, 06:43
|- - Dog Pawlowa   Спасибо всем, не оставившим наедине с хакерской на...   Nov 15 2007, 16:50
|- - Иваныч   Цитата(Dog Pawlowa @ Nov 15 2007, 20:50) ...   Nov 15 2007, 18:03
|- - diper   Цитата(Dog Pawlowa @ Nov 15 2007, 20:50) ...   Nov 15 2007, 23:20
|- - Dog Pawlowa   Продолжаю переводить проекты на 4.10. В одном из п...   Nov 19 2007, 08:12
- - VAI   ЦитатаКуда в 4.10a деваются константы, не пойму до...   Nov 20 2007, 04:56
- - VAI   ЦитатаЧем вызвана такая такая нелюбовь к Code moti...   Nov 20 2007, 08:48
- - akostin   Такая проблема. У меня в Симуляторе IAR for MSP 4....   Nov 24 2007, 14:19
|- - akostin   Цитата(akostin @ Nov 24 2007, 17:19) Пров...   Nov 25 2007, 17:08
|- - rezident   Цитата(akostin @ Nov 25 2007, 22:08) Вот ...   Nov 26 2007, 03:17
- - Bovolk   Наступил на грабли при вызове ассемблерных процеду...   Nov 30 2007, 21:45
- - М430   Уважаемые, а кто может объяснить такое поведение к...   Jan 23 2008, 14:15
|- - Сергей Борщ   Цитата(М430 @ Jan 23 2008, 16:15) Уважаем...   Jan 23 2008, 15:07
||- - М430   Цитата(Сергей Борщ @ Jan 23 2008, 17:07) ...   Jan 23 2008, 19:41
||- - rezident   Цитата(М430 @ Jan 24 2008, 00:41) А у вас...   Jan 23 2008, 19:58
||- - М430   Цитата(rezident @ Jan 23 2008, 21:58) У к...   Jan 24 2008, 12:47
||- - rezident   Цитата(М430 @ Jan 24 2008, 17:47) А если ...   Jan 24 2008, 20:55
||- - NoName   Цитата(М430 @ Jan 24 2008, 14:47) Ну с ве...   Feb 25 2008, 14:18
||- - CAHTA_1939   Цитата(NoName @ Feb 25 2008, 17:18) у мен...   Feb 25 2008, 17:57
||- - NoName   Цитата(CAHTA_1939 @ Feb 25 2008, 19:57) в...   Feb 26 2008, 10:52
||- - NoName   Цитата(NoName @ Feb 26 2008, 12:52) эпопе...   Feb 26 2008, 13:14
||- - gotty   Цитата(NoName @ Feb 26 2008, 15:14) НЕ ЗА...   Feb 26 2008, 14:13
|- - diper   Цитата(М430 @ Jan 23 2008, 17:15) Уважаем...   Jan 23 2008, 16:24
- - CAHTA_1939   установил себе новую версию IAR'а ... можно бы...   Feb 24 2008, 22:40
- - jorikdima   У меня юсб программатор олимекса и этот иар, все о...   Feb 26 2008, 08:55
- - diper   У меня тоже похоже накрыло... На работе поставил н...   Feb 26 2008, 16:54
|- - diper   Продолжение: - от проекта не зависит - от типа отл...   Feb 26 2008, 19:00
- - diper   Победил! У него явно какойто косяк свзяанный...   Feb 27 2008, 10:44


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 23:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01472 секунд с 7
ELECTRONIX ©2004-2016