ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.01.2025
Просмотров: 1468
Скачиваний: 2
СОДЕРЖАНИЕ
Логические операции и элементарные логические функции.
3.Способы представления логических функций. Минимизация функций алгебры логики методом Вейча-Карно.
3. Логические элементы. Параметры логических элементов. Типы выходных каскадов.
4. Типовые комбинационные схемы. Назначение, принципы построения, примеры использования.
6.Регистры. Классификация, принципы построения, выполняемые функции, примеры использования.
7. Счётчики: назначение, классификация, принципы построения, примеры использования
8. Полупроводниковая память: назначение, классификация. Принципы построения адресных зу.
9. Принцип работы эвм. Классификация мп. Программная модель мп Intel 8086. Сегментация памяти
10. Система памяти эвм. Особенности памяти типа стек. Назначение и принцип действия кэш-памяти.
11. Система команд универсального микропроцессора.
13.Организация взаимодействия человека оператора с вычислительной системой.
14. Видеосистемы пк типа ibm pc. Устройство и характеристики мониторов.
15. Виды обмена с внешними устройствами.
16.Внешний интерфейс. Примеры реализации
18. Микроконтроллеры: назначение, особенности архитектуры. Типовые периферийные устройства.
Резисторы в схеме служат для того, чтобы при разомкнутых ключах, т.е. при ненажатых клавишах, на входы опроса поступало бы вполне определенное напряжение, а именно – напряжение, соответствующее уровню логической единицы.
Диоды в схеме служат для того, чтобы можно было нажимать клавиши одного столбца и это бы не приводило к нарушению работы МК. Прерывание целесообразно использовать для того, чтобы оперативно обнаружить нажатие хотя бы одной клавиши.
Наиболее очевидный способ кодирования нажатой клавиши – это кодировать её кодом, состоящим из 2-х частей: из номера строки и номера столбца. Например
[R2R1R0] [C2C1C0]
S22 – код: [101] [101]
Можно перейти от позиционного кода к двоичному:[R1R0] [C1C0]
S22 – код [01] [01]
Временные диаграммы:
t1
– нажата клавиша S13
t2 – нажата клавиша S22
t3 – нажата клавиша S31
Продолжительность сигналов IRQ составляет порядка нескольких миллисекунд, поэтому пренебрегают формой переднего и заднего фронтов, следовательно, сигналы IRQ имеют прямоугольную форму.
При программировании клавиатуры необходимо реализовать две процедуры:
- обнаружение нажатия на клавишу
- ввод кода нажатой клавиши
Часто ввод кода нажатой клавиши происходит после её отпускания («освобождения»). Обнаружение может выполняться в программном режиме или в режиме прерывания. В программном режиме для обнаружения факта нажатия на клавишу можно одновременно активизировать все линии сканирования, при этом наличие «0» в коде опроса говорит о том, что нажата хотя бы одна клавиша. Ввод кода осуществляется в процедуре сканирования. Если клавиатура имеет небольшое количество клавиш, и ресурсы МК используются не полностью, возможно непосредственное подключение клавиатуры к МК; но наиболее часто на практике используют дешёвые МК, так называемые PIC-микроконтроллеры (характеризуются маленьким количеством выводов (24) и ограниченным набором команд (до 60)). Обмен МК с ЦП осуществляется, как правило, по последовательному интерфейсу (т.к. расстояния довольно велики, а требования к скорости обмена отсутствуют, потому что процессы довольно длительные). Существуют специализированные МК для построения пультов управления. Такие МК совмещают функции управления клавиатурой и индикации (на дисплеи).
Микросхема КР580ВД79 имеет параллельный интерфейс и может быть подключена к системной шине МК.
Процедура ввода кода нажатой клавиши состоит из следующих процедур:
сканирование матрицы клавиш
устранение дребезга контактов (если он есть)
ожидание освобождения клавиши
формирование скан-кода нажатой клавиши
Процедура 2) для некоторых типов клавиатур отсутствует. Такими клавиатурами являются сенсорные клавиатуры, в которых носителями информации являются емкости. Скан-код может быть сформирован в процедуре сканирования, в этом случае 4) процедура совмещается с 1)
Устранение дребезга контактов осуществляется путём введения задержки порядка 5…20 мс. Чтобы при повторном обращении к клавиатуре не был бы введён код той же самой клавиши, после антидребезговой задержки вводится процедура ожидания освобождения нажатой клавиши. При этом возможна ситуация «залипания» клавиши. Чтобы избежать этого, вводят предельное количество циклов ожидания освобождения; если это число превышается, следовательно, клавиши «залипла», что в свою очередь должно вызывать сообщение об ошибке. Это свойство зависит и от самой клавиатуры.
Процедура идентификации клавиши может быть оформлена отдельно от процедуры сканирования. Для сложных клавиатур осуществляется перекодировка скан-кодов в коды символов с помощью таблиц трансляции. Временные задержки можно формировать программно, с помощью таймера или с помощью процессора событий.
Коды нажатия и отжатия каждой клавиши отличаются на 80h. При нажатии (или отпускании) клавиши ее скан-код по кабелю передается 11 разрядным последовательным кодом в ПК на адаптер клавиатуры. Адаптер клавиатуры расположенный на системной плате помещает принятый код (1 байт) в регистр с адр. 60h и выдает аппаратный запрос прерывания IRQ1 с вектором 09h. Процессор прерывает свою работу и трансформирует скан-код в код символа клавиши с учетом признаков статуса клавиатуры (кл. Alt, Ctrl, Shift). То есть, например 'а' или 'А'. Этот код помещается в буфер клавиатуры, способный запомнить до 15 кодов. На время пока работает обработчик прерывания клавиатуры, прием новых кодов блокируется засылкой '0' в ст.разряд регистра с адр. 61h. После обработки зтот разряд уст. в '1'.
Буфер клавиатуры
Буфер клавиатуры находится в ОЗУ с адреса 0040:001E. Для хранения кода каждой нажатой клавиши в буфере отводится 2 байта памяти: в старшем байте хранится скан-код ; в младшем байте код символа клавиши. Для кодов символов используется американский стандарт ASCII (American Standard Code for Information Interchange). Поэтому такой код называется ASCII - кодом. Так хранятся коды всех символьных клавиш, а также клавиш Esc, Enter, Tab, BS. Все остальные клавиши считаются управляющими и ASCII-кодов не имеют. В буфер клавиатуры, при их нажатии, записывается скан-код, а вместо ASCII-кодов заносятся нули. Наконец, есть группа клавиш не имеющая ни скан-кода, ни ASCII -кода поэтому они вообще не заносятся в буфер, но зато изменяют признаки статуса клавиатуры. Это клавиши: Shift, Ctrl, Alt, ScrollLock, NumLock, CapsLock, Insert. Примечание: клавиша Insert имеет скан-код и заносится в буфер.
Указатель буфера
Коды в буфер заносятся вкруговую, то есть после записи в ячейку 003С следует занесение в 001Е и так далее, затирая ранее введенные коды. Чтобы знать какой код введен первым и сколько кодов в буфере, используется "Указатель буфера". Он занимает два слова, начиная с адреса 0040:001А, то есть непосредственно перед буфером клавиатуры (младший байт слов не используется). Указатель головы буфера - это адрес первого введенного в буфер символа, а указатель хвоста указывает адрес свободной ячейки в буфере для ввода очередного символа. Приведенный пример показывает, что в буфере содержится три пары кодов нажатых клавиш по адресам: 0024, 0026 и 0028, ячейка буфера 002А свободна. Как только программа прочтет код первой нажатой клавиши, указатель головы буфера автоматически увеличится и станет равным 0026, затем 0028, и, наконец, 002А. Равенство содержимого "головы" и "хвоста" означает,что бужер пуст. Чтобы очистить буфер без чтения, достаточно в ячейки 0040:001А и 0040:001В записать одинаковые числа.
Признаки статуса клавиатуры
При нажатии каждой клавиши, в буфер клавиатуры может быть занесен различный код в зависимости от содержимого ячеек статуса клавиатуры. Признаки статуса клавиатуры заносятся при нажатии клавиш: Shift, Ctrl, Alt, ScrollLock, NumLock, CapsLock, Insert. Хранятся эти признаки в ячейках 0040:0017 и 0040:0018.
0040:0017 7 6 5 4 3 2 1 0
L-+-+-+-+-+-+-+--
Включена кл. Insert ------ ¦ ¦ ¦ ¦ ¦ ¦ L--- нажата правая кл. Shift
Включена кл. CapsLock ------ ¦ ¦ ¦ ¦ L----- нажата левая кл. Shift
Включена кл. NumLock --------- ¦ ¦ L------- нажата кл. Ctrl
Включена кл. ScrollLock -------- L--------- нажата кл. Alt
0040:0018 7 6 5 4 3 -----
L-+-+-+-+-+-+-+--
Hажата кл. Insert ------ ¦ ¦ ¦ ¦
Hажата кл. CapsLock ------ ¦ ¦ L--- Включен режим Ctrl-NumLock
Hажата кл. NumLock --------- ¦
Hажата кл. ScrollLock --------
Обратите внимание:
- только кл. Shift может быть правой или левой;
- для кл. Insert, CapsLock, NumLock, ScrollLock фиксируется как нажатие, так и включение;
- для кл. Shift, Ctrl, Alt фиксируется только нажатие;
- нет никаких фиксируемых комбинаций клавиш, кроме Ctrl-NumLock;
- есть три свободных разряда для Ваших целей.
Управление клавиатурой
При каждом нажатии клавиши вызывается прерывание INT 9h. Эта программа только записывает код в буфер и изменяет указатель "хвоста". Когда буфер полностью заполнен, новых кодов не вводится, а звучит сигнал. Чтение кодов из буфера и вывод эхо-повтора на экран производится другими программами. Чтобы пользователю не писать своих программ, в BIOS и DOS предусмотрено несколько стандартных программ чтения из буфера клавиатуры, оформленных в виде программных прерываний.
14. Видеосистемы пк типа ibm pc. Устройство и характеристики мониторов.
ВИДЕОСИСТЕМЫ РС
Видеосистемы предназначены для отображения текстовой или графической информации на экране монитора. Видеосистема включает в себя дисплей (видеомонитор) и схему управления (так называемый "видеоадаптер"), работающую под управлением драйвера (управляющей программы). Мониторы выпускаются размером от 12 до 21 дюйма по диагонали. Наиболее распространены 14' кинескопы. Экран 4:3. ЭЛТ выпускаются двух типов:
- с теневой маской из инвара (без выпучивания)
- с апертурной решеткой в виде проволочек (не выпучиваются, но вибрируют)
Первые монохромные мониторы (1981г) MDA (Monochrome Display Adapter - монохромный адаптер) имели развертку из 350 строк с разрешающей способностью 720 точек. Именно это и определило стандарт текстового экрана: каждый символ состоит из 9*14 точек(пикселов). Тогда 350/14=25 строк и 720/9=80 символов в строке.
Первые цветные мониторы (1982г) CGA (Color Graphics Adapter - цветной графический адаптер) имели разрешающую способность 200*640 в тестовом режиме и 200*320 в графическом режиме. Одновременно выводилось 4 цвета.
Следующий тип цветных мониторов (1984г)EGA (Enchaced Graphics Adapter - расширенный граф. адаптер) имел разрешающую способность 350*640 пикселов в тестовом и графическом режиме и позволял выводить одновременно 16 цветов из палитры в 64 цвета. Дальнейшее развитие цветных мониторов (1987г) VGA (Video Gate Array - видеографическая матрица) обеспечивает разрешающую способность 480*640 пикселов в тестовом и графическом режиме и позволяет выводить одновременно 256 цветов. Это последний официальный стандарт на видеоадаптеры.
Все, что лучше чем VGA носит название SVGA (Super VGA - Супер видеографическая матрица) Все видеоадаптеры SVGA совместимы (т.е. могут работать) в режиме VGA. Максимально достигнутая разрешающая способность 800*1024 пикселов. Количество цветов до 64 тысяч. Все видеосистемы периодически (60-70 раз/с) сканируют определенную область памяти (видеобуфер) и выводят ее на экран. Достаточно записать в одну из ячеек видеобуфера код символа, как он тут же появится на экране. Под видеобуфер во всех IBM PC отводится область памяти в адресах A0000...BFFFF. Конкретный размер буфера зависит от используемого адаптера и режима его работы. Вот почему основная память PC имеет размер только 640 Kb. Память за адресом A0000 недоступна для размещения обычных программ. Однако, если буфер занят не полностью, там могут быть размещены резидентные программы.