Выход
Время задержки подбирается экспериментально, иначе tред = 250 мкс
Опрос группы двоичных датчиков.
Иногда в системах управления контроллер связан не с одним, а с группой датчиков, которые могут быть автономными (логически независимыми) внутренне*** взаимосвязанными, т.е. формирующими единый двоичный код.
В первом случае состояние всех датчиков (если они присоединены к одному порту) читается одной командой в виде байта состояния и записывается в АЗУ, в ячейку с битовым доступом, с последующим анализом отдельных битов.
MOV 20H,P120.0, CONTROL120.1, CONTROL2 20.2,.
_ _ _ _ _ _
Во втором случае контроллер читает состояние датчиков и предает управление на соответствующую подпрограмму в зависимости от принятого двоичного кода. Контроллер должен сравнить принятый код с заданным и в зависимости от результата сравнения перейти на процедуру управления.
а) Использование команды "исключающее ИЛИ":
M1: MOV A,#CODE - загрузка заданного кода
XRL A,P1 - сравнение заданного кода с полученным
Если совпадают сигналы логической единицы "1", или логического нуля "0", то результатом является "0". В других случаях единица.
б) Сравнение вариантов
M1: MOV A, #CODE
CJNE A,P1,M1
Примечание: Число датчиков не должно превышать восьми.
Опрос матрицы датчиков.
Такая задача возникает, когда число датчиков много больше числа входов контроллера.
Рассмотрим подключении е клавиатуры из 64 контактов, подключенных к УМК в виде матрицы 8х8.
P0 - на чтение информации.
P1 - на вывод информации.
Сигнал на выходе порта P1 последовательно сканирует 8 столбцов матрицы активным сигналом логической единицы "1", начиная со старшего разряда P1.7.
Через P0 считывается состояние всех контактов в данном столбце и запоминается в восьми байтовом масштабе с побитовой адресацией.
После завершения сканирования через 8 тактов данный массив АЗУ представляет собой карту текущего состояния всех контактов.
Принципиальная схемы матрицы в каждом узле представляет контакт, включенный последовательно с диодом, все диоды включены параллельно на каждой линии опросов***. При не нажатых контактах состояние линии опроса считывается в виде логического нуля, т.к. каждая линия через резистор 43 кОм присоединена к земле. Все 8 столбцов матрицы присоединены к напряжению питания Uп = +5 В с помощью резисторов R = 4.3 Ом, поэтому замкнутое состояние контакта в любом режиме считывается в виде логической единицы. Последнее выполняется в том случае, если на столбец в котором расположен замкнутый контакт будет подаваться логическая единица с выхода порта P1. На столбцах с логическим нулем замкнутое состояние контакта читается в идее логического нуля. Для предотвращения взаимного влияния нескольких замкнутых контактов на одной линии служат развязывающие диоды.
Блок схема процедуры сканирования.
Буфер матрицы сканирования - область АЗУ, с программно *** битами, где хранятся 64 текущих значения состояния контактов и 64 значения предыдущих значений. Текущее значение адрес 20H - 27H, предыдущее значение - 28H - 2FH.
Рисунок 37. Блок-схема процедуры сканирования
.0H
.1H
адрес битов в ячейки 20H
.7H
Маска сканирования - информация, выводящаяся в порт P1 в виде логической единицы в одном из разрядов.
Самое читаемое:
Метод частотной модуляции радиотехнического сигнала
За последнее время существенно повысился технический уровень
электронной техники. Быстрое развитие требует создания все более точного и
сложного автоматизированного технологического оборудования для изобретения
более сложных и совершенных устройств с лучшими характеристиками и параметрами,
меньшими габаритами.
Для у ...