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

 
 
 
Reply to this topicStart new topic
> регистр TIFR, при утановке бита не переходит на прерыване
*SERG
сообщение Jul 28 2006, 08:00
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



GICR|=0b11000000;// разрешение внешних прерываний
MCUCR=0b00001110;//
TIMSK=0b01000001; //разрешение по переполнению 0 и 2 таймера
#asm("sei")
TIFR=0b00000001;
TIFR|=0b00000001;

проверяю, в AVRSTUDIO, когда ручками устанавливаю галочку на этом бите, то переходит на подпрограмму переполнения таймера, а программно, путём установки нулевого бита нет.
Почему?

Пишу в CVAVR
Go to the top of the page
 
+Quote Post
viakon
сообщение Jul 28 2006, 08:54
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 290
Регистрация: 9-12-05
Из: г. Пермь
Пользователь №: 12 002



Цитата(*SERG @ Jul 28 2006, 14:00) *
GICR|=0b11000000;// разрешение внешних прерываний
MCUCR=0b00001110;//
TIMSK=0b01000001; //разрешение по переполнению 0 и 2 таймера
#asm("sei")
TIFR=0b00000001;
TIFR|=0b00000001;

проверяю, в AVRSTUDIO, когда ручками устанавливаю галочку на этом бите, то переходит на подпрограмму переполнения таймера, а программно, путём установки нулевого бита нет.
Почему?


TIFR=0b00000001; этой командой сбрасывается флаг прерывания см. datasheet
установить прерывание записью в регистр в AVR нельзя

В студии запусти программу, когда таймер переполнится произойдет прерывание, это студия умеет симулировать
Go to the top of the page
 
+Quote Post

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

 


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


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