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

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

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

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

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

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

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 02.09.2012, 17:49  
gruffi
Прописка
 
Аватар для gruffi
 
Регистрация: 01.02.2012
Сообщений: 131
Сказал спасибо: 9
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
gruffi на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

пробовать буду позже, а ща гулять с доцей
Реклама:
gruffi вне форума  
Непрочитано 02.09.2012, 18:42  
mimuh64
Прописка
 
Регистрация: 29.10.2008
Сообщений: 272
Сказал спасибо: 0
Сказали Спасибо 102 раз(а) в 95 сообщении(ях)
mimuh64 на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

Сообщение от gruffi Посмотреть сообщение
пробовать буду позже, а ща гулять с доцей
Как нагуляешься, то сделай что бы заработало как в примере. Смотри на значение регистра сравнения. Частота МК 8 Мгц. Для таймера - предделитель на 64 (3), регистр сравнения 2450. При этом частота прерывания порядка 51 герца. Периодически пишешь в регистр OCR1A=2450 - var; или сразу заданное значение (но на уменьшение) .
Вложения:
Тип файла: rar M16.rar (53.6 Кб, 37 просмотров)

Последний раз редактировалось mimuh64; 02.09.2012 в 18:49.
mimuh64 вне форума  
Непрочитано 02.09.2012, 19:33  
gruffi
Прописка
 
Аватар для gruffi
 
Регистрация: 01.02.2012
Сообщений: 131
Сказал спасибо: 9
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
gruffi на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

спасибо большое, только сейчас попробовать не удастся, но не позже чем завтра попробую и отпишусь...
gruffi вне форума  
Непрочитано 02.09.2012, 20:08  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 343
Сказал спасибо: 180
Сказали Спасибо 64 раз(а) в 56 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

Сообщение от gruffi Посмотреть сообщение
вложил весь проект...конечно громко сказано, но я только учусь
В проекте частота 12 МН в протеусе 1МН и думаете будет работать?
Внешнее прерывание настройте на триггерный режим работы, иначе вместо одного прерывания получите кучу прерываний.(пока уровень на INT0 будет низким)
С кнопками тоже засада, вместо того, чтобы регулировать плавно, значения будет прыгать с максимума на минимум . При нажатии кнопки(даже при очень коротком нажатии) процедура выполнится много раз подряд
(проц то быстро работает)
После того как измените прогу(но лучше до того как) , почитайте про дребезг контактов кнопки.

Поправил вам немного ваш проект, теперь регулирует так как я описал(с максимума на минимум и назад)
Частоту таймера 1 я изменил.
Incubator.rar
Дальше сами поправляйте.
Почему в протеусе подключаете HEX а не ELF файл, вам что не нужна пошаговая отладка?

Последний раз редактировалось CodeNameHawk; 02.09.2012 в 20:59.
CodeNameHawk вне форума  
Сказали "Спасибо" CodeNameHawk
gruffi (02.09.2012)
Непрочитано 02.09.2012, 21:08  
gruffi
Прописка
 
Аватар для gruffi
 
Регистрация: 01.02.2012
Сообщений: 131
Сказал спасибо: 9
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
gruffi на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

CodeNameHawk, спасибо большое...с частотой и правда недоглядел. Кнопки я так пока добавил и про дребезг знаю, буду программно с ним бороться. Еще раз большое спасибо.
gruffi вне форума  
Непрочитано 02.09.2012, 21:21  
gruffi
Прописка
 
Аватар для gruffi
 
Регистрация: 01.02.2012
Сообщений: 131
Сказал спасибо: 9
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
gruffi на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

а все-таки все дело было в разной частоте? Я недавно в каком-то посте читал, что в proteus настройки мк на кварц и частоту не нужна, он только ориентируется на ту что в прошивке...Еще раз спасибо.
gruffi вне форума  
Непрочитано 03.09.2012, 10:24  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 343
Сказал спасибо: 180
Сказали Спасибо 64 раз(а) в 56 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

