Фиксируемых генератор импульсов
- Войдите на сайт для отправки комментариев
Втр, 08/11/2016 - 13:14
Доброе время суток,проект простейшей программы поставил меня в ступор,надеусь на вашу отзывчивость !
И так имеем кнопку и один выход с подвязоным светодиодом для визуализации , Задача при нажатии на кнопку получаем импульс Hi 1C low 3C в количестве 50 раз и ждем нажатии нажатия кнопки если нажатия раньше окончания цикла то пауза и сброс счетчика. Зарания благодарен.
А за что именно Вы благодарны?
За то, что мы приняли Ваше сообщение к сведению?
Я понимаю еще, если бы в сообщении был вопрос, можно было бы быть юблагодарным за ответ на него...
А! Понял! Вы будете благоданы за дельный совет. Тогда даю такой: Если Вы хотите, чтобы кто-то решил поставленную задачу за Вас, подобные темы нужно размещать в разделе "Ищу исполнителя".
А! Понял! Вы будете благоданы за дельный совет. Тогда даю такой: Если Вы хотите, чтобы кто-то решил поставленную задачу за Вас, подобные темы нужно размещать в разделе "Ищу исполнителя".
Недобрый ты, хоть раздел "Программирование" сперва бы предложил.))))
написал я ему прграмку в "ищу..." пусть радуется. Не стоит это нравоучений.
Это просто по утрам я трезвый, потому и добрый. Было бы дело вечером - долго бы матерился на ленивого неуча.
Не судите так строго я просто еще учусь,а за скейч еще раз спасибо,пытаясь что-то написать не получалось реализовать счетчик,теперь есть пища для новых проэктов :-):-):-):-)
Недобрый ты, хоть раздел "Программирование" сперва бы предложил.))))
Не подходит по формальным признакам: для "Программирования" в исходном сообщении должен быть скетч.
Недобрый ты, хоть раздел "Программирование" сперва бы предложил.))))
Не подходит по формальным признакам: для "Программирования" в исходном сообщении должен быть скетч.
А как же "Азбука"? А позже глядишь и нетленка появится.))))
Не судите так строго я просто еще учусь,а за скейч еще раз спасибо,пытаясь что-то написать не получалось реализовать счетчик,теперь есть пища для новых проэктов :-):-):-):-)
Рецепт: Как быстро написать скетч новичку.
1 Найти живой форум. А лучше не один.
2. Открыть там тему и написать что скетч сделает.
3. Добрые(а может и не добрые ) дяди напишут рано или поздно скетч.
4. Придумать новые проэкты.
здравсттвуйте подскажите что изменить в коде что бы генератор выдавал определеное количество импульсов например 3 импульса
здравсттвуйте подскажите что изменить в коде что бы генератор выдавал определеное количество импульсов например 3 импульса
вместо строк 26-29
ledState = !ledState;
Не проще будет?
проще но все равно при эмуляции в протеусе количество циклов не равно трем оно бесконечно
digitalWrite(ledPin, !DigitalRead(ledPin)); Минус одна переменная и несколько строк.
Чтобы не было бесконечно, надо завести конечную переменную и не позволять ей изменяться.)))))
поподробнее
byte a = 0;
Вместо for if (a < 3) {ваш мигалка}
После 34стр. a = a + 1;
Подскажите как избавиться в коде от delay
Ну , если я избавлюсь, то я полностью изменю программу. Это вам надо? Может пусть так будет.
Боюсь в циклах будет проблемно. Классика здесь. Алгоритм придется в корне поменять на IF-ы.
ИЗМЕНЯЙТЕ ГЛАВНОЕ ЧТОБ СМЫСЛ ОСТАЛСЯ
bwn, для меня это не "классика", а "глубокая древность".
bwn, для меня это не "классика", а "глубокая древность".
Так я вроде ТС отвечал.))))
Если кому иному, то процитирю али обращусь.)))
ИЗМЕНЯЙТЕ ГЛАВНОЕ ЧТОБ СМЫСЛ ОСТАЛСЯ
Неа, это вы изменяйте. Направление показали.
ВСЕ ВЕРНО НЕ ПОЛУЧИЛОСЬ ПАУЗУ ДЕЛАТЬ В ПОСТЕ №9 ПРИШЛОСЬ ЧЕРЕЗ DELAУ ДЕЛАТЬ
Я НОВИЧЕК В ЭТОМ ДЕЛЕ
Вроде в 9посте вас не устраивала только бесконечность повторения?
да все верно после повтора № количества пауза нужна там я просто пытался что подобное сдеелать без delay
Путаетесь в показаниях, просто пауза или прекратить вовсе?
пауза и дальше по кругу основа для эмулятор ДПКВ авто в общем
Заводите две глобальных переменных флага, в начале loop проверяете одну на 0, если да - крутите свой for, в конце изменяете ее значение.
После окончания for, проверяете второй флаг на 0, если да - изменяем его, запоминаем значение миллис и начинаем отсчитывать требуемый интервал. По достижении - сбрасываем оба флага в 0. Второй флаг нужен, чтобы при каждом проходе loop не изменять уже сохраненное значение миллис.
по подробне можно я новичек в микроконролерах учусь на примерах
Ну вот так
Давайте проще, берете код из 9 поста и после 37 строки ставите delay с требуемой вам задержкой.
не идет на осцилограме не работает пост №29
Давайте проще, берете код из 9 поста и после 37 строки ставите delay с требуемой вам задержкой.
Не все простые "гениальные"решения будут работать. Перед тем как советовать, лучше убедиться на практике.
А вот залей в Ардуину и по светодиоду пин 13 убедись в мигании 5 импульсов
Давайте проще, берете код из 9 поста и после 37 строки ставите delay с требуемой вам задержкой.
Не все простые "гениальные"решения будут работать. Перед тем как советовать, лучше убедиться на практике.
Каюсь, не проверял. Поверил автору, что все устраивает кроме отсутствия паузы.
В таком стиле никаких delay() или других циклов быть в loop() не должно, ну кроме ну очень коротких. Это источник косяков в будущем. Вот народ на циклы и delay() подсел, и у них этот стиль "пробуксовывает".
А вот залей в Ардуину и по светодиоду пин 13 убедись в мигании 5 импульсов
все работае осцилограф видт при установе количества зубьев даже обороты видит
надо будет попробоват на авто
при расмотрении осцилограмы обнаружил страный импульс период меньше чем у других
Ну у меня осциллографа нет, точнее есть но на транзисторах. Я так не ковырял эту тему. Попробуйте millis() заменить на micros() со всеми последствиями http://arduino.ru/Reference/Micros. Да и на форуме прикреплена тема на эту тему.
http://arduino.ru/forum/programmirovanie/etyudy-dlya-nachinayushchikh-blink-i-bez-delay-i-bez-millis
Ну и код
alex1608, а что вы хотите то? Выдать пачку импульсов может стандартная функция tone(), нужно только точно рассчитать тайминг. К примеру команда tone(8,100,50); даст на 8 ногу 5 импульсов с периодом 10мс.
просто пачка импульсов не устроит задающий диск например ваз ДПКВ ВАЗ представляеш 58зубьев и 2 пропушено?