Прошу совета у знатоков!
Прошу совета у знатоков!
Здравствуйте. Стоит задача: создать устройство для подсчета импульсов. Условно, есть вход- на который подаются импульсы (лог 1 или 0 ). Период опроса порта- 1 сек. Если за время опроса пришло <30 импульсов, на выходе- логич 0. Если пришло >30 импульсов, на выходе- логич. 1. Собственно- все.
Вопрос вот в чем. Как будет проще- собрать это на микросхемах (таймеры, счетчики, логика), либо заморочится микроконтроллерами?
Интересует концепция- что выгодней, на Ваш взгляд.
Вопрос вот в чем. Как будет проще- собрать это на микросхемах (таймеры, счетчики, логика), либо заморочится микроконтроллерами?
Интересует концепция- что выгодней, на Ваш взгляд.
- vlasovzloy
- Друг Кота
- Сообщения: 20068
- Зарегистрирован: Чт янв 26, 2012 16:44:29
- Откуда: Таксимо
Re: Прошу совета у знатоков!
Мк конечно выгодней, какой нить смд 6 ти лапый
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
Re: Прошу совета у знатоков!
Микроконтроллер гибче и дешевле, но требует умения программировать и всякие там программаторы и среды разработки.
На счётчиках менее гибко, значительно ограниченно по функционалу, дороже. Но не требует умения программировать и дополнительных инструментов.
Оптимальным может быть вариант с Ардуино - среда разработки бесплатна, большое сообщество, наверняка помогут, а может уже есть программка, программатор не требуется.
Добавлено after 2 minutes 46 seconds:
Кстати, при определённом характере импульсов это можно сделать аналоговым: на конденсаторе и компараторе.
На счётчиках менее гибко, значительно ограниченно по функционалу, дороже. Но не требует умения программировать и дополнительных инструментов.
Оптимальным может быть вариант с Ардуино - среда разработки бесплатна, большое сообщество, наверняка помогут, а может уже есть программка, программатор не требуется.
Добавлено after 2 minutes 46 seconds:
Кстати, при определённом характере импульсов это можно сделать аналоговым: на конденсаторе и компараторе.
Re: Прошу совета у знатоков!
На рассыпухе надо еще навыки проектирования таких схем иметь (вернее их "сопровождающей" обвязки)...
Собственно получится "самодельный простейший МК"...
МК - знание начинки, среды разработки, языков (от ассемблера до СИ), наличие программатора...
Так что остается лишь адуринка - быстро и доступно с минимальными расходами.

Собственно получится "самодельный простейший МК"...
МК - знание начинки, среды разработки, языков (от ассемблера до СИ), наличие программатора...
Так что остается лишь адуринка - быстро и доступно с минимальными расходами.
- VNS
- Говорящий с текстолитом
- Сообщения: 1614
- Зарегистрирован: Пт дек 10, 2021 12:48:46
- Откуда: Тюмень
Re: Прошу совета у знатоков!
[uquote="Dmitrudo",url="/forum/viewtopic.php?p=4706479#p4706479"]на Ваш взгляд.[/uquote]
МК ATtiny13A, тактируется на заводских установках (1,2 МГц). Входной вывод РВ1 (6), выходной вывод РВ4 (3).
Прошивка: Если на входе (РВ1) за 1 сек. меньше или равно 30 импульсов, то на выходе (РВ4) "0". Если больше 30 на выходе "1". Счёт производится при переходе с "1" в "0".
Вывод РВ1 подтянут внутренним резистором...
Даже в таком маленьком коде умудрился из-за невнимательности сделать ошибку...
Исправил и добавил генератор на вывод РВ0 для проверки...
Простите, извините, старость не радость... 
МК ATtiny13A, тактируется на заводских установках (1,2 МГц). Входной вывод РВ1 (6), выходной вывод РВ4 (3).
Прошивка: Если на входе (РВ1) за 1 сек. меньше или равно 30 импульсов, то на выходе (РВ4) "0". Если больше 30 на выходе "1". Счёт производится при переходе с "1" в "0".
Вывод РВ1 подтянут внутренним резистором...
Даже в таком маленьком коде умудрился из-за невнимательности сделать ошибку...
Последний раз редактировалось VNS Сб апр 19, 2025 01:20:02, всего редактировалось 1 раз.
- vlasovzloy
- Друг Кота
- Сообщения: 20068
- Зарегистрирован: Чт янв 26, 2012 16:44:29
- Откуда: Таксимо
Re: Прошу совета у знатоков!
Нифига ты резкий! )))
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
Re: Прошу совета у знатоков!
Остаётся только один вопрос...
А какие МК топикстартер знает и есть ли у него соответствующий программатор?

А какие МК топикстартер знает и есть ли у него соответствующий программатор?
Re: Прошу совета у знатоков!
а защита от дребезга еще возможно нужна... 
и оставшиеся ноги можно использовать для задания количества импульсов
напр 1 кнопочка перевода в режим настройки и на вход нужное к-во импульсов подается за время ее нажатия
Добавлено after 2 minutes 9 seconds:
чтоб зашить att13 -нужен usb-rs232 или (usb-uart) и пара транзисторов. и avrdude.
искать isp (uart|rs232) schematic

и оставшиеся ноги можно использовать для задания количества импульсов
напр 1 кнопочка перевода в режим настройки и на вход нужное к-во импульсов подается за время ее нажатия
Добавлено after 2 minutes 9 seconds:
чтоб зашить att13 -нужен usb-rs232 или (usb-uart) и пара транзисторов. и avrdude.
искать isp (uart|rs232) schematic

- VNS
- Говорящий с текстолитом
- Сообщения: 1614
- Зарегистрирован: Пт дек 10, 2021 12:48:46
- Откуда: Тюмень
Re: Прошу совета у знатоков!
[uquote="AlexS4",url="/forum/viewtopic.php?p=4706534#p4706534"]а защита от дребезга еще возможно нужна...
[/uquote]
Если вы сможете кнопку нажать за 1 сек белее 30 раз, то вы виртуоз…
в ТЗ речи о источнике сигнала не было. Так что ТЗ выполнено на 100%. 
Если вы сможете кнопку нажать за 1 сек белее 30 раз, то вы виртуоз…
- valentinovich
- Держит паяльник хвостом
- Сообщения: 999
- Зарегистрирован: Ср окт 04, 2017 20:47:40
Re: Прошу совета у знатоков!
Афигеть, ардуина, МК
Прощее всего на счётчиках, бросовой по деньгам логике. Коей по углам и задарма достать мешок не проблема. А главное - любой пионер (в случае чего) починит.
Прощее всего на счётчиках, бросовой по деньгам логике. Коей по углам и задарма достать мешок не проблема. А главное - любой пионер (в случае чего) починит.
Re: Прошу совета у знатоков!
VNS, ну контакты замыкающиеся с частотой 30+Hz это не фантастика, энкодер напр крутануть на 30Hz рукой нетрудно.
да и дребезг этож не обязательно сухой контакт, оптодатчик может дребезжать и многое другое
но да, не было явно в задании
...но как практика показывает, подобные нюансы выгоднее вовремя угадывать самому подрядчику
да и дребезг этож не обязательно сухой контакт, оптодатчик может дребезжать и многое другое
но да, не было явно в задании
...но как практика показывает, подобные нюансы выгоднее вовремя угадывать самому подрядчику
- АлександрЛ
- Друг Кота
- Сообщения: 43786
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Прошу совета у знатоков!
Некорректное задание- а что должно быть, если импульсов пришло ровно 30?Dmitrudo писал(а):Условно, есть вход- на который подаются импульсы (лог 1 или 0 ). Период опроса порта- 1 сек. Если за время опроса пришло <30 импульсов, на выходе- логич 0. Если пришло >30 импульсов, на выходе- логич. 1.
Вот простенько- два CD4017:
Спойлер
На тактовый вход (выводы 13 и 15 обеих микросхем) подается импульс- "логический ноль" длительностью 1 секунда.
- Вложения
-
- Больше 29 импульсов.png
- (58.35 КБ) 468 скачиваний
Re: Прошу совета у знатоков!
задание составлено плохо....к чему привязать секундный интервал ?...может быть ситуация, что в один интервал попадёт 20 импульсов и в другой 20...схема их не отработает, хотя за секунду их было 40....
Re: Прошу совета у знатоков!
Смотря для чего та задача (автор вопроса малость "темнит" или сам пока не ведает, чего хочет).
Просто от первого импульса считаем последующие. Если интервал от фронта условно первого превысил секунду завершаем контроль.
Тот же результат (перезапуск счётного интервала) будет в случае превышения количества счётных импульсов даже при условии, что секунда от первого из них, ещё не прошла. Это если не случай, когда пакеты следуют с интервалом заведомо более 1 секунды (при данных, организованных в пакеты, а не в случайной последовательности).
В остальном действительно задачка для шаманизма.

Просто от первого импульса считаем последующие. Если интервал от фронта условно первого превысил секунду завершаем контроль.
Тот же результат (перезапуск счётного интервала) будет в случае превышения количества счётных импульсов даже при условии, что секунда от первого из них, ещё не прошла. Это если не случай, когда пакеты следуют с интервалом заведомо более 1 секунды (при данных, организованных в пакеты, а не в случайной последовательности).
В остальном действительно задачка для шаманизма.
Re: Прошу совета у знатоков!
Поэтому, Ардуино - оптимальный вариант. Вопрос будет лишь к входной цепи, остальное можно мильён раз переделать. В отличие от дискретной логики.
- VNS
- Говорящий с текстолитом
- Сообщения: 1614
- Зарегистрирован: Пт дек 10, 2021 12:48:46
- Откуда: Тюмень
Re: Прошу совета у знатоков!
[uquote="Krismi70",url="/forum/viewtopic.php?p=4706570#p4706570"]может быть ситуация[/uquote]
Если этот нюанс важен, то это дело поправимое…
привязаться можно к первому импульсу, тогда секундный отсчёт будет начинаться для данного периода именно с первого импульса… вот как пример:
Прошивка вверху и на следующей странице.
Если этот нюанс важен, то это дело поправимое…
Прошивка вверху и на следующей странице.
Последний раз редактировалось VNS Сб апр 19, 2025 01:21:56, всего редактировалось 1 раз.
Re: Прошу совета у знатоков!
К сожалению наш вопрошающий Dmitrudo не назвал еще два параметра для понимания задачи:
интервал длительности одиночного импульса (от минимального до максимального)
и
длительность интервала между соседними импульсами, которая воспринимается как разрыв потока (окончание пакета).

интервал длительности одиночного импульса (от минимального до максимального)
и
длительность интервала между соседними импульсами, которая воспринимается как разрыв потока (окончание пакета).
- VNS
- Говорящий с текстолитом
- Сообщения: 1614
- Зарегистрирован: Пт дек 10, 2021 12:48:46
- Откуда: Тюмень
Re: Прошу совета у знатоков!
[uquote="BOB51",url="/forum/viewtopic.php?p=4706594#p4706594"]интервал длительности одиночного импульса (от минимального до максимального)
и
длительность интервала между соседними импульсами[/uquote]
В моём примере эти параметры не важны, главное чтобы входные импульсы не превышали 33 кГц (это не точно - прикидка) для корректной работы на данной тактовой частоте МК.

