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

 
 
> ignoring #pragma vector, Почемуто игнорирует создания функции прерывания
zkrvova
сообщение Jul 26 2006, 11:15
Сообщение #1





Группа: Новичок
Сообщений: 10
Регистрация: 4-04-06
Пользователь №: 15 778



Хочу запустить пример с прерыванием:
#pragma vector=CANIT_vect
__interrupt void __interrupt_can_it(void)

но компилятор выдает:
warning:ignoring #pragma vector
error: syntax error before "void"


Мне кажется что вторая ошибка происходит из-за первого предупреждения, но почему это вылазит и как это побороть незнаю.

Помогите пожалуйста!

Заранее благодарен!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zltigo
сообщение Jul 26 2006, 12:01
Сообщение #2


Гуру
******

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



Цитата(zkrvova @ Jul 26 2006, 14:15) *
__interrupt

Нет такого слова. Есть __irq.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
_Bill
сообщение Jul 26 2006, 12:41
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(zltigo @ Jul 26 2006, 15:01) *
Цитата(zkrvova @ Jul 26 2006, 14:15) *

__interrupt

Нет такого слова. Есть __irq.

Ну, это как сказать.
Код
/*      Interrupt handlers      */

#pragma vector = TIMER0_OVF_vect
__interrupt void Timer0_Int(void)
        {
        TCNT0   = 100;                  // Reload TIMER0
        IntFlags |= TIMER0_BIT;         // Set the flag
        }

#pragma vector = TIMER1_COMPA_vect
__interrupt void Timer1_Int(void)
        {
        IntFlags |= TIMER1_BIT;        // Set the flag
        }
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 26 2006, 12:49
Сообщение #4


Гуру
******

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



Цитата(_Bill @ Jul 26 2006, 15:41) *
Ну, это как сказать.

Смотрим на ветку, которая называется "IAR how to" и прямо говорим - нету.
Правда это подветка "AVR" которым я не пользуюсь...
Так-что варианты конечно возможны :-)


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
dxp
сообщение Jul 26 2006, 13:10
Сообщение #5


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(zltigo @ Jul 26 2006, 19:49) *
Цитата(_Bill @ Jul 26 2006, 15:41) *

Ну, это как сказать.

Смотрим на ветку, которая называется "IAR how to" и прямо говорим - нету.
Правда это подветка "AVR" которым я не пользуюсь...
Так-что варианты конечно возможны :-)

Кроме AVR еще и для MSP430 тоже используется вариант __interrupt. И для других тоже - это вообще их (IAR) традиционный вариант, который ранее был просто interrupt, а позже они привели его к более кошерному __interrupt. Т.ч. АРМ тут как раз в меньшинстве. smile.gif


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 18:09
Рейтинг@Mail.ru


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