|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Устранение дребезга контактов
При работе МК с датчиками, имеющими механические или электромеханические контакты (кнопки, клавиши, реле и клавиатуры), возникает явление, называемое дребезгом. Это явление заключается в том, что при замыкании контактов возможно появление отскока (BOUNCE) контактов, которое приводит к переходному процессу. При этом сигнал с контакта может быть прочитан МК как случайная последовательность нулей и единиц. Подавить это нежелательное явление можно схемотехническими средствами с использованием буферного триггера (рисунок 3), но чаще это делается программным путем. Наибольшее распространение получил программный способ ожидания установившегося значения с помощью временной задержки. Устранение дребезга контакта путем введения временной задержки заключается в следующем. Программа, обнаружив замыкание контакта К, запрещает опрос состояния этого контакта на время, заведомо большее длительности переходного процесса. Временная задержка (в пределах 1-20 мс) подбирается экспериментально для каждого типа датчиков и реализуется подпрограммой DELAY.
WAITC: JB P1.3, WAITC;ожидание замыкания контакта датчика ACALL DELAY;вызов подпрограммы задержки JB P1.3, WAITC;повторная проверка на замыкание контакта
Повторная проверка не обязательна и проводится для устранения реакции на случайные помехи. В случае ожидания импульсного сигнала с учетом подавления переходного процесса программа будет выглядеть:
WAITC: JB P1.3, WAITC;ожидание замыкания контакта датчика ACALL DELAY;вызов подпрограммы задержки JB P1.3, WAITC;повторная проверка на замыкание контакта WAITO: JNB P1.3, WAITO;ожидание размыкания контакта датчика ACALL DELAY;вызов подпрограммы задержки JNB P1.3, WAITO;повторная проверка размыкания контакта
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |