УСТРОЙСТВА ВВОДА-ВЫВОДА В СИСТЕМЕ ЧЕЛОВЕК – ЭВМ – ЧЕЛОВЕК. КЛАВИАТУРА. МУЛЬТИПЛЕКСОРЫ.
Лабораторная работа № 16(14).
Распространенными устройствами ввода-вывода (УВВ) информации в системе человек – ЭВМ – человек являются разного рода клавиатуры, табло цифровой и световой индикации, дисплеи. При реализации их схемных решений часто используют устройства, называемые мультиплексорами.
Мультиплексор – это функциональный узел, осуществляющий подключение (коммутацию) одного из нескольких входов данных (D) к одному выходу F. Номер подключаемого входа данных (информационного входа) определяется кодом (двоичным), поданным на адресные входы (A).
На рис.1 показан механический аналог - ключ, иллюстрирующий работу мультиплексора. От управляющего адресного кона A1A0 зависят положение ключа и, следовательно, информация, поступающая с информационных входов D0 – D3 на выход F.
Изображение на схемах мультиплексора (с двумя адресными входами) показано на рис.2. Встречающиеся буквенные обозначения: MX, MS, MUS. Если MX имеет n адресных входов (A), то возможное число информационных входов (D) 2n. Так, MX, имеющий n=2 адресных входа, способен подключать один из 4 (22 = 4) информационных входов на один выход. Такого рода схемы иногда называют коммутаторами "четыре в один" (4 → 1).
Мультиплексор - схема комбинационного типа, и он может быть построен из логических элементов. Для построения, например, функциональной схемы MX 4 → 1 можно воспользоваться известным нам методом: составить полную таблицу истинности MX, записать, исходя из нее, конституенты единицы, составить из них логическое уравнение и согласно этому уравнению построить схему из логических элементов. MX 4 → 1 имеет всего 6 входов: 2 адресных (управляющих) и 4 информационных. Количество возможных комбинаций двоичных сигналов (1 и 0) на этих входах составляет 26 = 64. Т.е. полная таблица истинности должна иметь 64 строки. Трудоемкость при формальном применении метода слишком велика. Однако, если исходить из заданного в определении способа работы MX, можно получить существенно более компактную таблицу истинности. В таблице 1 не расписаны все возможные значения информационных входов D и выходной функции F, а, в соответствии с определением MX, выходной функции F приписано значение того информационного входа Dn, номер (n) которого задан соответствующим двоичным кодом на адресных входах. Например, если на адресных входах задан двоичный код 10 (n=2), то F=D2. Причем, имеется в виду, что каждый информационный вход может принимать в общем случае значения как 0,так и 1. Таким образом, существует неопределенность при составлении конституент единицы, т.к. любая строка табл.1 с равным основанием может считаться как нулевой, так и единичной. Из этого затруднения можно выйти следующим образом: принять максимально возможный вариант, когда все информационные входы заданы единичными (D0=D1=D2=D3=1), и включить в уравнение выходной функции конституенты единиц, составленные для всех четырех строк табл.1:
Для того, чтобы учесть и все другие возможные варианты значений информационных входов (кроме D0=D1=D2=D3=1), в каждое слагаемое, соответствующее определенной строке, следует включить еще один сомножитель, обозначающий соответствующий этой же строке информационный вход. Тогда уравнение для выходной функции:
(1)
Такое уравнение учитываем все возможные варианты значений информационных входов D. Действительно, если окажется, что каким-либо из D-входов заданы нулевые значения, то содержащие символы этих входов члены обратятся в 0 и исчезнут из уравнения (1). Останутся только те члены, в которых значения информационных входов 1. Это справедливо для любых вариантов сигналов на информационных входах.
Чтобы выйти в базис элементов И-НЕ, следует воспользоваться законом де-Моргана. Тогда:
(2)
По этому уравнению легко построить схему MX 4 → 1, используя элементы И-НЕ с соответствующим количеством входов.
На рис.3 изображена ИМС К155КП1(мультиплексорные микросхемы маркируются буквами КП). Это MX "шестнадцать в один" (16 → 1), имеющий n = 4 адресных входа (20 - 23), 2n =24=16 информационных входов (0 - 15), инверсный выход F (информация с входов появляется на выходе в инверсном виде). Кроме того ИМС имеет вход стробирования V , разрешающий появление информации на выходе (V=0), либо запрещающий это (V=1).
Мультиплексоры могут выполнять различные операции:
- мультиплексирование (коммутацию) - процесс передачи данных от нескольких источников по одному общему каналу;
- селекцию (выбор) данных из определенного, указанного адресным кодом источника, поэтому для мультиплексора можно встретить название селектор;
- преобразование параллельного кода в последовательный;
- реализацию любой логической функции от числа аргументов, не превышающих число адресных входов.
Рассмотрим, как используются возможности MX при построении такого распространенного устройства ввода, как клавиатура. Клавиатура должна перекодировать информацию из той формы, в которой она задается пользователем (нажатие определенной клавиши), в ту форму, в которой информация воспринимается ЭВМ (двоичный код, присвоенный данной клавише). Например, для цифровой клавиатуры клавише "1" присваивается код 0001, клавише "2" - 0010 и т.д.
Подобные задачи реализуется различными схемными решениями. Возможно построение комбинационной схемы по типу шифратора. Такого рода схемы изучались в лабораторных работах "Шифраторы" и "Отгадчики чисел".
Другой часто применяемый подход при построении схем клавиатур - использование принципа "сканирования" - последовательного циклического опроса клавиш. Сканирование осуществляется с помощью мультиплексоров. Схема клавиатуры, использующая принцип сканирования, показана на рис.6. Здесь механические контакты 10-ти клавиш подключены к - входам 10-ти - триггеров DD1-DD5. При нажатии клавиши на - вход - триггера соответствующим номером поступает сигнал "0", активный для инверсного входа - триггера. Прямой выход Q этого триггера устанавливается в "1". В нулевое состояние триггер сбросится только при подаче на его инверсный вход нулевого сигнала, что осуществляется нажатием клавиши "сброс" (все триггеры сбрасывается одновременно).
Триггеры, во-первых, устраняют дребезг механических контактов клавиш, и, во-вторых, позволяют фиксировать на прямом выходе триггера единичный сигнал, появившийся при однократном нажатии соответствующей клавиши и сохраняющийся до нажатия клавиши "сброс" (иначе сигнал сохранялся бы только пока нажата клавиша). Контакты клавиш и триггеры составляют "блок клавиш", имеющий число выходов, соответствующее числу кодируемых клавиш. Выходы блока клавиш 0-9 подключаются к информационным входам 0-9 мультиплексора DD9. На адресные входы 20 – 23 MX по тактовым импульсам от задающего генератора последовательно поступает со счетчика DD7 двоичный код чисел от 0 до 9 включительно. Мультиплексор, в темпе подачи адресов также последовательно подключает на свой инверсный выход F информационные входы 0-9. Если ни одна из клавиш не нажата (перед началом работы следует нажать кнопку "сброс"), то все выходы 0-9 блока клавиш и, соответственно, информационные входы 0-9 MX имеют потенциал "0". На инверсном выходе MX при любом адресе (до 10) на входах 20 – 23 появляется сигнал "1", поступающий на вход D триггера DD8. На С-вход этого триггера все время поступают инвертированыe элементом DD6.2 тактовые импульсы от задающего генератора. Ясли на D - входе триггера - "1", то и его выход Q в этом случае также имеет потенциал "1", который поступает на вход элемента 2И-НЕ DD6.1 и разрешает прохождение тактовых импульсов к счетчику. Счетчик циклически пробегает все значения чисел 0-9, все время "опрашивая" (сканируя), таким образом, входы 0-9 MX. Если же какая-либо клавиша будет нажата (например, 5), то на соответствующем (5) входе MX появится сигнал "1". В ходе "опроса" при очередном входном импульсе, когда счетчик выработает адрес нажатой клавиши (5-0101), вход MX перейдет в состояние "0". Триггер DD8 по срезу (из-за инвертора DD6.2) этого входного импульса сбросится в "0", который поступит на вход элемента DD6.1 и запретит прохождение импульсов к счетчику. Т.о., счетчик остановится в коде, соответствующем номеру нажатой клавиши (0101). Чтобы снова запустить процесс сканирования, следует нажать клавишу "сброс".
ПРАКТИЧЕСКАЯ ЧАСТЬ
Задание 1.Разработайте согласно уравнению (2) схему MX "четыре в один", используя элементы И-НЕ. Соберите ее на стенде. Подавая на адресные входы A1A0 все возможные комбинации двоичных чисел, а на выходы D0 - D3 какую-либо информацию, убедитесь, что на выходе F появляется информация именно с того входа, номер которого задан кодом на адресных входах (см. табл.1).
Таблица 1
Номер строки и номер информационного выхода (n)
| A1
(21)
| A0
(20)
| F
|
|
|
| D0 (0,1)
|
|
|
| D1 (0,1)
|
|
|
| D2 (0,1)
|
|
|
| D3 (0,1)
| Задание 2. Используя ИМС К155КП1, преобразуйте 2-3 четырех и восьмиразрядных слова, заданных в параллельном коде в последовательный код.
Для решения этой задачи можно воспользоваться схемой рис.4. На информационные входы мультиплексора подается нужное слово в параллельном коде, а на адресные входы - последовательный ряд чисел в двоичном коде со счетчика DD2. С выхода схемы (V) считывается тот разряд слова, который определяется номером, заданным на адресных входах MX.
Пример преобразования 4- разрядного слова из параллельного кода в последовательный приведен в табл.2.
Таблица 2
Слово
| D3 D2 D1 D0
(3) (2) (1) (0)
| №№ такта
| A3 A2 A1 A0
(23) (22) (21) (20)
| V1
|
| Параллельный код
1 0 1 1
– ‘’ – ‘’ –
– ‘’ – ‘’ –
– ‘’ – ‘’ –
| Начальное положение счетчика
| 0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
|
|
Задание 3. Используя схему рис.4, обеспечьте зажигание светодиода V по программе, заданной диаграммой (5 рис.). V1 загорается при подаче на его анод "1". Такой режим работы MX иногда называют "управляемым ключом". Можете предложить и реализовать свою программу.
Задание 4.
а) соберите на стенде схему клавиатуры рис.6. Блок клавиш собран внутри корпуса клавиатуры и имеет на стенде выводы 0-9, которые следует подключить к информационным входам 0-9 MX. Тактовые импульсы подайте в автоматическом режиме с генератора БВ;
б) проверьте правильность работы схемы, нажимая на клавиши и получая на цифровом индикаторе соответствующие цифры;
в) предложенная схема рис.6 имеет то неудобство, что при всех нежатых клавишах на цифровом индикаторе горит цифра 8 (при правильной работе клавиатуры от всех клавиш). Объясните, почему это происходит? Предложите способ устранения этого недостатка;
г) уменьшите частоту тактовых импульсов задающего генератора БВ, подключив на его вход "С" емкость 100 - 200 мкФ. Испытайте работу клавиатуры. Чем объясняется задержка в появлении цифры после нажатия клавиши? Какова должна быть частота задающего генератора, чтобы задержка не была заметна?
Задание 5. Реализуйте с помощью MX К155КП1 логические функции:
а) заданную таблицей 3;
б) 4- входовые И, ИЛИ;
в) предложите и реализуйте свои функции.
Проверьте практически соответствие полученного результата заданной функции.
Метод, с помощью которого можно реализовать на MX логические функции, состоит в следующем: адресные входы MX считаются входами для аргументов (X) заданной функции (Y), а на информационные входы MX следует подать значения 0 или 1 в соответствии с таблицей истинности данной функции, причем номер информационного входа соответствует коду, заданному аргументами на адресных входах. Так для реализации функции, заданной табл.3, на информационные входы №№ 0, 1, 3, 7, 8, 9, 10, 12, 13, 14 следует подать 0, а на остальные - 1.
Таблица 3
X3 X2 X1 X0
(23) (22) (21) (20)
| Десятичный код на адресных входах MX
| Y
(F)
| 0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
|
|
| 1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
|
|
|
При подготовке к работе проделайте следующее:
1. Изучите руководство и рекомендованную литературу. Ответьте на поставленные вопросы.
2. Повторите темы: "Шифраторы", "Построение комбинационных схем", "Счетчики с принудительным обнулением", "D-триггеры".
3. Зарисуйте в тетрадь необходимые схемы и таблицы.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1. Какова методика построения функциональной схемы мультиплексора "четыре в один"?
2. Разработайте схему мультиплексора "4 → 1" по уравнению (2). Проанализируйте ее работу.
3. Объясните назначение всех типов входов мультиплексора К155КП1.
4. Как происходит преобразование параллельного кода в последовательный с помощью мультиплексора? За сколько тактов произойдет преобразование в последовательный код 8-разрядного слова и 16-разрядного в схемах рис.4? Какова роль счетчика в схеме рис.4?
5. Какую задачу должна решать клавиатура? Как реализуется эта задача на примере схемы рис.6?
6. Почему нужно, чтобы счетчик DD7 в схеме рис.6 считал до 10? Как изменится работа схемы, если счетчик будет считать до 16? Как нужно изменить схему, чтобы она работала и при таком счете?
7. Что изменится в работе схемы рис.6. если счетчик будет срабатывать по фронту, а не по срезу? Как нужно изменить схему, чтобы можно было использовать счетчик, срабатывающий по фронту?
8. Что произойдет, если нажать одновременно две клавиши?
9. Чем ограничено применение MX в качестве универсального логического элемента?
10. Как реализовать на MX 4-входовое ИЛИ, 4-входовое И? Как реализовать 3-входовые (2) функции?
ЛИТЕРАТУРА
1. Мальцева Л.А., Фромберг Э.М., Ямпольский В.С. Основы цифровой техники. – М.: Радио и связь, 1986.-С.51-53, 91-94.
2. Операционные узлы и основные устройства цифровой техники. Часть II. – Омск, 1987. – С.25-33.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|