Измерение частоты на pin D8

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Аватара пользователя
Dryundel
Полковник
Сообщения: 2061
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 628
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Измерение частоты на pin D8

#1

Сообщение Dryundel » 04.06.2017{, 14:27}

Господа знатоки, может кто нибудь сделать пользовательский блок для точного измерения частоты на pin D8 ? Вот по такому принципу, к примеру:
http://arduino.ru/forum....-145784

Или вот:
https://geektimes.ru/post/286410/ (см. Способ 2)

Очень надо, а в программировании я пока не силен.
Последний раз редактировалось Dryundel 04.06.2017{, 14:29}, всего редактировалось 1 раз.
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Измерение частоты на pin D8

#2

Сообщение pan » 04.06.2017{, 14:43}

а какая примерно там частота будет?

Аватара пользователя
Dryundel
Полковник
Сообщения: 2061
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 628
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Измерение частоты на pin D8

#3

Сообщение Dryundel » 04.06.2017{, 14:52}

До 2000 Гц максимум планируется.
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Измерение частоты на pin D8

#4

Сообщение pan » 04.06.2017{, 15:05}

посадить на другой пин и использовать счетчик не получится?

Аватара пользователя
Dryundel
Полковник
Сообщения: 2061
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 628
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Измерение частоты на pin D8

#5

Сообщение Dryundel » 04.06.2017{, 15:17}

Если озадачиться только счетчиком, то может и получится, а при активации других процессов счет уйдет в тартарары. Нужет скоростной качественный счетчик.
На сколько я понял (из разных источников) только D8 с задействованием Timer1 может работать корректно и наименьшими ошибками.
Да и D2 D3 уже заняты работой по прерыванию.
Последний раз редактировалось Dryundel 04.06.2017{, 15:21}, всего редактировалось 1 раз.
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Измерение частоты на pin D8

#6

Сообщение Dev1 » 04.06.2017{, 21:13}

Проверьте
Вложения
freg.flp
(73.51 КБ) 43 скачивания
Win7-64 FLProg v7.2.2 Portable :fie:

Аватара пользователя
Dryundel
Полковник
Сообщения: 2061
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 628
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Измерение частоты на pin D8

#7

Сообщение Dryundel » 04.06.2017{, 21:41}

Спасибо огромное.
Буду пробовать.
Скажите пожалуйста, для того что бы получать время между импульсами,
надо добавить в блоке выход ttime (float)?

И еще вопрос, в SetupSection   delay(1000) это что?
Последний раз редактировалось Dryundel 04.06.2017{, 21:47}, всего редактировалось 1 раз.
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Измерение частоты на pin D8

#8

Сообщение Dev1 » 04.06.2017{, 22:03}

Dryundel писал(а):Скажите пожалуйста, для того что бы получать время между импульсами,надо добавить в блоке выход ttime (float)?
Вроде да, если что разделите на 2
Dryundel писал(а):И еще вопрос, в SetupSection   delay(1000) это что?
Это задержка как в примере, для устаканивания, она 1 раз вызывается, потом в цикле не участвует.
Win7-64 FLProg v7.2.2 Portable :fie:

Аватара пользователя
Dryundel
Полковник
Сообщения: 2061
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 628
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Измерение частоты на pin D8

#9

Сообщение Dryundel » 19.06.2017{, 21:02}

Dev1 писал(а):ПроверьтеПрикрепления: freg.flp(74Kb)
Все вроде работает до момента отключения подачи сигнала.
Если частотный сигнал снять то  переменная freg фиксируется на последнем значении, а хотелось бы иметь 0 на выходе при отсутствии сигнала.

Как поправить код?
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

Ответить

Вернуться в «Спросить у знатоков»