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

 
 
> ISR в µC/OS-II
Fat Robot
сообщение May 17 2006, 07:21
Сообщение #1


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



нашел такую вот сентенцию в книге:

3.09 Interrupts under µC/OS-II
µC/OS-II requires that an Interrupt Service Routine (ISR) be written in assembly language.

Нигде более никаких разъяснений по этому поводу не дается.

Может быть кто-то знает, что это за неприятное требование чем оно продиктовано и есть ли методика писания ISR на С.

Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
Andy Mozzhevilov
сообщение May 17 2006, 08:00
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Цитата(Fat Robot @ May 17 2006, 13:21) *
нашел такую вот сентенцию в книге:

3.09 Interrupts under µC/OS-II
µC/OS-II requires that an Interrupt Service Routine (ISR) be written in assembly language.

Нигде более никаких разъяснений по этому поводу не дается.

Может быть кто-то знает, что это за неприятное требование чем оно продиктовано и есть ли методика писания ISR на С.

Спасибо.


Это вроде как связано с ручным сохранением контекста при входе в isr. Поскольку в книге ucos рассматриватся на примере х86 и борланд Ц, то там надо было делать так.
Нужно ли это делать на конкретной платформе, зависит от этой платформы и компилятора, и возможно, порта ОС на эту платформу.
Я под uCOS писал для Fujitsu MB90 и ARM7 полностью на Ц.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение May 17 2006, 08:34
Сообщение #3


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Спасибо. Буду ковырять. Попрбую повторить Ваш позитивный опыт.
Go to the top of the page
 
+Quote Post
ig_z
сообщение May 18 2006, 11:36
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551



Цитата(Andy Mozzhevilov @ May 17 2006, 11:00) *
Нужно ли это делать на конкретной платформе, зависит от этой платформы и компилятора, и возможно, порта ОС на эту платформу.
Я под uCOS писал для Fujitsu MB90 и ARM7 полностью на Ц.


IAR мсп, встроенне языковые расширения посволяют обойтись без асм. Портил юкос и сцмртос.
Go to the top of the page
 
+Quote Post
Yra
сообщение May 20 2006, 18:36
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 396
Регистрация: 22-10-04
Из: Воронеж
Пользователь №: 962



Советую заглянуть на сайт микриума (www.micrium.com) там куча портов этой операционки под разные процессоры и компиляторы. ISR, хотя-бы
применительно к системному таймеру обычно находится в OS_CPU_C.C
Эту ISR и можно взять за основу (или весь порт целиком)


--------------------
всё можно наладить, если достаточно долго вертеть в руках /Законы Мерфи/
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение May 23 2006, 12:24
Сообщение #6


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Цитата(Yra @ May 20 2006, 22:36) *
Советую заглянуть на сайт микриума (www.micrium.com) там куча портов этой операционки под разные процессоры и компиляторы. ISR, хотя-бы
применительно к системному таймеру обычно находится в OS_CPU_C.C
Эту ISR и можно взять за основу (или весь порт целиком)


да что Вы говорите!! а я-то, дурак, пытаюсь в документацию вникнуть.
Go to the top of the page
 
+Quote Post

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

 


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


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