[an error occurred while processing this directive]
А так?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Сергей Борщ 11 мая 2006 г. 10:50
В ответ на: Подскажите по LPC2148. Кому то потратить 5 минут, амне несколько дней разбираться :) отправлено Aleksey_n 11 мая 2006 г. 10:09


typedef void (*int_handler_t)();
#pragma vector = IRQV
__irq __arm void IRQ_handler(void) {
(*(int_handler_t)VICVectAddr)(); // Get address from VIC, execute handler
VICVectAddr = 0; // Clear interrupt in VIC.
}

void EINT0Irq(void)
{
LedBlink(); // Инвертируем (мигаем светодиодом)(тоже работает)
EXTINT = 0x00000001;
VICVectAddr = 0x00000000;
}

int main()
{
FrecInit();
LedInit(); // Это все работает

PINSEL0=0x0000000C; // Включим EINT0
EXTMODE=0x00000001; //
VICVectCntl0=0x0000002E; // Слот для прерывания EINT0
VICVectAddr0=(unsigned) EINT0Irq; // Адрес обработчика
VICIntEnable = 0x00004000; // Разрешим INT0

__enable_interrupts();

while(1) {
}
}


С эти прерыванием не работал, поэтому не проверял VecCntl

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru