Перейти к содержанию
    

Какой компилятор выбрать IAR или Keil?

Попроботвал GNU и KEIL

Один и тот же проект

FFT1024 во float

У KEILа код получился почти в 4 раза меньше (по размеру HEXа)

+ Работает в 10 раз быстрее

Компилятор и либы - это разные сущности. В общем случае одно от другого не зависит. Помнится, когда нас прижало, мы нашли GCC оптимизированную библиотеку float для ARM, которая на наших задачах давала выигрыш 5 раз. Сейчас найти не смог - сорри. :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Народ я сегодня скачал IAR Embedded Workbench for ARM Evaluation 4.30A дали лицензию на 30 дней подскажите где раздобыть лекарство а то 30 дней маловато

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Народ , что то я совсем запутался.

подскажите.

 

Значит у нас есть 2 сишника Keil и GNU Sygnus

оба работают через mVision

 

В этой ветке пробегадло сообщение про GNU GCC http://www.gnuarm.com/

скачал, поставил, к mVision не подключился, но

из "ARM Cross Development with Eclipse.pdf" вытащил как компилить "вручную"

 

получился батник

@echo off
c:\Micro\ARM\GNUARM\bin\arm-elf-as -ahls -mapcs-32 -o Startup.o Startup.s > Startup.lst
c:\Micro\ARM\GNUARM\bin\arm-elf-gcc -I./ -c -fno-common -O3 -g main.c timer.c serial.c ADC.c
c:\Micro\ARM\GNUARM\bin\arm-elf-ld.exe -v -Map main.map -TphyCore.ld -o main.out Startup.o main.o ADC.o serial.o timer.o
c:\Micro\ARM\GNUARM\bin\arm-elf-objcopy.exe -O ihex main.out main.hex
c:\Micro\ARM\GNUARM\bin\arm-elf-objdump.exe -x --syms main.out  > main.dmp
pause

 

Простой проект с таймером и лампочками откомпилился и работает

Проблемы появились с FTT

линкер стал выдавать ошибку типа

/complex.c:10: undefined reference to `__addsf3'

/complex.c:12: undefined reference to `__addsf3'

 

вот complex.c

7 Complex add(const Complex a,const Complex b)
8 {
9 Complex result;
10    result.r = a.r + b.r;
11    result.i = a.i + b.i;
12   return(result);
13}

typedef
struct{
  float r;
  float i;
  } Complex;

похоже что это из-за float. Типа линкер не нашел процедур сложения float

в libgcc.a они есть.

 

Кстати стоит ли вообще с этим компилером заниматься? Будет ли результат лучше чем у Sygnus?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

asen

Посмотрите здесь

 

http://www.caxapa.ru/mcu/wwwboard.html?id=38107

 

флэшка, как качать с рапидшары http://v572028.narod.ru/img/MATROSKINY.swf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

To asen

Самый простой и известный способ - установить на компьютере дату на год вперед.

Evgeny_CD

Компилятор и либы - это разные сущности.

Какая хорошая классика :) (правду может не в тему :bb-offtopic: - мы тоже лет так 12-13 назад поступали при использовании Си-ных компиляторов для Intel 8086/80С188)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

asen

 

а вторая ссылка нехочит скачивать и вобще что куда сувать

сувать надо в адресную строку Вашего интернет-броузера (IE).

1. Вы смотрели по ссылке на сахару? Там написан пароль на архив и дана ссылка. По этой ссылке надо скачать лекарство, используя пароль и winrar не моложе версии 3.40 открыть архив и действовать в соответствии с инструкциями на лекарство.

 

Чтобы качать с ресурса "рапидшаре" надо нажать конпку "Free", откроется счетчик, когда он дотикает до 0 появится ссылка на файл. Что и показывается на флэшке.

 

Фаил *.swf

2. Если Вам все-таки не понятно, как скачивать с рапидшары, но у Вас не получается запустить в строке бровзера или скачать флэшку (это из-за narod.ru)

http://v572028.narod.ru/img/MATROSKINY.swf , зайдите на http://v572028.narod.ru и увидите эту флэшку в окне бровзера.

Флэшка размером 300 кб, поэтому, в зависимости от скорости Вашего соединения, вам надо подождать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну не ставится у меня и с новым генератором лицензий - LICENSE ERROR 208 RENEW LICENSE ID :(

 

Может еще какие то данные при проверке лицензии использует кейл кроме ID computer?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А почему всё-таки Keil а не IAR.

Я работал правда не под ARM-ы, а под Atmel AVR и 8051, но мнение сложилось однозначное - ни за какие коврижки я Keil-ом пользоваться не буду. Код получается большой и тормозной + определённые глюки компилятора.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А почему всё-таки Keil а не IAR.

Я работал правда не под ARM-ы, а под Atmel AVR и 8051, но мнение сложилось однозначное - ни за какие коврижки я Keil-ом пользоваться не буду. Код получается большой и тормозной + определённые глюки компилятора.

Вот блин! А я то думал...

А если серьезно, то компилятор С от Keil для 8051 один из лучших, а вся среда, включая симулятор на первом месте среди всего остального! Так что рискну не согласиться с вашим мнением. А глюков хватает и в других компиляторах. Код вполне приемлемый и по скорости и по длине.

 

А вот для ARM нужен, т.к. умеет работать с GCC/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2Make_Pic

Так у Вас получилось установить?

Нет, и апдейт не катит. Действительно прийдется на новый винт новую винду, но это позже - нет времени.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2Make_Pic

Так у Вас получилось установить?

Попылся поставить на XP, где и муха не сидела - те же грабли!!! Может я что-то не так делаю? Можно по пунктам установку?

Или генератор лицензий 2 только под WIN2000?

 

Я делаю так: запускаю инсталлятор карм240, заполняю имя орг. и т.д. от фонаря, далее ставлю в каталог C:\КЕIL, после finish запускаю кейлиц 2, устанавливаю АРМ, v2, генерю лицензию и сериал, далее в tооls.ini во все секции после [] ставлю LIС0= и SN= полученные выше, далее запускаю UV3

и смотрю эбаут, в нем виден номер лицензии, но период до 201X года нет, призапуске деббагера ошибка ERR208. Все то же для карм15 прокатывает!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...