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

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

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

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

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

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

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

 
Опции темы
Непрочитано 26.04.2011, 23:13  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,982
Сказал спасибо: 0
Сказали Спасибо 4,941 раз(а) в 2,370 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

begun,
если уж руки чешутся программировать, то может взять альтеру на 32-64триггера и нарисовать там схему, запрограммировать и получить измерительный канал до 100мгц, а на контроллер возложить функцию выбора пределов, индикации, вида измерения, связи с пк...?
Реклама:
jump вне форума  
Непрочитано 26.04.2011, 23:23  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 866
Сказал спасибо: 230
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

на счет PIC ов Я знаю, что легко получается результат, но если взять другую структуру частотомера,который тоже используют разработчики -это с предваритедьным наружный делителем ,выходы которого подключаются к пинам контроллера.
Тут точность не теряется и за одно уменьшается частота на счетный вход контроллера.
При меньшей частоте наверно лучше можно обработать сигнал.
Я прав?
begun вне форума  
Непрочитано 27.04.2011, 01:45  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Готовая программа на си http://electronix.ru/forum/index.php...ic=77251&st=30, пост #32

Немного теории http://electronix.ru/forum/index.php...ic=29796&st=15, пост #23

Последний раз редактировалось =GM=; 27.04.2011 в 01:51.
=GM= вне форума  
Сказали "Спасибо" =GM=
begun (06.05.2011)
Непрочитано 27.04.2011, 09:39  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 866
Сказал спасибо: 230
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

GM,
Ваши посты знаю хорошо и неоднократно их рассмотривал, но чтобы в них капитально разобраться нужно уяснить некоторые ньюансы,
и если кто разъяснит ,буду очень признателен и смогу двинутся вперед
по очень ценным для меня советам cо стороны участников поста.
Например:
Почему нельзя использовать вместо флага такую конструкцию:

if(TCNT0==0xFE)
a++;
Разве тут не все тоже самое ,ну только лишь теряется единица при каждом переполнении таймера ,что в общем то наверно можно учесть.
Так такая замена всетаки вожможно . Прелесть флагов только в том что они работают без вызова прерывания?
Спасибо.
begun вне форума  
Непрочитано 27.04.2011, 19:12  
=GM=
Прописка
 
Регистрация: 21.09.2009
Сообщений: 218
Сказал спасибо: 1
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
=GM= на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

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

Последний раз редактировалось =GM=; 27.04.2011 в 19:15.
=GM= вне форума  
Непрочитано 27.04.2011, 22:43  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 343
Сказал спасибо: 180
Сказали Спасибо 64 раз(а) в 56 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от st_1 Посмотреть сообщение
Угу...
При входной частоте 100Гц и полной шкале в восемь разрядов... включи - и езжай в отпуск...
Для этой частоты берем например 10 импульсов, время измерения 0.1 сек
Какой отпуск? Вы о чем?
Да здесь просто измерение длительности импульса.
(после деления на количество импульсов, получаем повышение точности)
CodeNameHawk вне форума  
Непрочитано 27.04.2011, 22:56  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 866
Сказал спасибо: 230
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

omercury указывает, что некорректно провести расчеты в прерывании, что нужно использовать флаги и с их помощью считать количество переполнения таймера.
Как Я понимаю ,количество шагов процессора при проведении операции с флагами фиксировано и при формировании секундного интервала можно учесть.
я подумал что можно и без флагов получить тоже самое дождаться в бесконечном цикле переполнения таймера и вести счет,т.е.
while(1)
{
--
if(TCNT0==0xFE)
а++;
--
можно же таким образом посчитать количество переполнеия таймера?
(извините,если Я не то говорю)
Спасибо.
begun вне форума  
Непрочитано 28.04.2011, 00:18  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Цитата:
подумал что можно и без флагов получить тоже самое......можно же таким образом посчитать количество переполнеия таймера?
Можно-то можно, но...нельзя... Потому, что сработать может несколько раз. Флаг прерывания устанавливается при переполнении счетчика таймера(переходе из 0хFF в 0х00), поэтому им пользоваться удобнее. После использования флаг надо сбросить (автоматом он сбрасывается при выходе из прерывания).
А прерывания нельзя использовать(для точности) потому, что вход в прерывание может попасть на команду (Асм), выполняющуюся за несколько тактов. Счёт в этом случае собьётся. А может и несколько раз такое случиться. Поэтому и делается без прерываний, но по флагам прерываний.
omercury вне форума  
Непрочитано 28.04.2011, 00:25  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от CodeNameHawk Посмотреть сообщение
Какой отпуск? Вы о чем?
"При входной частоте 100Гц и полной шкале в восемь разрядов... включи - и езжай в отпуск..."
st_1 вне форума  
Непрочитано 28.04.2011, 00:28  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Скоректируйте программу частотомера

Сообщение от omercury Посмотреть сообщение
Можно-то можно, но...нельзя...
Можно!
На PIC24 можно... у них детерминированный вход в прерывание...
st_1 вне форума  
 

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

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

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, время: 01:14.


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