Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

AVRstudio и С, обработка прерывания по переполнению счетчика

Отправлено mooz 04 сентября 2007 г. 18:48


в AVRstudio я написал:

#include

void ioinit (void)
{
инициализация портов и проч.

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: 8000.000 kHz
// Mode: Normal top=FFh
// OC0A output: Disconnected
// OC0B output: Disconnected
TCCR0A=0x00;
TCCR0B=0x01;
TCNT0=0x00;
OCR0A=0x00;
OCR0B=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x02;

sei(); // Global enable interrupts

}//end of ioinit

//================================
ISR(TIMER0_OVF_vect)//функция обработки прерывания
{
код, выполняемый при прерывании
}
//================================

int main (void)
{
ioinit ();
всякий код
}
//================================
ВОПРОСЫ:
1. после второго вызова ISR(TIMER0_OVF_vect)программа не выходит из функции.
2. если в программе есть функция ISR(TIMER0_OVF_vect) счетчик считает не до конца (не до 0хFF а меньше).

что я делаю непправильно?



Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
умножьте 3 на единицу:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru