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

 
 
> SWI в ST91x, Как вызвать SWI в ST.
Usatyj
сообщение Aug 13 2008, 07:40
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 19
Регистрация: 1-02-07
Пользователь №: 24 931



Есть примеры использования SWI в LPC.
Это выглядит примерно следующим образом:

Объявление SWI обработчика
#pragma swi_number=0x10
__swi __arm u16 SWI_Func(int a)
{
return 0;
}

Вызов
SWI_Func(1);

Одним словом работаем как с обычной функцией, только её адрес находится в специальной таблице,
меняется режим работы на привилегированный, и запрещаются прерывания.

Но когда я вызываю SWI в ST911, - выполняется инструкция SWI 0x10, после чего меня выкидывает
в SWI_Handler(), файла 91x_it.c из stdlib. Вообщем вместо обработки конкретной функции, у меня
просто возникает SWI прерывание.

Что я делаю не так?
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 25th June 2025 - 17:07
Рейтинг@Mail.ru


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