Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 02.09.2011, 16:29  
Archer07
Прописка
 
Регистрация: 25.03.2009
Сообщений: 137
Сказал спасибо: 22
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
Archer07 на пути к лучшему
По умолчанию Почему не работает код с прерываниями

Код:
void main(void)
{
	 USARTinit(MYUBRR);

	 TIMSK=(1‹‹TOIE0)|(1‹‹TOIE1); // разрешаем прерывания от Timer0 и Timer1
	 TCNT1H=0;
	 TCNT1L=0;
	 TCNT0=0;
	 
	 TCCR0=0b00000100;  // запускаем Timer0 с предделителем 1:256
	 TCCR1B=0b00000111; // внешний сигнал T1 по фронту
	 
	 sei();
	 
    while(1);

ISR(TIM0_OVF_vect)
{ 
	sendChar(0xAA);			
} 

}
В терминале ничего нет, как будто прерывания и не происходят.
Может кто укажет, где тут не правильно.
Реклама:
Archer07 вне форума  
Непрочитано 02.09.2011, 17:05  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

Какой контроллер? TCCR 2 штуки обычно
niXto вне форума  
Непрочитано 02.09.2011, 17:09  
Archer07
Прописка
 
Регистрация: 25.03.2009
Сообщений: 137
Сказал спасибо: 22
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
Archer07 на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

в протеусе нет at90usb162, поэтому симулирую atmega16
один 8 битный, другой 16 битный.
Archer07 вне форума  
Непрочитано 02.09.2011, 17:42  
ForcePoint
Почётный гражданин KAZUS.RU
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,798
Сказал спасибо: 2,913
Сказали Спасибо 3,121 раз(а) в 2,111 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

1. Может это передача через USART или его инициализация с ошибкой?
2. "Моргание светодиодиком" вставить после "sendChar(0xAA)".
ForcePoint вне форума  
Непрочитано 02.09.2011, 17:49  
baiderin
Почётный гражданин KAZUS.RU
 
Аватар для baiderin
 
Регистрация: 10.12.2007
Адрес: Екатеринбург
Сообщений: 2,727
Сказал спасибо: 2,418
Сказали Спасибо 894 раз(а) в 581 сообщении(ях)
baiderin на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

А обработку в теле main можно писать?
Программа отсюда
while(1);
не выйдет.
baiderin на форуме  
Непрочитано 02.09.2011, 19:31  
Archer07
Прописка
 
Регистрация: 25.03.2009
Сообщений: 137
Сказал спасибо: 22
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
Archer07 на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

baiderin, из while(1); мне и не нужно чтобы выходил,
пусть прерывания обрабатывает нормально, и это все.
USART функции проверил, они рабочие.

TIMSK это один регистр в одних контроллерах, но в некоторых есть и
TIMSK0, TIMSK1 или я не прав?
Archer07 вне форума  
Непрочитано 02.09.2011, 20:36  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

Сообщение от Archer07 Посмотреть сообщение
в протеусе нет at90usb162, поэтому симулирую atmega16
один 8 битный, другой 16 битный.
В настройках проекта Протеуса хоть указана мега16?
niXto вне форума  
Непрочитано 02.09.2011, 21:16  
nonamedov
Почётный гражданин KAZUS.RU
 
Регистрация: 06.06.2008
Сообщений: 1,530
Сказал спасибо: 78
Сказали Спасибо 427 раз(а) в 365 сообщении(ях)
nonamedov на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

Сообщение от Archer07 Посмотреть сообщение
void main(void)
А что main уже void?! Можно еще сузить круг поиска, запретив прерывания Т1.
А если серьезно, что пошаговую отладку сложно сделать?! Все ведь уже знают, что у Протеуса бывают заморочки!

Последний раз редактировалось nonamedov; 03.09.2011 в 04:12.
nonamedov вне форума  
Непрочитано 03.09.2011, 10:45  
heady69
Прописка
 
Регистрация: 25.09.2009
Адрес: Ivanovo
Сообщений: 156
Сказал спасибо: 3
Сказали Спасибо 67 раз(а) в 60 сообщении(ях)
heady69 на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

Сообщение от Archer07 Посмотреть сообщение
в протеусе нет at90usb162, поэтому симулирую atmega16
один 8 битный, другой 16 битный.
Завязывай со шпротеусом. Лучше в дебаггере AVRStudio,а еще лучше в IAR там можно и "СИкать" и отлаживать в одном флаконе.

Последний раз редактировалось heady69; 03.09.2011 в 10:50.
heady69 вне форума  
Непрочитано 03.09.2011, 14:41  
ut1wpr
Почётный гражданин KAZUS.RU
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Почему не работает код с прерываниями

Сообщение от nonamedov Посмотреть сообщение
А что main уже void?!
А кто сказал, что main() обязан что-то возвращать?
ut1wpr вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Есть схема, имеются простые вопросы: почему так, а не этак? already_over Электроника - это просто 4 17.11.2010 22:27
MPLAB IDE и HI-TECH 18 s-4ern Микроконтроллеры, АЦП, память и т.д 16 17.09.2009 14:06
преобразование позиции бита в код Beduin Микроконтроллеры, АЦП, память и т.д 26 29.06.2007 19:05
PROTEUS не работает crystall Proteus 1 21.11.2006 00:27


Часовой пояс GMT +4, время: 19:15.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot