Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭВМ и ПУ / Лабораторные_работы_по_ЭВМ_и_ПУ._Часть_1.doc
Скачиваний:
27
Добавлен:
04.03.2016
Размер:
585.73 Кб
Скачать

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

  1. Какие компоненты используются в Delphi для работы с файловой системой?

  2. Какие подходы к работе с файлами существуют в Delphi?

  3. Какие процедуры и функции для работы с файловой системой использовались при выполнении работы?

  4. Опишите основные свойства компонентов, предназначенных для работы с дисками и файловой системой, использованные при разработке программы?

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

Работа с параллельным портом Основные теоретические сведения

Основным назначением параллельного интерфейса LPT (Linear Printer Terminal) является подключение к компью­теру принтеров различных типов. В настоящее время именно для подключения принтеров он практически не используется, однако существует целый ряд других устройств, использующих данный интерфейс.

Основным достоинством использования параллельного интерфейса является хорошая документированность и простота работы с ним. Главный недостаток этого подхода — очень небольшая скорость обмена, однако, это не критично при подключении устройств с небольшой скоростью обмена информацией и в случаях, когда сигналы порта используются, в основном, для управления.

Назначение 36 контактов разъема параллельного порта приведено в таблице 5.

Таблица 5 – Назначение контактов порта LPT

Контакт разъема

Цепь

I/O

1

-STROBE

0

2

D0

I,0

3

Dl

I,0

4

D2

I,0

5

D3

I,0

о

D4

I,0

7

D5

I,0

8

D6

I,0

9

D7

I,0

10

—АСК

I

11

BUSY

I

12

РЕ

I

13

SLCT

I

14

—AUTOFD

0

15

—ERROR

I

16

—INIT

0

17

—SLCT IN

0

18...25

GND

-

Сигналы порта имеют следующее назначение (тип выходных каскадов всех cигналов — ТТЛ):

D0...D7 — 8-разрядная шина данных для передачи из компьютера в принтер. Логика сигналов поло­жительная.

STROBE — сигнал стробирования данных. Данные действительны как по переднему, так и по заднему фронту этого сигнала. Сигнал говорит приемнику (принтеру), что можно принимать данные.

АСК — сигнал подтверждения принятия данных и готовности приемника (принтера) принять следующие данные. То есть здесь реализуется асинхронный обмен.

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

AUTO FD — сигнал автоматического перевода строки. Получив его, принтер переводит каретку на следующую строку.

РЕ — сигнал конца бумаги. Получив его, компьютер переходит в режим ожидания. Если в принтер вставить лист бумаги, то сигнал снимается.

SLCT — сигнал готовности приемника. С его помощью принтер говорит о том, что он выбран и готов к работе. У многих принтеров имеет постоянно высокий уровень.

SLCT IN — сигнал принтеру о том, что он выбран и последует передача данных.

ERROR — сигнал ошибки принтера. Активен при внутренней ошибке, переходе принтера в состояние off-line или при отсутствии бумаги. Как видим, здесь многие сигналы дублируют друг друга.

INIT — сигнал инициализации (сброса) принтера. Его длительность не менее 2,5 мкс. Происходит очистка буфера печати.

Все сигналы параллельного интерфейса передаются в уровнях ТТЛ и рассчитаны на подключение одного стандартного входа ТТЛ. Максимальная длина соединительного кабеля по стандарту— 1,8 м.

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

Формирование и прием сигналов производится путем записи и чтения выделенных для него портов ввода/вывода. В компьютере может использоваться три порта, обозначаемых LPT1 (базовый адрес 378h), LPT2 (базовый адрес 278h) и LPT3 (базовый адрес 3BСh). Базовый адрес порта используется для передачи принтеру байта данных. Установленные на линиях данные можно считать из этого же порта.

Следующий адрес (базовый + 1) служит для чтения битов состояния принтера (бит 3 соответствует сигналу —ERROR, бит 4 — сигналу SLCT, бит 5 — сигналу РЕ, бит 6 — сигналу — АСК, бит 7 — сигналу BUSY). Последний используемый адрес (базовый + 2) предназначается для записи битов управления принтером (бит 0 соответствует сигналу — STROBE, бит 1 — сигналу — AUTO FD, бит 2 — сигналу —INIT, бит 3 — сигналу —SLCT IN и наконец бит 4, равный единице, разрешает прерывание от принтера).

В операционной системе WindowsXP прямое обращение к портам ввода—вывода запрещено. Поэтому для того чтобы работать с портом напрямую, можно использовать уже разработанные библиотеки функций. Одной из таких библиотек является библиотека inpout32.dll (разработчик — Дмитрий Иванов [6]).