2313 : переполнение счётчика

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Грызет канифоль
Аватара пользователя
Сообщения: 296
Зарегистрирован: Чт апр 19, 2007 15:27:28
Откуда: Мурманск, Россия

Сообщение Steam »

Здравствуйте!

Задача такова: нужно чтобы частота счётчика/каунтер 1 была равна частоте внешнего кварца (32768Hz) и чтобы срабатовала определённая фунцкия от прерывания (№6).

Поставил регистры

Код: Выделить всё

 TIMSK = 0b10000000;
 TIFR = 0b10000000;
 TCCR1B = 0b00000110;
Поставил разрешение на прерывания (SEI), но ничего не получается :( (эмулирую в Proteus);
Гальваническое сопротивление - это восстание батареек
Контактная информация:
Реклама
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Попробуйте мастер настройки МК компилятора ICC - очень наглядно и выдает готовый код программы.

Смотрите задачу 6 в курсе по линку в моем профиле.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Реклама
Модератор
Аватара пользователя
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург

Сообщение Aheir »

Мне вот так CodeVision ответил:

Код: Выделить всё

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 32,768 kHz
// Mode: Normal top=FFFFh
// OC1 output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: On
// Input Capture Interrupt: Off
// Compare Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x01;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1H=0x00;
OCR1L=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x80;
А вот это
TIFR = 0b10000000;
зачем?
И вообще, это в мелкие вопросы...
Оптимизм х (Опыт + Знания) = const
Контактная информация:
Грызет канифоль
Аватара пользователя
Сообщения: 296
Зарегистрирован: Чт апр 19, 2007 15:27:28
Откуда: Мурманск, Россия

Сообщение Steam »

Aheir писал(а):А вот это
TIFR = 0b10000000;
зачем?
Вроде как так в мануале написано
Гальваническое сопротивление - это восстание батареек
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Грызет канифоль
Аватара пользователя
Сообщения: 296
Зарегистрирован: Чт апр 19, 2007 15:27:28
Откуда: Мурманск, Россия

Сообщение Steam »

Запустил мастер в ICCAVR - в симуляторе всё равно не работает :( Сейчас попробую в CodeVision.

=====================

Попробовал - тоже не получается. Значит, что Proteus не умеет симулировать внешние резонаторы?
Гальваническое сопротивление - это восстание батареек
Контактная информация:
Реклама
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Их частоты задают в свойствах МК.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Реклама
Открыл глаза
Аватара пользователя
Сообщения: 68
Зарегистрирован: Вт июл 24, 2007 23:34:23

Сообщение Mr.Moss »

А что ты подал на T1? (TCCR1B = 0b00000110 - спадающий фронт на выводе T1)
И вообще, определись от кварца ты хочеш тактировать счетчик или от внешнего тактового сигнала?
Прошу прощения что на ТЫ!
Э...
Аватара пользователя
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва

Сообщение tych »

Steam писал(а):Запустил мастер в ICCAVR - в симуляторе всё равно не работает :(
Код опубликуйте и объясните чем тактируется ваш МК.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Контактная информация:
Грызет канифоль
Аватара пользователя
Сообщения: 296
Зарегистрирован: Чт апр 19, 2007 15:27:28
Откуда: Мурманск, Россия

Сообщение Steam »

tych писал(а):Их частоты задают в свойствах МК.
В свойствах МК я нашёл только частоту клоков и ватчдога.
Mr.Moss писал(а):А что ты подал на T1?
К T1 и T0 подключил кварц напрямую (как в мануале нарисаванно)

P.S. Мне нужно чтобы счётчик Timer/Counter 1 переполнялся 0.5 раз в секунду (беру кварц на 32768 Гц). Делаю что-то типа часов :)
Гальваническое сопротивление - это восстание батареек
Контактная информация:
Вымогатель припоя
Аватара пользователя
Сообщения: 586
Зарегистрирован: Ср мар 07, 2007 22:58:02
Откуда: Черкассы, Украина

Сообщение Negor »

Так что нужно? Описание как расчитать таймер? Если да на форуме это есть(в обучалке кстати тоже). Если нет уверенности что таймер от кварца считает, то выводи значения TCNT на порт сосветодиодами.
There is only 10 kind of people: those who understands binary code and those who dont!!!
Контактная информация:
Грызет канифоль
Аватара пользователя
Сообщения: 296
Зарегистрирован: Чт апр 19, 2007 15:27:28
Откуда: Мурманск, Россия

Сообщение Steam »

Таймер то я расчитал. Нужно чтобы System Clock работал от одного кварца(10 МГц), а Timer/Counter 1 от другого кварца(32768 Гц).
Гальваническое сопротивление - это восстание батареек
Контактная информация:
Открыл глаза
Аватара пользователя
Сообщения: 68
Зарегистрирован: Вт июл 24, 2007 23:34:23

Сообщение Mr.Moss »

И гдеже такое написано, что на T0 и T1 нужно кварц подключать? :shock:
Вымогатель припоя
Аватара пользователя
Сообщения: 586
Зарегистрирован: Ср мар 07, 2007 22:58:02
Откуда: Черкассы, Украина

Сообщение Negor »

Такого конечно нигде не написано, но это нигде и не запрещается :roll: . К тому же, раз в настройках таймера есть возможность счёта внешних импульсов, то значит подразумевается и возможность подключения внешнего генератора... А вот рисунка где подключают кварц к таймеру, я в даташите не нашёл... может надо соорудить генератор на логике с кварцом и тогда всё будет норм? Потому что даже в даташите Меги8(хоть там и есть работа таймера от внешнего кварца, да ещё и оптимизирован этот таймер под кварц на 32,768 кГц) нет рисунка как кварц подключать...
There is only 10 kind of people: those who understands binary code and those who dont!!!
Контактная информация:
Открыл глаза
Аватара пользователя
Сообщения: 68
Зарегистрирован: Вт июл 24, 2007 23:34:23

Сообщение Mr.Moss »

Вот вот, и я отом же, к выводам T1 и T0 нужно подключать внешний тактовый сикнал, а не кварц, который сам по себе не может являтся источником сигнала.
Грызет канифоль
Аватара пользователя
Сообщения: 296
Зарегистрирован: Чт апр 19, 2007 15:27:28
Откуда: Мурманск, Россия

Сообщение Steam »

Что-то я тормознул немножко..... Был полностью уверен, что схемку подключения кварца видел в даташите.... Оказалось, что в апноуте AVR134 и там у МК есть асинхронный коунтер и выводы TOSC1 и TOSC2 :oops:
Гальваническое сопротивление - это восстание батареек
Контактная информация:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»