Затримка сигналу TTL


9

Мені потрібно розробити схему, щоб затримати вхідний сигнал на заданий проміжок часу (близько секунди, обрізна). Затримку слід встановити за допомогою використання пасивних компонентів (резисторів або конденсаторів). Вхідний сигнал - це в основному рівень TTL, який певний час стає високим, деякий час залишається високим (100 мс має бути хорошим значенням), потім повертається низьким.

Я не можу використовувати мікро- чи інший програмований пристрій, оскільки процес сертифікації прошивки занадто дорогий.

Я реалізував робоче рішення, яке використовує подачу мережі RC в компаратор, що спрацьовує Шмідта (з фіксованою посиланням напруги, розміщеною на вході проти рівня напруги RC). Я не дуже задоволений цим рішенням з двох основних причин:

  1. необхідна затримка передбачає великі кришки, які є досить неточними;
  2. високий рівень вхідного сигналу повинен тривати принаймні стільки, скільки «затримка»;

Загальні вимоги:

  • тривалість затримки 1 сек +/- 500 мс з точністю +/- 10%
  • Затримка заходу повинна тривати розумний час, давайте скажемо не менше 100 мс (і менше 200 мс).

Приклад форм сигналів вхідних і вихідних сигналів


4
Або ви можете скористатися регістром змін, якщо у вас є якийсь підходящий тактовий сигнал
Річард Космос

1
Я думаю, що вам потрібно намалювати схему вхідного та вихідного сигналу, анотовану з тим, що викликає, і які вимоги до вихідного сигналу. Незрозуміло, що ви маєте на увазі під «сигналом», чи це лише вхідний + перехідний край, чи просто -ве ребро, або те і інше, і що відбувається, коли зміниться час між ними. Моностабільний, як HC123, може бути тим, що вам потрібно, а може і ні, залежно від того, що ви хочете.
Neil_UK

3
Так, як щодо хорошого таймера ol 555?
кальцій3000

9
Заява "Мою прошивку потрібно сертифікувати" не відповідає "Я не знаю, як затримати цифровий сигнал". Чи можете ви дати нам власну оцінку досвіду? (Серйозно, писати гарне програмне забезпечення зазвичай простіше, ніж розробити хорошу аналогову схему, і якщо сертифікація є вимогою до життєво важливої ​​системи, я вважаю за краще не розробити аналогову частину, якщо ви не знаєте, як реалізувати затримка)
Маркус Мюллер

1
Але: де зупиняється апаратне забезпечення та починається програмне забезпечення? Дуже життєздатне рішення, особливо якщо ви маєте справу з більш ніж одним цифровим сигналом, який так чи інакше потребує маршрутизації, і якщо вам потрібно заощадити на кількості компонентів і просторі на платі, - це просто створити мінімальний макет CPLD з внутрішнім годинником і лічильником , і замовити ці частини (часто навіть попередньо запрограмовані, навіть). Це налаштоване обладнання, а не програмне забезпечення? Я впевнений, що ваші стандарти визначають це!
Маркус Мюллер

Відповіді:


10

Analog Devices / Linear Technology LT6993-1 (див схеми нижче) є позитивним фронтом генератор імпульсів , який має резистор програмованого тактову частоту і резистор програмованого дільник значення і полярність, із затримками до 33 секунд з точністю ~ 3%.

Внутрішній A / D перетворювач перетворює вхідну напругу DIV в 8-бітний перемикач і 1-бітний селектор полярності. Тактова частота та значення дільника визначають ширину вихідного імпульсу. Великі параметри розділювача дозволяють створювати резистори розумного розміру для створення великих затримок.

Схема нижче (з аркуша даних) показує, як використовувати дві мікросхеми для генерації затримки імпульсу у відповідь на зростаючий край вхідного імпульсу. Значення резистора потрібно було б скорегувати відповідно до необхідних затримок. Запропоновані значення резисторів DIV показані в таблиці нижче схеми.

введіть тут опис зображення

