Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
labex.doc
Скачиваний:
3
Добавлен:
19.11.2019
Размер:
4.14 Mб
Скачать

2.3 Оборудование

Персональный компьютер AT386 и выше, компилятор языка C, демонстрационная программа test_mem.exe.

1.7.Задание на работу

1) Ознакомиться с теоретическими сведениями, приведенными во втором разделе, изучить тесты памяти с помощью демонстрационной программы, ответить на контрольные вопросы.

  1. Разработать прикладное программное обеспечение тестирования элементов выделяемого фрагмента памяти в соответствии с вариантом задания, выданным преподавателем. При разработке программы предусмотреть возможность произвольного задания тестируемой области памяти, учесть организацию микросхем памяти, от которой будет зависеть число ячеек в одной строке и столбце матрицы, а также возможность вывода информации об адресах сбойных ячеек.

Варианты заданий приведены в таблице:

Вариант

Вариант

1

Тест Баттерфильда

8

Чередующиеся столбцы 0 и 1

2

Адресный

9

Запись и запись/считывание вперед и назад

3

Шахматный

10

Марширующий

4

Сканирующий

11

Дополнительная адресация

5

Чередующиеся строки 0 и 1

12

Долбление

6

Разрушение считыванием

13

Пинг-понг

7

Бегущий

14

Галопирующий

1.8.Оформление отчета

Отчет должен содержать цель работы, порядок её выполнения, схему алгоритма заданного теста памяти, листинг разработанной программы с комментариями и результаты работы программы.

1.9.Контрольные вопросы

1) Дайте общую классификацию основных типов памяти.

2) Каковы характерные дефекты оперативных и постоянных ЗУ?

3) Какие вы знаете методы тестирования запоминающих устройств?

4) Какие из тестов ОЗУ позволяют проверить правильность работы адресных дешифраторов?

5) Какие из тестов ОЗУ позволяют проверить влияние записи на сохранность информации?

6) Какие из тестов ОЗУ позволяют проверить влияние многократного считывания на сохранность информации?

7) Как проявляется комплексный характер тестирования оперативной памяти по методу Баттерфильда?

ЛАБОРАТОРНАЯ РАБОТА №3

ИЗУЧЕНИЕ ФУНКЦИОНИРОВАНИЯ КЛАВИАТУРЫ

2.

3.3.1. Цель и задачи работы

Целью работы является изучение принципов действия клавиатур персональных компьютеров, исследование взаимодействия клавиатуры с компьютеров через интерфейс, а также усвоение основных неисправностей клавиатуры и методов их устранения.

3.2. Основные теоретические положения

Применяемые в настоящее время клавиатуры могут быть подразделены на две большие группы [3]: 1) с клавишными переключателями; 2) сенсорные и квазисенсорные. Клавиатуры с клавишными переключателями могут быть основаны на различных физических принципах (в частности, контактные, с применением датчиков Холла, фотоэлектрические, индуктивные, емкостные и т.д.). Сенсорные и квазисенсорные клавиатуры построены в большинстве случаев на изменении сопротивления или емкости и на прерывании светового луча.

Квазисенсорная клавиатура, основанная на изменении сопротивления, представляет собой прозрачную панель с прозрачной проводящей пленкой из майлара, наложенную на экран электронно-лучевой трубки, на которой высвечивается заданная конфигурация клавиатуры. Прикосновение пальца оператора приводит к образованию контакта между пленкой и поверхностью панели с резистивным покрытием, фиксирующимся электронной схемой.

Сенсорная клавиатура, построенная на изменении емкости, представляет собой панель с множеством стеклянных датчиков, состоящих из сплошного стеклянного покрытия, на внутреннюю поверхность которого нанесен резистивный слой. При прикосновении к нему пальцем или любым проводящим пером создается емкостная связь и величина изменения емкости конкретного стеклянного датчика характеризует координаты точки касания.

Квазисенсорные клавиатуры, основанные на прерывании светового луча, состоят из расположенных на противоположных сторонах по каждой координате рядов источников света и фотоприемников.

Разработаны также сенсорные клавиатуры, построенные на изменении амплитуды поверхностной акустической волны при прохождении по диэлектрическому материалу.

