Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА: Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 06 дек 2018 16:26 #1

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Создал отдельную тему, дабы не засорять предыдущую. Просьба к уважаемому SOIR.
Собственно ТЗ в приложении.
Основной функционал:
1. измерение частоты меандра от 100 кГц до 2 МГц.
2. Измерение напряжения от 0 до 5В, с выводом на дисплей процентной шкалы 0-100%
3. По возможности генерация меандра от 0.5 до 10Гц. с возможностью задать частоту программно.
Вложения:
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 06 дек 2018 18:06 #2

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Пока лишь перенес функционал на новый МК. Посмотрите проект, сверьте выводы - Ваша картинка очень нечеткая. Если все нормально, тогда внесу изменения в алгоритм. По ходу могут быть изменения в выводах, но небольшие.
Также я бы посоветовал перейти на кварц 16 или 8 МГц.

P.S.
И еще. Такое управление одной кнопкой будет неудобным. Есть свободные выводы и ресурсы программы, может добавить кнопок?
Вложения:
Последнее редактирование: 06 дек 2018 18:53 от Soir.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 06 дек 2018 20:36 #3

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Вроде старый функционал перешел нормально, с учетом тормозов протеуса.
P.S.
И еще. Такое управление одной кнопкой будет неудобным. Есть свободные выводы и ресурсы программы, может добавить кнопок?

Выводы то есть, да места нет в девайсе, хотя возможно туда энкодер поставить с кнопкой. Тогда алгоритм менять надо. Буду пока допиливать алгоритм под энкодер.И пересмотрю функционал, и управление.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 09 дек 2018 11:30 #4

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Во вложении проект в Proteus, прошивка и FUSE.
Вложения:
Последнее редактирование: 09 дек 2018 19:54 от Soir. Причина: Чистка темы.
Администратор запретил публиковать записи гостям.
Спасибо сказали: Romanta

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 09 дек 2018 12:34 #5

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Последняя версия прошивки работает так как задумывалась.
Благодарю. Теперь макетная плата, и подбор компонентов.
Думаю что после нового года уже в железе будет собрано.
Без Вашей помощи это тянулось бы на долгие месяцы.
Вложения:
Последнее редактирование: 09 дек 2018 19:54 от Soir. Причина: Чистка темы.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 11 дек 2018 22:04 #6

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Уважаемый Soir. Возможно ли сделать некоторые изменения в программе.
По поводу частоты биений Пункт "L".
расширить диапазон до 150 герц. убрать количество точек огибания, чтобы получился треугольник, а не синус.
также зашить сетку частот пункта "L", (0, 0.03Гц, потом сразу от 0.5 до 80 герц дискретность настройки 0.1 Герц, от 80 до 150 Герц дискретность настройки 0.5 Герц).
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 06:06 #7

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Romanta пишет:
убрать количество точек огибания, чтобы получился треугольник, а не синус.
Чтобы построить треугольник тоже нужны точки. Или по какому принципу его строить?
Romanta пишет:
также зашить сетку частот пункта "L", (0, 0.03Гц, потом сразу от 0.5 до 80 герц дискретность настройки 0.1 Герц, от 80 до 150 Герц дискретность настройки 0.5 Герц).
Зачем здесь "сетка"? Это просто три диапазона. Но не это важно. Проблема в том, что как Вы видели, на больших частотах (а здесь это уже после 5 Гц) нет точной установки. То есть, 0,1 Гц не будет различимым, а дальше и 0,5 Гц тоже. Возможно нужно менять всю концепцию построение генератора.
Но сначала давайте разберемся с точками, далее будет видно.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 06:39 #8

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Чтобы построить треугольник тоже нужны точки. Или по какому принципу его строить?
По факту требуется чтобы ширина импульса ШИМ, менялась скачкообразно на тот процент, который указан в параметре "d". Я не знаю какое количество точек построения сейчас в программе, но тут требуется всего две, смена ширины импульса и возврат на исходную ширину, без промежуточных процентных интераций. Выставили частоту в 1 Герц, и отклонение от ширины ШИМ 50%, генератор скачкобразно включает и выключает биения.
Пример: При частоте Шим 1 кГц и частоте биений 1Герц с 50% глубиной получаем - из 1000 включений ШИМ за 1 секунду со скважностью 100%, 100-150 включений надо сделать со скважностью 50%.