введіть тут опис зображення


8

Спеціальні рішення з кремнію роблять CSS555C , який є 555 таймером, одруженим із широким лічильником. Це дозволяє підраховувати кілька циклів таймерів, щоб використовувати резистори розумного розміру для створення дійсно великих затримок. У нього є обрізний внутрішній конденсатор для налаштування затримок, тому він навіть не потребує зовнішнього конденсатора.

На схемі нижче показаний моноцикличний режим багатоциклу. Вам знадобиться дві фішки. Перший чіп генерував би вашу затримку на 1 секунду, а другий мікросхему буде спрацьовувати в кінці затримки для генерації імпульсу 100 мс.

Якщо ви перейдете в Google "CSS55C price", ви можете знайти джерела, де можна придбати деталь.

моно налаштування


Гарна пропозиція (я вже спробував NE555, але у мене виникли деякі проблеми) я спробую ще раз.
weirdgyn

6

Сторінка 14 примітки програми Texas Instruments 74LS123 містить приклад цифрового ланцюга затримки, що використовує обидві половинки «123. Ви можете регулювати як затримку, так і ширину вихідного імпульсу, змінюючи значення Rext. Якщо вам не потрібно випадково припиняти вихідний імпульс, ви можете прив'язати входи 'B' і чіткі входи високими.


Звучить товар і досить просто ... Я маю дати це спробувати.
weirdgyn

3

Я реалізував робоче рішення, яке використовує подачу мережі RC в компаратор, що спрацьовує Шмідта (з фіксованою посиланням напруги, розміщеною на вході проти рівня напруги RC).

Це дійсно дуже стандартний спосіб реалізації затримки в цифровій схемі.

Я не дуже задоволений цим рішенням з двох основних причин:

  • необхідна затримка передбачає великі кришки, які є досить неточними;

Ну просто просто використовуйте більший R! Затримка визначається добутком R і C, тому ви можете торгувати один за іншим - а великоцінні резистори легше отримати точні, ніж великоцінні конденсатори.

  • високий рівень вхідного сигналу повинен тривати принаймні стільки, скільки «затримка»;

Тож, можливо, замініть готовий тригер Шмітта заздалегідь заданими межами гістерезису на тригер із високим порогом "не ввімкнути" та низьким порогом "увімкнено".


3

Ще одне 2-чіпове рішення. Перевагою такого підходу є безперервний годинник, який можна виміряти і відрегулювати, можливо, простіше, ніж приурочення часу до одного польоту.

Вхідний імпульс встановлює засувку NAND, яка видаляє Скидання з лічильника, що дозволяє йому рахувати. Після 8 тактових імпульсів вихід виходить високим. Наступний тактовий імпульс скидає засувку NAND, яка утримує лічильник у режимі скидання, вимикаючи його.

Інші два ворота утворюють RC-генератор, показані значення повинні становити його приблизно 8 Гц на 1 секунду затримки і шириною імпульсу 125 мкс.

введіть тут опис зображення


Я завжди прихиляюсь до будь-якої відповіді, в якій використовується 4017 ;-)
некоматичний

2

74HC4538 це один я використовував часто. 1 секунда вгору в кінці діапазону. Це однопакетна угода, оскільки вона має два окремих підрозділи. Перший забезпечив би затримку, а його вихід призведе до другого, що створить остаточну ширину імпульсу.

Щоб було зрозуміліше, можливо: перший буде налаштований як одиниця, що спрацьовує позитивним краєм, а його вихід Q буде керувати другим однократним, який налаштований для виявлення негативних ребер. Період першої буде однією секундою, а другий пристрій матиме потрібну ширину імпульсу (звичайно, в межах розуму - напевно, менше секунди було б добре).

І якщо ви переживаєте за взаємодію TTL з CMOS, не будьте. Якщо припустити, що CMOS є єдиним навантаженням на виході TTL, додавання резистора 1k підтягування до +5 зробить трюк без суєти.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.