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

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

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

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

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

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


 
Опции темы
Непрочитано 23.02.2016, 19:49  
Someone
Гражданин KAZUS.RU
 
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
Someone на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Сообщение от miwutka Посмотреть сообщение
TCCR1B=0x0B;
Сообщение от miwutka Посмотреть сообщение
TCCR1B=(0‹‹ICNC1) | (0‹‹ICES1) | (0‹‹WGM13) | (1‹‹WGM12) | (0‹‹CS12) | (1‹‹CS11) | (0‹‹CS10);
Миш, а тебя ничего не смущает? Вот в этих двух строчках. Первая - твоя настройка таймера1 для меги8, вторая - для меги16.
Реклама:
Someone вне форума  
Непрочитано 23.02.2016, 22:11  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Впринципе не смущает... У 8-ой 2500 прерываний в секунду, а у 16-ой 2000.... Я в прерывании считаю 2500 или 2000 (смотря какая мега ) и принимаю за 1 секунду. Каждую секунду я вывожу на индикатор герцы сети.....
Ща гляну в даташит.....

А ну то просто разные пределители частоты таймера...
miwutka вне форума  
Непрочитано 23.02.2016, 23:12  
Someone
Гражданин KAZUS.RU
 
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
Someone на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Сообщение от miwutka Посмотреть сообщение
У 8-ой 2500 прерываний в секунду, а у 16-ой 2000....
Вообще-то секунда при 8000000/8 занимает 1000000 тиков. Во втором же случае, в секунду войдёт 8000000/64=125000 тиков.
Someone вне форума  
Непрочитано 23.02.2016, 23:42  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Someone, ну да. Я наверно неправильно выразился.... При 8000000/8 занимает 1000000 тиков. OCR=499 значит за секунду возникнет 2000 прерываний.
miwutka вне форума  
Непрочитано 24.02.2016, 00:01  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: Timer2 in Atmega8 and Atmega16

Если тебе надо посчитать частоту, у таймера есть режим захвата. И совсем ни к чему обрабатывать 2500 прерываний.

Напиши подробно, что тебе надо.
Godzilla82 вне форума  
Непрочитано 24.02.2016, 01:16  
Someone
Гражданин KAZUS.RU
 
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
Someone на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Сообщение от miwutka Посмотреть сообщение
значит за секунду возникнет 2000 прерываний.
Но зачем тебе 2000 прерываний, как верно заметил Годзила? Даже не используя режим захвата таймера (насколько я понимаю, схемотехнически ты завёл вход частоты на внешнее прерывание, а не на вход захвата таймера), что мешает настроить таймер1 на, к примеру, 1/512 секунды, обнулить счётчик импульсов от твоего детектора 0, разрешить прерывания от детектора (у тебя вроде инт0?), в этом прерывании инкрементировать счётчик. Когда сработает прерывание от таймера1, запретить внешнее прерывание, поставить флаг завершения измерения частоты, и в главной программе, если флаг окончания измерения стоит, сбросив его, посчитать значение частоты, умножив число в счётчике на 512?
Someone вне форума  
Непрочитано 24.02.2016, 01:29  
Someone
Гражданин KAZUS.RU
 
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
Someone на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

ЗЫ: И кстати говоря, не 2000, а 1/(499*0.000001)=2004. В принципе, погрешность не большая, но она есть.
Someone вне форума  
Непрочитано 24.02.2016, 19:19  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Не, мне частота впринцыпе не нужна. То я просто мониторю что детектор 0 работает. Но случайно обратил внимание что при включении таймера 2 он начинает сбоить. Ну то пока черный ящик для меня.... Отложу пока. А вот за режим захвата спасибо. Я как раз хочу сделать тахометр и спидометр. Тахометр уже год как работает электронный но с запаздыванием чуток. Мне он не нравиться. Хочу вот как вы сказали сделать в режиме захвата. Чтобы он реагировал в реальном времени. И датчик скорости тоже подключить хочу. Но вот думаю прийдется значит два таймера задействовать. Как потеплеет займусь этим.....
miwutka вне форума  
Непрочитано 21.03.2016, 12:09  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

Godzilla82, с режимом захвата разобрался спасибо. Атмегу 8 заменил на атмегу 168 и все стало отлично работать, успевает всё считать. Видно 8-ая не справлялась с расчетами. У 168-ой встроенный 2-тактный множитель написано в даташите. Возможно это помогло решить проблему...
miwutka вне форума  
Непрочитано 10.04.2016, 21:40  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Timer2 in Atmega8 and Atmega16

скажите атмега 8 и 168 имеют различия в вычислении чисел float??? В атмеге 8 одно и тоже выполняется раз в 20-50 медленнее.....
miwutka вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
USB АЦП на ATmega16 переделать на ATmega8 98mildg1 Микроконтроллеры, АЦП, память и т.д 12 25.09.2010 20:29
Нужна помощь CDC-232 и atmega16 robin7341 Микроконтроллеры, АЦП, память и т.д 0 08.08.2010 00:13


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


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