В обычных компьютерах матрица контактов клавиатуры, нанесенных на гибкие пленки печатным способом, сканируется с помощью встроенной микроЭВМ, например 8048 (U1) (рис.3.1) [4]. При этом дешифратор U2 выдает активный уровень поочередно на одну из 8 строк матрицы контактов, код которой подается на выводы Р23 – Р25 однокристальной микроЭВМ. С линий данных и порта Р1 микроЭВМ происходит считывание данных: при наличии активного уровня фиксируется нажатие клавиши в соответствующем столбце матрицы контактов.

Рисунок 3.1 Принципиальная схема клавиатуры

МикроЭВМ для каждой клавиши идентифицирует ее скан-код, представляющий при нажатии и отпускании 8-битовые посылки, разделенные байтом F0h. Контроллер U1 проводит антидребезговую защиту, выявляет «фантомные» коды, загружает их во внутренний буфер клавиатуры, если линия занята. При невозможности передавать скан-коды на соответствующий контроллер материнской платы посылается код FFh. U1 формирует в линию KBD_DATA последовательную посылку, включающую: старт-бит, байт скан-кода, бит контроля на нечетность и стоп-бит. Каждая посылка, а это может быть также одна из команд, представляющих сообщения в систему об ошибках, подтверждениях и других действиях, синхронизируется последовательностью из соответствующего числа тактовых импульсов по линии KBD_CLK.

Интерфейс между материнской платой и клавиатурой организован по двунаправленному принципу, т.е. система также посылает в клавиатуру различные команды установки и сброса. На системной плате располагается микроЭВМ 8042, архитектурно совместимая с клавиатурой [7].

Состояние клавиатуры можно проанализировать по логическому уровню линий 1 и 2 (рис 3.1) , которые приведены в таблице 3.1.

Таблица 3.1 Анализ некоторых состояний интерфейса клавиатуры

KBD CLK

KBD DATA

Состояние клавиатуры

0

0

Обрыв линий, либо система заблокировала клавиатуру. Данные откладываются в буфер клавиатуры.

0

Х

Если система заблокировала клавиатуру на время более 60 мс, то обнаружена ошибка

Х

0

Подтверждение приема клавиатурой информации из системы

1

0

Положение линий перед передачей информации из системы (без старт-бита)

1

1

Положение линий перед передачей информации из клавиатуры

После нажатия символьной клавиши, если линии KBD_DATA и KBD_CLK равны 1, по достижении скан-кода выходного буфера контроллер прерываний формирует запрос IRQ1, а от него формируется запрос прерывания процессора INTR. Скан-коды считываются из регистра буфера вывода (порт 60h) системой с помощью процедуры INT 9h, в функции которого входит определение текущего состояния клавиатуры и размещение очередного символа ASCII в регистре AL, а скан-кода – в АН. Линия KBD DATA блокируется до полной обработки символа. Процедура прерывания INT 16h анализирует код на принадлежность к коду ошибки FFh, формируя аудиосигнал при его идентификации в том случае, если не получен код отпускания. Далее распознаются группы клавиш (анализируются статусные флаги в области данных BIOS) и скан-коды приводятся в соответствие кодам ASCII, загружаемым для хранения в случае занятости системы в буфер BIOS, организованный стеком FIFO в области памяти 0040:001Еh и занимающий 32 байта (следует отличать от буфера контроллера i8048!). При переполнении буферов звучит аудиосигнал. По окончании процедуры INT 16h аппаратные средства клавиатуры разблокируюся и код может быть транслирован в видеоподсистему.

Характерные неисправности клавиатуры:

  1. Клавиатура не работает или отображает неверные символы:

А) сигнал не попадает на системную плату (плохой кабель)

Б) нет сигнала на шине (плохой чип 8048 или 8042);

  1. Одна или несколько клавиш не работают:

А) клавиша имеет плохой контакт (промыть контакты)

Б) сигнал с клавиатуры ошибочный (плохой чип 8048)

  1. Клавиатура остается в верхнем или нижнем регистре:

А) Залипание клавиши (высушить феном)

Б) нет фиксации верхнего регистра (плохая клавиша CapsLock)

В) Сигнал клавиатуры неверный (плохой чип 8048)

Системные коды ошибок клавиатуры имеют формат: 3ХХ

301 – неисправная клавиатура или отсоединенный кабель

301 – ХХ – плохая работа схемы клавиатуры (ХХ – код неисправной клавиши при сканировании матрицы)

302 – блокировка клавиатуры

303 – ошибка клавиатуры или системного устройства

304 – ошибка клавиатуры или системного модуля, возможно неисправен генератор клавиатуры.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]