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

 
 
4 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Новая версия 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
diper
сообщение Oct 19 2007, 21:31
Сообщение #2


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

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



Цитата(zltigo @ Oct 20 2007, 01:09) *
Появился свежий компилятор для MSP430 - перепрыгнул аж на 4 версию.

Плиз, залей на FTP, что то не хочет он 30дневку мне отдавать..((
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 19 2007, 22:14
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 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
zltigo
сообщение Oct 19 2007, 22:20
Сообщение #4


Гуру
******

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



Цитата(rezident @ Oct 20 2007, 01:14) *
Оп-па! zltigo уже успел присоединить мое сообщение к своей малоинформативной ветке, хотя на мой взгляд следовало бы наоборот сделать wink.gif

Спокойно! Cделано именно наоборот, но сортировка, естественно, работает по времени создания постов.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
msalov
сообщение Oct 22 2007, 08:09
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Если кого интересует лекарство (генератор ключа), то его можно сделать из electronix.ru/forum/index.php?act=Attach&type=post&id=2254
Для этого достаточно прочитать инструкцию в lz0.nfo.rus с небольшими дополнениями: менять ..... на 9.

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


Гуру
******

Группа: Свой
Сообщений: 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
сообщение Oct 22 2007, 14:19
Сообщение #7


Гуру
******

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



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

Не знаю. Готового устройства, для которого была написана именно эта прога, сейчас нету, закончились. Как изготовят, так я и проверю. С другими проектами, написанными в 3.30A, пока экспериментировать некогда. Если только на следующей неделе.
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Nov 14 2007, 15:06
Сообщение #8


Гуру
******

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



Цитата(gotty @ Oct 22 2007, 12:09) *
Если кого интересует лекарство (генератор ключа), то его можно сделать из electronix.ru/forum/index.php?act=Attach&type=post&id=2254
Для этого достаточно прочитать инструкцию в lz0.nfo.rus с небольшими дополнениями: менять ..... на 9.

Решил таки попробовать - не получается у меня правильно пропатчить - программа при запуске говорит, что "программа не умещается в памяти". Помогите, люди добрые, приобщиться к разумному, доброму, вечному.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
diper
сообщение Nov 14 2007, 18:55
Сообщение #9


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

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



Цитата(Dog Pawlowa @ Nov 14 2007, 19:06) *
...говорит, что "программа не умещается в памяти".

Редактор "плохой". Видимо что лишнее патчит, напрмер табуляции пробелами заменяет или перводы строки. Возьми например типа www.hhdsoftware.com/Products/home/hex-editor-free.html
Go to the top of the page
 
+Quote Post
VAI
сообщение Nov 15 2007, 06:20
Сообщение #10


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



2 Dog Pawlowa
А Вы не текстовым редактором пытаетесь патчить исполняемый файл?
Вам нуден редактор бинарных файлов.
Я использую "Hiew". Поищите в гугле. У него нет ограничения на объём редактируемого файла.


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
msalov
сообщение Nov 15 2007, 06:43
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



2 Dog Pawlowa
Если не осилите правку бинарных файлов, можете воспользоваться патчем для генератора, ссылку на который(генератор) я приводил выше.
Удачи.

Сообщение отредактировал gotty - Nov 15 2007, 07:15
Прикрепленные файлы
Прикрепленный файл  iarkgpatch.zip ( 14.39 килобайт ) Кол-во скачиваний: 220
 
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Nov 15 2007, 16:50
Сообщение #12


Гуру
******

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



Спасибо всем, не оставившим наедине с хакерской наукой smile.gif

Уже получил результаты:

Код
Fatal Error[e106]: Syntax error or bad argument in  x.xcl 70
-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0300

Fatal! Execution terminated...
Error while running Linker


Разбираться буду завтра, но кажется, что именно эту строчку я исправлял при переходе с 2.XX на 3.XX.
Никакой фантазии у них нет... "Храм-бассейн-храм.."


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
Иваныч
сообщение Nov 15 2007, 18:03
Сообщение #13


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

Группа: Свой
Сообщений: 188
Регистрация: 5-10-05
Из: Советский Союз
Пользователь №: 9 244



Цитата(Dog Pawlowa @ Nov 15 2007, 20:50) *
Код
Fatal Error[e106]: Syntax error or bad argument in  x.xcl 70
-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0300

Fatal! Execution terminated...
Error while running Linker
Вы, наверное, используете свой (не тот, что по-умолчанию) XCL файл, а он у Вас заточен под предыдущую версию.
Найдите в папке $TOOLKIT_DIR$\CONFIG\ нового ИАРа файл XCL для Вашего проца и подправьте свой XCL по аналогии.
Go to the top of the page
 
+Quote Post
diper
сообщение Nov 15 2007, 23:20
Сообщение #14


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

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



Цитата(Dog Pawlowa @ Nov 15 2007, 20:50) *
Код
Fatal Error[e106]: Syntax error or bad argument in  x.xcl 70
-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0300
Fatal! Execution terminated...
Error while running Linker


Вроде _HEAP_SIZE заменить на _DATA16_HEAP_SIZE.
Или посмотреть в новых xcl файлах как уже рекомендовали выше....
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Nov 19 2007, 08:12
Сообщение #15


Гуру
******

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



Продолжаю переводить проекты на 4.10.
В одном из проектов новая версия обнаружила, что дважды описана функция прерывания по передаче порта sad.gif Посмотрел - точно, в модуле uart - рабочее прерывание, в main - заглушка.
Возник риторический вопрос - а что же там молча компилировала версия 3.ХХ ? 07.gif
Еще одна галка в пользу перехода на новые версии.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post

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

 


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


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