как задать количество выходящих импульсов светодиода
- Войдите на сайт для отправки комментариев
Ср, 05/01/2022 - 03:16
Привет всем.
Прошу не судить строго, только начинаю изучение данного зверя (Arduino)
Цель: получить на выходе определенное количество положительных импульсов, после чего выход должен отключиться.
За основу чудесно подойдет скетч с миганием 13 пина:
******
void loop() - работа в цикле, а мне нужно чтоб отсчитал 100 импульсов и выход отключился
в моем понимании должно быть что то в таком виде:
for (int LED_pin = 1; LED_pin < 100; LED_pin++)
но как и куда его всунуть - не пойму вообще.
мах что добился - в процессе цикла идет отсчет 300 импульсов, а потом опять продолжение цикла.
Не подходит loop() - возьмите setup()
Поддерживаю #1 полностью, но если нужно именно в loop (по какой-то причине), то попробуй вот так:
А если еще кнопку добавить, то можно по ее нажатию повторять "процедуру" (ну что ты там делаешь).
Спасибо. Вечером попробую
Попробовал?))
большое спасибо, вечер проигрался - но у меня так ничего и не получилось.
пересмотрел кучу обучающих роликов и понял что нужно начинать все с самого маленького, чтоб структурно откладывалось в голове.
в одном из роликов увидел похожую реализацию данной задачи, но на основе таймера (в котором я конечно вообще "0"). Но передрав ее и методом научного тыка подобрал нужную для меня комбинацию и остановку программы
единственное что немного не устраивает: одинаковое время HIGH и LOW, мне нужно где то 1/4. (если кто знает как чтоб глобально не менять скетч: подскажите)
кнопки буду подвязывать чуть попозже.
если будут вопросы: подскажите....
Ученье - свет, а не ученье - чуть свет и на работу
всем еще раз СПАСИБО
Ты тролишь или шо? Я ж тебе готовый код дал, только «моргалку» присобачь и все. А если и этого не умеешь - начинай учить Си и ардуино в частности. Нет желания/времени учить - закажи код в разделе «Ищу исполнителя».
ЗЫ: Учить нужно не по «видосикам», а книги читать. Например: «Си для чайников» вполне пойдёт.
в одном из роликов увидел похожую реализацию данной задачи, но на основе таймера
в каком месте в этом коде таймер?
затупил.....
Ты тролишь или шо? Я ж тебе готовый код дал, только «моргалку» присобачь и все. А если и этого не умеешь - начинай учить Си и ардуино в частности. Нет желания/времени учить - закажи код в разделе «Ищу исполнителя».
ЗЫ: Учить нужно не по «видосикам», а книги читать. Например: «Си для чайников» вполне пойдёт.
даже не буду спорить. Значит я затупил или многого не знаю. Глобально вникать в программирование нет времени, по этому и решаю как могу. Не смогу сделать сам - конечно буду заказывать... Не серчай.... Ну не смог....
Глобально вникать в программирование нет времени
с таким настроением тебе слона не продать
ТС, ты как партизан. Написал бы по нормальному что за импульсы, для чего нужны и тд. Мошт и написали бы тебе готовый код. А то темнишь, не понятно ничего.
Цель вообще такова:
есть импульсный насос (12/24В), который нужно настраивать на определенную дозировку (45mL).
Чтоб он дал 45mL- нужно 270 раз чтоб он сработал.
погрешность допускается 0,5mL
Вот я и решил подачу импульсов питания (сделаю через мосфит) реализовать на основе мигания светодиода , нужно было только как то реализовать 270 раз (чтоб не считать) и СТОП.
Можно конечно поставить счетчик импульсов, но зачем городить огород, если все это можно сделать на Ардуино.
По этому и пытался.
Если есть более интересные идеи (по данной реализации) и спортивный интерес - буду рад.
Пиво с меня
Получили госзаказ на производство спутника-В? :-)
ЗЫ: мосфит - Московский Фитнесс? ))
Вот накалякано в предыдущем сообщении - бери и делай импульс скважность 80% период 200 ms
Спасибо, все работает
if
(counter < 1350 && millis() - tmr >= 40) тут 40 ms-1/5 периода импульса так что можно подстроить если нужно опять же 1350/5=270 кол-во импульсов тоже подстраивается
if
(counter < 1350 && millis() - tmr >= 40) тут 40 ms-1/5 периода импульса так что можно подстроить если нужно опять же 1350/5=270 кол-во импульсов тоже подстраивается
Да, спасибо, я разобрался
Пиво сам выпей, только безалкогольное
Пиво сам выпей, только безалкогольное
:-)
Пиво сам выпей, только безалкогольное
3 литра.
готовый скетч был, почти )))
Цель вообще такова:
есть импульсный насос (12/24В), который нужно настраивать на определенную дозировку (45mL).
Чтоб он дал 45mL- нужно 270 раз чтоб он сработал.
погрешность допускается 0,5mL
Я такую делал. Из личного опыта так работать не будет. Причина: погрешность примерно +-10%, зависит от количества жидкости в канистре/бочке и много чего еще. Сам ставил датчик HC-SR04 ультразвуковой, один насос закачивает в некую емкость, датчик меряет, после чего второй насос выкачивает из мерной емкости.
Я такую делал. Из личного опыта так работать не будет. Причина: погрешность примерно +-10%, зависит от количества жидкости в канистре/бочке и много чего еще. Сам ставил датчик HC-SR04 ультразвуковой, один насос закачивает в некую емкость, датчик меряет, после чего второй насос выкачивает из мерной емкости.
и чего ему не работать при дозе в 0,17мл в допустимую погрешность входит с большим запасом
готовый скетч был, почти )))
Обычно пишется макрос и тогда хоть кучей светодиодов управляй одновременно и ни о чём не думай.
готовый скетч был, почти )))
Обычно пишется макрос и тогда хоть кучей светодиодов управляй одновременно и ни о чём не думай.
да, кстати где то видел что макросами можно управлять светодиодами с разной частотой и независимыми циклами. Но увы, глубоко в это не вникал. Но как метод знаю есть...
Изменил под себя:
И уперся в несостыковку:
если меняю в строчке if (counter < 254 && millis() - tmr >= 40) {
254 меняем на 256 или выше - цикл продолжает работать
до 254 включительно - (при 254) отсчитывает 127 вспышек и цикл заканчивается.
а мне нужно установить 540 (чтоб было 270 импульсов)
что может быть?
counter описан как байт - он не может быть больше 255. Если надо больше - опишите его как инт, например
counter описан как байт - он не может быть больше 255. Если надо больше - опишите его как инт, например
спасибо, вы быстрее написали пока я разбирался
но про тип данных догадался сам.
сделал то же что вы предложили
спасибо
возьми мой скетч, там все параметры в заголовке )))
PS он кстати работает на любой ардуине, где есть индикаторный светодиод, хоть nano хоть DigiSpark...
возьми мой скетч, там все параметры в заголовке )))
PS он кстати работает на любой ардуине, где есть индикаторный светодиод, хоть nano хоть DigiSpark...
а если нужно на несколько пинов разбросить? то как быть?
а на один еще и инверторный...
возьми мой скетч, там все параметры в заголовке )))
PS он кстати работает на любой ардуине, где есть индикаторный светодиод, хоть nano хоть DigiSpark...
а если нужно на несколько пинов разбросить? то как быть?
а на один еще и инверторный...
Очевидно как-то так:
Ужос! Сравни с №26
Ну он же у ua6em спрашивал (я так понял по его коду), по его коду я и сделал.))
Ну он же у ua6em спрашивал (я так понял по его коду), по его коду я и сделал.))
все работает, вопросов нет.
спасибо
ОК. Как насчёт пива?
Ужос! Сравни с №26
да, возможно у тебя вариант (с макросами) может быть более перспектвный, но он не расписан....
дописать его я не могу....
Ребята дали реально рабочие скетчи
им БОЛЬШОЕ СПАСИБО
да и вообще, СПАСИБО ВСЕМ !!!
ОК. Как насчёт пива?
Да не вопрос,
могу только на карту,
потому как мы все друг от друга очень далеко
да, возможно у тебя вариант (с макросами) может быть более перспектвный, но он не расписан....
дописать его я не могу....
Да не вопрос,
могу только на карту,
потому как мы все друг от друга очень далеко
ОК, это проверка на вшивость. Я тут не участник.)
Да не вопрос,
могу только на карту,
потому как мы все друг от друга очень далеко
ОК, это проверка на вшивость. Я тут не участник.)
мы тут все участники!! и при необходимости поможем друг-другу как минимум советом
brus_o, хотите подробностей, напишите htpicc@gmail.com
ОК. Как насчёт пива?
не гуманно заставлять человека выпить три литра пива, особенно если он пиво не пьёт )))
Ужос! Сравни с №26
ну так это уже будет совсем другая программа )))
PS кстати, ты предлагаешь последовательное выполнение, если уж писать так сложно то параллельное )))
PPS Параллельная работа, можно добавить запуск от кнопки )))
test.ino
Blink.h
Да! Это мой первый пробный шар, два экземпляра не взлетело, что не так пните!!!
не гуманно заставлять человека выпить три литра пива, особенно если он пиво не пьёт )))
Ну должен же распробовать?
не гуманно заставлять человека выпить три литра пива, особенно если он пиво не пьёт )))
Ну должен же распробовать?
а вдруг это будет начало пути под откос?
не гуманно заставлять человека выпить три литра пива, особенно если он пиво не пьёт )))
Ну так должен же человек понять насколько это просто!
Соответствует ли эти 3 литра друдозатратам? Вопрос риторический.
Это мой первый пробный шар, два экземпляра не взлетело, что не так пните!!!
А как не взлетело то? Не понял...
А как не взлетело то? Не понял...
А пофигу! Ляпнул, а вы тренируйтесь.)