Механизм прерываний

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

?исания кривой.

. Затем эти данные посылаются в оперативную память принтера для связи описание символа с определенным кодом.

. Принтеру дается команда напечатать данную литеру вместо той, которую он воспроизводит в соответствии с описанием

Рассмотрим механизм формирования символов на примере принтера Epson LX1050. Этот матричный принтер имеет печатающую головку с 24 иголками и может воспроизводить символы в нескольких режимах. В каждом из режимов допускается конструирование символов с помощью матриц различной ширины и высоты (таблица 1). Минимальная ширина символов - 5.

 

Таблица 1 - Таблица соответствия размеров матриц режимам принтера

РежимШиринаВысотаDraft924LQ pica2924LO elite2324LQ semi-.condensed1524LQ proportional3724Draft super subscript716LQ super subscript2316LQ prop, super subscript2316Рисунок 6 - Пример формирования матрицы для печати символа А

Размер матрицы для воспроизведения символовПоложение иголок для печати символов АНомера иголок* * * * * * * * * *1* * * * * ** * * * * * * * * *2* * * * * * ** * * * * * * * * *3* * * ** * * * * * * * * *4* * * ** * * * * * * * * *5* * * ** * * * * * * * * *6* * * * * * * * ** * * * * * * * * *7* * * ** * * * * * * * * *8* * * ** * * * * * * * * *9* * * *1 2 3 4 5 6 7 8 9 101 2 3 4 5 6 7 8 9 10Номера позицийНомера позиции

Символ представляет собой матрицу, в которой темные ячейки соответствуют выпячиваемым иголкам, а светлые - утапливаемым. Такая матрица может быть закодирована. Каждой строке матрицы присвоен номер. Все строки матрицы разбиты на три группы, внутри каждой из которых нумерация повторяется. Каждый столбец матрицы кодируется тремя байтами, соответствующими одной из групп строк. Значение каждого из трех байтов, кодирующих столбец, определяется суммой, присвоенной строкам, на пересечении которых созданным столбцом размещен знак"*" (рисунок 2).

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

При описании символа количество колонок (ml), образующих символ, и общее пространство (m0+ml+m2). занимаемое символом, не должны превышать значений, представленных в таблице 2.

печатающий матричный принтер программный

Таблица 2 - Таблица соответствия значения количества колонок и общего пространства режимам принтера

Режимmlm0+ml+m2Draft912LQ pica2936LO elite2330LQ semi-.condensed1524LQ proportional3742Draft super subscript712LQ super subscript2336LQ prop, super subscript2342

В соответствии с условием поставленной задачи рассматриваемым режимом матричного принтера является LQ pica, следовательно, матрица имеет размеры в ширину 29 позиции и в высоту 24 иголки. Ширину отступов от символа слева (m0) и справа (m2) выберем равными 2 и 5 соответственно, общее пространство символа m0+ml+m2=2+29+5=36, что не превышает максимального значения 36.

Чтобы связать описание символа с соответствующим кодом, необходимо послать на принтер набор команд, указывающих режим, номер кода загружаемого символа, три байта общего описания символа (m0, ml, m2) и байты описания столбцов матрицы. Данные операции прослеживаются на примере листингов приложений.

Заданием на курсовую работу было проектирование своих инициалов А и И.

Проектирование символа А

1.На клеточном поле 29х24 изображается кривая проектируемого символа, затем на ее основе проектируется матрица (Рисунок 7)

 

Рисунок 7- Матрица символа А

 

Таблица 3- Значение кодирующих байтов матрицы для символа А

1234567891011121314байт 1000000001515127112112112байт 2000011525525425425228282828байт 3000142542542540000000151617181920212223242526272829112112112112112112127127127000000282828282828255255255000000000000254254254000000

. Затем в оперативную память принтера передается данные, связанные с кодом литеры, и подается команда печати спроектированного символа (Приложение 1).

 

Проектирование символа И

 

Рисунок 8- Матрица символа И

 

Таблица 4- Значение кодирующих байтов матрицы для символа И

1234567891011121314байт 100012712712700000000байт 20002552552550003336060байт 30002542542541201201201921921920015161718192021222324252627282903331241241271271270000006019219219200255255255000000000000254254254000000

Листинг третьего этапа проектирования приведен в приложении 2.

 

Заключение

 

В ходе работы над теоретической частью курсовой работы была изучена соответствующая литература по организации и механизмам прерывания. Особое внимание было уделено контроллеру прерываний Intel 82C59A и Intel 82C55A, работающих на базе процессора Intel 80386.

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

Была так же выполнена поставленная задача - формирование новых символов, разработка команд для их загрузки в оперативную память принтера и программы, реализующей вывод данных символов на печать - выполнена путем разработки начертания символов, составляющих мои инициалы (буквы А и И), и реализации необходимых программных кодов на языке BASIC.

 

Список используемой литературы

 

1.Гайчук Д.В., Подопригора Н.Б. Методическ