[an error occurred while processing this directive]
IAR Embedded Workbench Как одну функцию разместить в разных сегментах?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
ВМФ
17 января 2006 г. 09:41
Составить ответ
|||
Конференция
|||
Архив
Ответы
Может быть inline поможет?
—
vmp
(17.01.2006 11:09
62.117.78.2
,
пустое
)
А ей можно назначить отдельный сегмент?
—
ВМФ
(17.01.2006 11:21
195.170.224.107
,
пустое
)
гм. по крайней мере иар не ругается на 2 прагмы - инлайн и локейшн. а вот будет ли это работать - сомневаюсь...
—
She
(17.01.2006 11:25
195.131.131.149
,
пустое
)
А инлайн для него только разрешение, а делать или нет это на его усмотрение.
—
Codavr
(17.01.2006 12:37
193.233.48.103
,
пустое
)
я про inline=forced
—
She
(17.01.2006 12:44
195.131.131.149
,
пустое
)
Может быть стандартно- с разными именами, а потом вызывать по адресу, заведя для этого указатель-функцию.
—
BlackJack
(17.01.2006 10:03
217.30.255.215
,
пустое
)
Сам то понял что сказал?
—
Codavr
(17.01.2006 09:55
193.233.48.103
,
пустое
)
Или имеется ввиду, что половина функции в одном, половина в другом. Формулируйте яснее.
—
Codavr
(17.01.2006 09:56
193.233.48.103
,
пустое
)
Одна десятая в одном, девять десятых в другом :)
—
ВМФ
(17.01.2006 10:03
195.170.224.107
,
пустое
)
В функции сделать вызов другой функции, размещенной в другом сегменте.
—
Бред
(17.01.2006 10:21
80.243.9.34
,
пустое
)
Нехочется вызывать функцию из прерывания
—
ВМФ
(17.01.2006 10:36
195.170.224.107
,
пустое
)
ну так сделайте inline функцию
—
She
(17.01.2006 11:13
195.131.131.149
,
пустое
)
сорри, глюки
—
She
(17.01.2006 11:14
195.131.131.149
,
пустое
)
процессор?
—
Xylene
(17.01.2006 10:39
212.58.192.14
,
пустое
)
ATMega
—
ВМФ
(17.01.2006 10:46
195.170.224.107
,
пустое
)
что-то не понимаю задачу. Хочется разместить функцию прямо по вектору и даже rjmp не делать?
—
Xylene
(17.01.2006 11:01
212.58.192.14
,
пустое
)
Сори, сразу не въехал. rjmp по вектору может быть, может не быть. Фишка в том, может ли сегмент функции прерывания быть немонолитным...
—
ВМФ
(17.01.2006 11:09
195.170.224.107
,
пустое
)
А зачем вообще такой гимор. Сделай отдельный сегмент для своей функции и все. Помести куда нравиться.
—
Codavr
(17.01.2006 11:28
193.233.48.103
,
пустое
)
Хотел чтоб часть прерывания уарта в буте находилась, а часть в апликейшене
—
ВМФ
(17.01.2006 11:57
195.170.224.107
,
пустое
)
Представляется мне только как асмовый вызов функции с __task.
—
Codavr
(17.01.2006 12:16
193.233.48.103
,
пустое
)
А почему все прывание в boot не сунуть?
—
Бред
(17.01.2006 12:09
80.243.9.34
,
пустое
)
Хотел иметь возможность изменения части прерывания неотвечающей за программирование при полной защите бута
—
ВМФ
(17.01.2006 12:21
195.170.224.107
,
пустое
)
Если время жмет, то асм. Иначе только вызов функции. В С функция штука неделимая как атом.
—
Codavr
(17.01.2006 12:46
193.233.48.103
,
пустое
)
Бут не резиновый.
—
Codavr
(17.01.2006 12:15
193.233.48.103
,
пустое
)
Да и аппликейшн перегружаться может в процессе работы. У меня, например, вначале загружается в проц лоадер потом в процессе калибровки устройства трижды меняется аппликуха и в конце еще во флешь прописываются константы и пользовательский вариант проги.
—
Codavr
(17.01.2006 12:21
193.233.48.103
,
пустое
)
С ассемблером все ясно - rjmp & org рулят. А вот как написать это на Сях?...
—
ВМФ
(17.01.2006 11:06
195.170.224.107
,
пустое
)
#pragma segmant не рулит?
—
Бред
(17.01.2006 11:34
80.243.9.34
,
пустое
)
Ну С не обладают такой гибкостью как асм. Мне например нивкакую не удалось такое жульство (+)
—
Codavr
(17.01.2006 11:33
193.233.48.103
, 254 байт)
два экземпляра функции ?
—
_
(17.01.2006 09:53
81.195.17.56
,
пустое
)
А что ты хочешь получить? Может быть подойдет __ramfunc?
—
vmp
(17.01.2006 09:49
62.117.78.2
,
пустое
)
невозможно мне кажется
—
Xylene
(17.01.2006 09:42
212.58.192.14
,
пустое
)
Отправка ответа
Имя (обязательно):
Пароль:
E-mail:
NoIX ключ
:
Запомнить
Тема (обязательно):
Сообщение:
Ссылка на URL:
Название ссылки:
URL изображения:
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
E-mail:
info@telesys.ru