Показать сообщение отдельно
Старый 12.03.2022, 23:49   #3
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Элементарный таймер

Цитата:
Сообщение от vinatim Посмотреть сообщение
Добрый день. Прошу сильно не пинать.
Нужен элементарный таймер. На вход пришла "1", на выходе вышла "1", через х секунд на выходе "0" не зависимо что на входе.
До этого программировал в Лого, там все просто.
Слово "таймер" в кодесисе и прочих немецких разработках означает не таймер (счётчик времени), а задержку (выдержку времени, "делэй"). Делэй это тоже связано со временем, но иначе.

Теперь, когда мы разобрались с "элементарной трудностью перевода", можно приступать к лоджику. Никогда не забывайте, что оригинальный язык лого - это немецкий, а не английский. Английское слово "таймер" в немецком имеет кучу значений, означающих немного разные вещи и действия. Собственно, как и в русском.

У вас, судя по написанному вами, действие не элементарное, а селективное. Запуск выдержки происходит фронтом сигнала. При этом вы не описали событие сброса выдержки, поэтому любой совет будет неполным.

Написанное вами выполнить можно несколькими способами. Наиболее универсально соединение триггера со счётчиком. Триггер инверсным выходом сбрасывает счётчик, поэтому при взводе триггера счётчик досчитает до конца вне зависимости от события запуска.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Благодарность от: