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

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

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

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

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

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

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

 
Опции темы
Непрочитано 28.04.2011, 01:35  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от st_1 Посмотреть сообщение
"При входной частоте 100Гц и полной шкале в восемь разрядов... включи - и езжай в отпуск..."
При входной частоте 100Гц и 10(100) отсчётах время измерения будет 0,1с (1с). Далее F=(1/0,1с)*10(F=(1/1с)*100)=100Гц. В лучшем случае успеете отвернуться...

Сообщение от st_1 Посмотреть сообщение
Можно!
На PIC24 можно...
Вы о чём?
Сообщение от begun Посмотреть сообщение
Взял доступную ATtiny2313 с внешним кварцем 8 192 000 Гц.
Реклама:

Последний раз редактировалось omercury; 28.04.2011 в 01:50.
omercury вне форума  
Непрочитано 28.04.2011, 01:38  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от st_1 Посмотреть сообщение
"При входной частоте 100Гц и полной шкале в восемь разрядов... включи - и езжай в отпуск..."
Методом захвата уже за 1000 с погрешность будет меньше 5Е-9 Гц, т.е. восемь десятичных знаков будут точные. А это порядка 17 минут, не успеете в отпуск съездить.
=GM= вне форума  
Непрочитано 28.04.2011, 01:47  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от begun Посмотреть сообщение
я подумал что можно и без флагов получить тоже самое дождаться в бесконечном цикле переполнения таймера и вести счет,т.е. if(TCNT0==0xFE) а++;
можно же таким образом посчитать количество переполнеия таймера?
Ну, случайно вы попадёте на 0xFE, подсчитаете одно переполнение, а дальше что? Переполнений-то может быть разное количество, зависит от измеряемой частоты. Покажите весь кусок для подсчёта переполнений.

Кстати, почему надо сравнивать с 0xFE? Тогда уж сравнивайте по факту переполнения с 0x00, если совпало, то значит за один такт до этого было переполнение.
=GM= вне форума  
Непрочитано 28.04.2011, 01:53  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от =GM= Посмотреть сообщение
Тогда уж сравнивайте по факту переполнения с 0x00, если совпало, то значит за один такт до этого было переполнение.
Раз 500 ещё до первого тика... Флаг нужен(Булева переменная).
omercury вне форума  
Непрочитано 28.04.2011, 12:57  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Уточню, такты входной частоты. Откуда 500?
=GM= вне форума  
Непрочитано 28.04.2011, 13:02  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Пока таймер один раз не тикнет, в TCNT будет "0"

может и больше, не 500
omercury вне форума  
Непрочитано 28.04.2011, 13:22  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Давайте уточнять, видимо, мы говорим о разных вещах. Принимаете цитату из первого поста топикстартера "С выхода схемы совпадения импульсы подаются на вход T0 таймера счетчика TCNT0, который работает в режиме внешнего счета"?
=GM= вне форума  
Непрочитано 28.04.2011, 14:36  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Псевдо С
Код:
if TCNT0==0 {a++}
Сколько раз инкрименируется "а" пока делитель таймера отсчитает один такт в TCNT ?

Последний раз редактировалось omercury; 28.04.2011 в 15:36.
omercury вне форума  
Непрочитано 28.04.2011, 14:56  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

При выполнении этого оператора переменная "а" увеличится на единицу в том случае, если содержимое TCNT0 равно 0.

Однако, мы о чём говорим? Вы бы развернули вашу мысль, а то ничего не понятно. Вы цитату топикстартера принимаете?
=GM= вне форума  
Непрочитано 28.04.2011, 15:36  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Ок.
Код:
while 1{
    if TCNT0==0 {a++}
} //Тогда так. Сколько раз "а" сплюсплюсится ?
или лучше так?
PHP код:
while 1{
    if 
TOV0 {
        
a++; TOV0=0;
    }

Импульсы считаются таймером0 через вход Т0.
Цитата:
С выхода схемы совпадения импульсы подаются на вход T0 таймера счетчика
TCNT0,который работает в режиме внешнего счета.
omercury вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти бесплатную программу виртуального сом порта begun Микроконтроллеры, АЦП, память и т.д 5 18.10.2010 21:47
Создание частотомера на PIC16F84A,пробелема CERGEI1982 Микроконтроллеры, АЦП, память и т.д 4 24.01.2007 10:18
спомощью какой программы можно писать программу на МК. golinskiy Proteus, KiCAD и другие ECAD 4 05.06.2006 10:43
как переписать программу с at90s2313 на pic 12ce519 sport7 Микроконтроллеры, АЦП, память и т.д 3 08.12.2005 10:50
Не могу скачать с сайта программу iled Proteus, KiCAD и другие ECAD 1 19.08.2005 20:24


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


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