и
длительность интервала между соседними импульсами[/uquote]
В моём примере эти параметры не важны, главное чтобы входные импульсы не превышали 33 кГц (это не точно - прикидка) для корректной работы на данной тактовой частоте МК.
Окончанием пакета, является завершение отсчёта интервала 1 сек. Зачем придумывать "гору огурцов"…которая воспринимается как разрыв потока (окончание пакета).
Re: Прошу совета у знатоков!
Не ожидал, что мой вопрос вызовет такую реакцию. Приятно удивлен. Спасибо всем ответившим!
Я не темню, просто посчитал, что загружать деталями ради "узнать на какой элементной базе собирать"- перебор.
Конечно, я выложу подробности, это не тайна.
Сигнализация Старлайн А60 ВТ, настроена на закрывание центрального замка при начале движения. О начале движения сигналка узнает от интегрированного в нее датчика перемещения. Пару раз было, что закрывание ЦЗ срабатывало не в движении, а при раскачивании машины во время выхода и хлопания дверью пассажиром, благо я был в этот момент внутри. Совсем не радует остаться, как-нибудь, перед закрытой дверью с работающим двигателем, вдалеке от дома.
Иду на хитрости- то опущу стекло, то дверь не закрою, но по теории вероятности шанс, что я останусь на улице с каждым разом растет. В общем мне это надоело.
Что интересно, в настройках А60 есть пункт- блокировать ЦЗ при достижении скорости ( и можно выбрать скорость, например 30 км\ч), но работает эта фишка при наличии GPS модуля, который во-первых устанавливать надо, плюс у нас ГПС сигналы глушат так, что иногда стоя на перекрестке, твой навигатор показывает, что ты едещь 212 км час. Так что, не вариант.
Задумка была такая:
датчик скорости на авто дает 6000 импульсов на км. пройденого пути. Расчет показывает, что при скорости 20 км час, в секунду проскакивает прим. 34 импульса, И я подумал, что необходима схема, которая считала бы импульсы и при достижении 20 км\час +\-, давала бы сигнал на вход сигнализации, и та- только тогда могла бы закрыть ЦЗ.
Планировал, "по-старинке" собрать на Ла7 и Ие10 561 серии, плюс обвязка RC, но в последний момент "вспомнил" про МК и решил спросить авторитетное мнение.
Теперь я в растерянности, если честно. Если VNS так играючи написал код, то вариант с ИЕ и ЛА уже кажется- сложным.

Я не темню, просто посчитал, что загружать деталями ради "узнать на какой элементной базе собирать"- перебор.
Конечно, я выложу подробности, это не тайна.
Сигнализация Старлайн А60 ВТ, настроена на закрывание центрального замка при начале движения. О начале движения сигналка узнает от интегрированного в нее датчика перемещения. Пару раз было, что закрывание ЦЗ срабатывало не в движении, а при раскачивании машины во время выхода и хлопания дверью пассажиром, благо я был в этот момент внутри. Совсем не радует остаться, как-нибудь, перед закрытой дверью с работающим двигателем, вдалеке от дома.
Иду на хитрости- то опущу стекло, то дверь не закрою, но по теории вероятности шанс, что я останусь на улице с каждым разом растет. В общем мне это надоело.
Что интересно, в настройках А60 есть пункт- блокировать ЦЗ при достижении скорости ( и можно выбрать скорость, например 30 км\ч), но работает эта фишка при наличии GPS модуля, который во-первых устанавливать надо, плюс у нас ГПС сигналы глушат так, что иногда стоя на перекрестке, твой навигатор показывает, что ты едещь 212 км час. Так что, не вариант.
Задумка была такая:
датчик скорости на авто дает 6000 импульсов на км. пройденого пути. Расчет показывает, что при скорости 20 км час, в секунду проскакивает прим. 34 импульса, И я подумал, что необходима схема, которая считала бы импульсы и при достижении 20 км\час +\-, давала бы сигнал на вход сигнализации, и та- только тогда могла бы закрыть ЦЗ.
Планировал, "по-старинке" собрать на Ла7 и Ие10 561 серии, плюс обвязка RC, но в последний момент "вспомнил" про МК и решил спросить авторитетное мнение.
Теперь я в растерянности, если честно. Если VNS так играючи написал код, то вариант с ИЕ и ЛА уже кажется- сложным.
Последний раз редактировалось Dmitrudo Сб апр 19, 2025 00:53:15, всего редактировалось 2 раза.
- АлександрЛ
- Друг Кота
- Сообщения: 43786
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Прошу совета у знатоков!
А оно точно работает?
Или я где-то ошибся?