И еще в догонку пока в голове держится. Добавить два пункта в меню управления выводами. 5 пункт, включения 2х выводов попеременно, активация пункта включен один вывод, дезактивация пункта, включен другой вывод.
6-й пункт тоже самое, только с 1 выводом. Оба этих пункта нужны для управления реле.
имена пунктов "A" "C".
Вложения:
Последнее редактирование: 12 дек 2018 09:44 от Romanta.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 07:01 #9

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Romanta пишет:
По факту требуется чтобы ширина импульса ШИМ, менялась скачкообразно на тот процент, который указан в параметре "d".
Это фраза понятна.
А вот дальнейшие уточнения вместе с примером - совсем не понял. Почему из 1000 включений (и что это вообще за параметр - "включения"?) нужно сделать 100 со скважностью 50%...?
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 07:52 #10

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
А вот дальнейшие уточнения вместе с примером - совсем не понял. Почему из 1000 включений (и что это вообще за параметр - "включения"?) нужно сделать 100 со скважностью 50%...?

это была попытка расписать процесс :( 1000 включений, это частота ШИМ. 1кГц.
Последнее редактирование: 12 дек 2018 07:53 от Romanta.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 20:17 #11

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
после тестов на железе, оказалось что плавных переход огибающей "биений" не нужно, требуются кратковременные импульсы с указанными частотами, поэтому в примере и описал, что на 1 период частоты биения, само изменения занимает 10% от периода, чтобы на результирующей RC цепочке появлялся кратковременный всплеск напряжения.
И извиняюсь если отнимаю Ваше время и не могу более внятно объяснить требования к функционалу.
Последнее редактирование: 12 дек 2018 20:22 от Romanta.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 20:59 #12

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
То есть. Если установлена частота 1 Гц, а ширина 50%, то с началом периода устанавливается ширина 50%, через 0,5 сек 40%?
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 12 дек 2018 21:06 #13

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Да. Отсюда следует что куча пересчетов уже не требуется.
Последнее редактирование: 12 дек 2018 21:07 от Romanta.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 07:41 #14

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Миссия невыполнима. На верхних частотах шаг установки будет несколько Герц. И точная установка частоты невозможна, с той же погрешностью.

До 20Гц еще что-то похоже на 0,1Гц. При 50Гц уже дискретность 0,5Гц, при 100Гц - 2 Гц, 150Гц - 6Гц.

Все, что могу предложить, это понизить требования к генератору.
Последнее редактирование: 14 дек 2018 07:57 от Soir.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 08:06 #15

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
До 20Гц еще что-то похоже на 0,1Гц. При 50Гц уже дискретность 0,5Гц, при 100Гц - 2 Гц, 150Гц - 6Гц.
давайте так и сделаем, коль не возможно по другому.
А смена контроллера на более мощный эту проблему решит?
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 08:22 #16

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Romanta пишет:
давайте так и сделаем, коль не возможно по другому.
Как отображать 3-х значные числа для частоты?

Romanta пишет:
А смена контроллера на более мощный эту проблему решит?
Наверно есть какие-то, но это не ко мне.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 08:39 #17

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
Как отображать 3-х значные числа для частоты?
верхний диапазон ограничим 99 Герц. Или изменим индикатор на 4 значный, потому как плату еще не делал в железе.
Последнее редактирование: 14 дек 2018 08:42 от Romanta.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 08:40 #18

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
А десятые доли, или уже не нужны?
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 08:45 #19

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
0, 0.03Гц,? обозначить как "3R"
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 08:47 #20

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
А 10,1 Гц?
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 14 дек 2018 14:17 #21

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
А 10,1 Гц?
вот и сижу, думаю, стоит ли переделать схему под 4 значный индикатор, пока не поздно..
Тем самым отпадут куча проблем с выводом 3х значных чисел. количество ног пока позволяет, или проц с большим количеством ног взять. 44 ноги.
Последнее редактирование: 14 дек 2018 14:20 от Romanta.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 15 дек 2018 07:38 #22

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9672
  • Спасибо получено: 3416
  • Respect sxem.org Sponsor 2019 Author
Romanta пишет:
...пока не поздно...
Уже два раза поздно. Вы думаете, мне очень интересно вот так переписывать прошивки, работая на корзину? Создается впечатление, что Вы сами не знаете, что хотите. А я должен написать одну прошивку - нет, не понравилось, давайте не так. Нет снова не так, переписывай...
Поэтому не спешите, хорошо все обдумайте, прочтите еще мои правила. А когда окончательно определитесь, тогда и выкладывайте ТЗ. А я пока беру таймаут по этому проекту на неделю.
Администратор запретил публиковать записи гостям.

Частотомер с таймером на 3 разрядном индикаторе. АТМЕГА8 15 дек 2018 08:16 #23

  • Romanta
  • Romanta аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 61
  • Спасибо получено: 3
А когда окончательно определитесь, тогда и выкладывайте ТЗ. А я пока беру таймаут по этому проекту на неделю.
Понял. Целиком согласен.
Администратор запретил публиковать записи гостям.
Модераторы: wolf2000, Vakula, Айнцвайдрайченко, Soir