Сообщение от gruffi Посмотреть сообщение
а все-таки все дело было в разной частоте?
Не совсем, частота таймера, настройка прерывания...
Сообщение от gruffi Посмотреть сообщение
Я недавно в каком-то посте читал, что в proteus настройки мк на кварц и частоту не нужна, он только ориентируется на ту что в прошивке
В прошивке(HEX) нет такой информации.
В протеусе выставляете частоту ручками, при помощи фьюзов и если выставляете внешний кварц, прописываете частоту кварца в нужной графе.
CodeNameHawk вне форума  
Непрочитано 03.09.2012, 12:47  
gruffi
Прописка
 
Аватар для gruffi
 
Регистрация: 01.02.2012
Сообщений: 131
Сказал спасибо: 9
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
gruffi на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

Спасибо еще раз.
gruffi вне форума  
Непрочитано 21.10.2016, 22:58  
VALERIY41
Прохожий
 
Регистрация: 21.10.2016
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
VALERIY41 на пути к лучшему
По умолчанию Re: Прерывание по совпадению таймера 1

Можно ли независимо использовать регистры таймера 1 для прерывания по совпадению в ATMtga16? Как для этого режима настроить таймер 1 ?
Заранее благодарю.

Сообщение от gruffi Посмотреть сообщение
Доброе утро, Форумчане! Решил у Вам просить помощи, а то чего-то не догоняю. Мне необходимо при срабатывании внешнего прерывания INT0 запустить таймер 1. Так и делаю, но отловив внешнее прерывание таймер запускается, но прерывания так и не происходит. В отладчике вижу что TCNT1 обнуляется при сравнении, но в функцию так и не заходит...Привожу функции инициализации и обработки прерываний:
Код:
void INCUBATOR_Init()
{
	//TIME_Init();
	
	DDRB  &= (1 ‹‹ 0) | (1 ‹‹ 1);
	PORTB |= (1 ‹‹ 0) | (1 ‹‹ 1);
	
	DDRC |= (1 ‹‹ 0);
	PORTC &= ~(1 ‹‹ 0);
	
	DDRD  &= ~(1 ‹‹ 2);
	PORTD |= (1 ‹‹ 2);
	
	GICR  |= (1 ‹‹ INT0); //разрешили прерывание
	MCUCR = 0x00;
	
	SREG |= (1 ‹‹ 7);
}
//------------
ISR(INT0_vect)
{
	if(!enableZeroCross)
	{
		enableZeroCross = true;
		
		OCR1A   = delay_dimmer; // Значение для сравнения
		TCNT1   = 0;     // счетчик в ноль
		TCCR1B |= (1 ‹‹ CS10) | ( 1‹‹ WGM12);  // без предделителя и режим СТС по совпадению
		TIMSK  = (1 ‹‹ OCIE1A); // Разрешить прерывание при совпадении TCNT1 и OCR1A
	}
}
//--------------------
ISR(TIMER1_COMPA_vect)
{
	if(enableZeroCross)
	{
		TCNT1 = 0;
		TCCR1B = 0x00;
		
		PORTC |= (1 ‹‹ 0); // включить симмистор
		_delay_us(50);
		PORTC &= ~(1 ‹‹ 0);
		enableZeroCross = false;	
	}
}
VALERIY41 вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как настроить прерывание от таймера реального времени c04 Микроконтроллеры, АЦП, память и т.д 0 25.05.2010 21:19
Внешнее прерывание на tiny15 livsha Микроконтроллеры, АЦП, память и т.д 8 21.04.2010 01:11
Странно работает прерывание при совпадении таймера! nagano Микроконтроллеры, АЦП, память и т.д 5 18.11.2008 09:35
не обрабатывается прерывание от таймера во время АЦП rusakov_a Микроконтроллеры, АЦП, память и т.д 0 03.07.2008 01:33
Задача - таймер. и прерывание! chipic128 Микроконтроллеры, АЦП, память и т.д 11 22.02.2005 18:11


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


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