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

 
 
> LPC2131 + IAR
iordy
сообщение Jan 28 2010, 21:17
Сообщение #1





Группа: Участник
Сообщений: 12
Регистрация: 28-01-10
Из: Вильнюс, Литва
Пользователь №: 55 127



В поиске не нашёл, так спрошу тут:
Проблема в коде инициализации, ИАР инициируя стэк почему-то считает, что рамы начинаются со второго мегабайта адресного пространства(0x00100000). Соответственно инициирует на 1Мб+8кб адрес. В c-spy всё идёт, на деле же ничего не пускается (резервированная область). Пробовал в кейле - проблем нет
Нужно цеплять какой-то дополнительный файл с инициализацией на асме ?

Уж извиняйте если что не так, раньше писал только на асме под авр smile.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 4)
Сергей Борщ
сообщение Jan 28 2010, 21:31
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(iordy @ Jan 28 2010, 23:17) *
Нужно цеплять какой-то дополнительный файл с инициализацией на асме ?
Нет, нужно "цеплять" скрипт линкера с распределением памяти. В версиях 4.x он имеет расширение .xcl, в 5.xx - .icf. Образцы ищите в папках примеров.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 28 2010, 21:32
Сообщение #3


Гуру
******

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



Цитата(iordy @ Jan 29 2010, 00:17) *
В поиске не нашёл, так спрошу тут:

Надо просто ознакомится с документацией на линкер и указать ему, что где находится. Все.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
iordy
сообщение Jan 28 2010, 21:57
Сообщение #4





Группа: Участник
Сообщений: 12
Регистрация: 28-01-10
Из: Вильнюс, Литва
Пользователь №: 55 127



Разобрался smile.gif Большое спасибо!!
Go to the top of the page
 
+Quote Post
iordy
сообщение Jan 30 2010, 11:12
Сообщение #5





Группа: Участник
Сообщений: 12
Регистрация: 28-01-10
Из: Вильнюс, Литва
Пользователь №: 55 127



Сравнил для себя Keil и IAR, возможно кому-то результаты пригодятся:
IAR 5.40(оптимизация - High, Size)
Keil 4.00(оптимизация - O3)
LPC2131(не /01) 60MHz MAM=full, MAM clk=3

Арифметика, целые:
ARM Размер : IAR - 5.60, Keil - 6.37, Keil microlib - 5.69
Thumb Размер: IAR - 4.31, Keil - 4.67, Keil microlib - 3.98

ARM Скорость : IAR - 62.4, Keil - 57.4, Keil microlib - 11.8
Thumb Скорость: IAR - 60.5, Keil - 53.6, Keil microlib - 11.8

Те же вычисления, но в плавучке:
ARM Размер : IAR - 9.55, Keil - 11.91, Keil microlib - 9.09
Thumb Размер: IAR - 7.86, Keil - 9.48, Keil microlib - 6.54

ARM Скорость : IAR - 3.95, Keil - 5.85, Keil microlib - 0.38
Thumb Скорость: IAR - 3.86, Keil - 5.62, Keil microlib - 0.37

Вывод на лцд(122х32), 8бит(скорость - фпс):
ARM Размер : IAR - 5.06, Keil - 5.58, Keil microlib - 4.90
Thumb Размер: IAR - 3.96, Keil - 4.16, Keil microlib - 3.47

ARM Скорость : IAR - 1136, Keil - 1156, Keil microlib - 1185
Thumb Скорость: IAR - 1024, Keil - 1076, Keil microlib - 1086

I2C EEPROM(1MHz) случайное чтение поллингом(скорость - кб/с):
ARM Размер : IAR - 4.88, Keil microlib - 5.32
Thumb Размер: IAR - 3.82, Keil microlib - 3.70

ARM Скорость : IAR - 18.51, Keil microlib - 18.52
Thumb Скорость: IAR - 18.38, Keil microlib - 18.50

Немного удивило что плавучка в 10-15раз медленней, думал разница будет больше

Сообщение отредактировал iordy - Jan 30 2010, 11:17
Go to the top of the page
 
+Quote Post

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

 


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


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