Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
надо полностью написать обработку прерывания на asm в отдельном модуле и подключить этот модель в проект.
Отправлено
Elektronik
16 июня 2007 г. 18:46
В ответ на:
Привет! Юзаю C, IAR AVR. Напомните, что надо указать компилятору, чтобы он перед вызовом ф-ции не сохранял регистры в стеке? Хочу модуль прерывания на на asm-е написать.
отправлено <font color=gray>P_Andrey</font> 16 июня 2007 г. 18:19
Ассемблерная вставка в обработчике прерывания не спасет от сохранения регистров в стеке. А уж если в обработчике прерывания вы вызовите еще одну функцию, то просто тушите свет. Сохраняться будет огромный оверхед.
Составить ответ
|
Вернуться на конференцию
Ответы
Я так и сделал. Только все равно все регистры сохраняются.
—
P_Andrey
(16.06.2007 19:05:8
192.168.0.49
, 133 байт)
привет,земляк (+)
—
M@RS
(16.06.2007 19:26:51
77.123.70.142
, 1048 байт)
кстати дельный совет. Я чего-то в мануале на тему __monitor рылся, но это не то. А __task - ближе. Но на асме все еще проще
—
DASM
(16.06.2007 19:31:0
212.58.192.14
,
пустое
)
В предыдущих версиях небыло... это в 4.11 они затарабанили. Основное применение для операционки.. (+)
—
M@RS
(16.06.2007 19:35:29
77.123.70.142
, 49 байт)
О! Здоров! А примерчик имеется? А таск - все наоборот. внутри (+)
—
P_Andrey
(16.06.2007 19:41:8
192.168.0.49
, 200 байт)
Да примеров нет... заставишь личнопроверить.. :-))
—
M@RS
(16.06.2007 19:44:44
77.123.70.142
,
пустое
)
дык я в ново доке проглядел, хотя оно там есть. Так что автору топика совет - последовать твоему примеру однозначно.
—
DASM
(16.06.2007 19:36:42
212.58.192.14
,
пустое
)
По ссылкам на Сахаре, которые я дал сразу, этот __task и был предложен. А ты сразу "фошысты, фошысты" - весь кайф выпустил :))
—
=AVR=
(16.06.2007 19:43:4
80.92.96.19
,
пустое
)
один фик фошисты. Не люплю я их. Но это их личное дело - пусть танцуют под генеральскую дудку, я останусь свободным человеком - насколько это в рашке возможно. Недолго надеюсь
—
DASM
(16.06.2007 19:50:0
212.58.192.14
,
пустое
)
Что-то автор пропал..
—
M@RS
(16.06.2007 19:39:11
77.123.70.142
,
пустое
)
Выдержка из мануала на копилятор Иаровский.
—
M@RS
(16.06.2007 19:29:18
77.123.70.142
,
пустое
)
а зачем __intrrrupt ? Нах интеррапт. Прямо в весторе на асме пишешь джамп на свою ф-цию. И пусть попробуют пролог вставить. А __interrupt - это как раз прямое указания - сохраняй все что можешь
—
DASM
(16.06.2007 19:11:0
212.58.192.14
,
пустое
)
А пример можно, если не трудно? Я только тренируюсь смешивать си и асм.
—
P_Andrey
(16.06.2007 19:24:15
192.168.0.49
,
пустое
)
Ответ:
—
Саня
(16.06.2007 20:11:18
86.57.190.141
, 240 байт)
увы, я наооборот уже уже пиво с водеой не мешаю. Направление верное, но примеров нема
—
DASM
(16.06.2007 19:27:22
212.58.192.14
,
пустое
)
естественно по-другому. Целиком обработку прерывания на asm написать.
—
Elektronik
(16.06.2007 19:10:50
89.110.59.62
,
пустое
)
или целкой :-\
—
DASM
(16.06.2007 19:11:40
212.58.192.14
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
к трём прибавьте 5:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru