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

 
 
> Приотладке не заходит в прерывание, почему??
Vyatsek
сообщение Sep 16 2005, 09:26
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 20
Регистрация: 24-03-05
Пользователь №: 3 637



#include <intrinsics.h>
#include <iom16.h>
#include <string.h>


void InitTimer()
{
TIMSK=0x10;
TCCR1A=0x10;
TCCR1B=0x0A;
OCR1AL=0x30;OCR1AH=0x00;
OCR1BH=0x00;OCR1BL=0x07;
PORTD=0x00;
DDRD=0x10;
}



#pragma vector=0x00C //timer comp a
__interrupt void qinterrupt(void)
{
char c;
c='4';
}



int main( void )
{
__enable_interrupt();
InitTimer();
while(1);
}

при отладке не заходит в прерывание и как правильно в IAR написать прерывание на таймер, кто знает подскажите или пример кода привидите
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
BVU
сообщение Sep 16 2005, 10:43
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 301
Регистрация: 30-11-04
Из: Россия, Н.Новгород
Пользователь №: 1 264



Недавно писал, все работает, как часы! Вернее часы и работают, с погрешностью 2сек. за 24 часа (кварц хороший попался smile.gif ):

// IRQ TIMER1_COMPA
#pragma vector = TIMER1_COMPA_vect
__interrupt void timer1_compA_Processing(void)
{
char pd;

tick++;
***
***
***
__enable_interrupt();
}

void InitTimers(void)
{
/* Initialization Timer1 */
OCR1A = EIGHTH_sec; // Set compare value on one second.
TIMSK = (1 << OCIE1A); // Set mask to enable Timer1A compare interrupt.
TIFR = (1 << OCF1A); // Clear pending interrupts Timer1A.
TCCR1B = ((1 << WGM12) | (1 << CS11) | (1 << CS10)); // Set CTC and prescaller on 64.
}

Рекомендую Вам использовать форму записи битовой инициализазии такую: 1 << WGM12. Это просто наглядней и дает меньше шансов запутаться, хотя каждый делает на свой 'цвет'. glare.gif


--------------------
Не корысти ради, не в целях наживы, а во исполнение велений души!
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 19:17
Рейтинг@Mail.ru


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