Национальный технический университет Украины КУРСОВОЙ ПРОЕКТ по курсу Вычислительные микропроцессорные средства и системы Тема Устройство ввода и отображения информации на базе БИС КР580ВВ79 с подключением к параллельному порту ЭВМ LPT Допущено к защите 2000г. Защищено с оценкой
Выполнил ст. гр. ДК 71 курса ФЭЛ Кузин Евгений Андреевич Преподаватель 2000г. Корнев В.П. Киев - 2000СОДЕРЖАНИЕВведение 31.Описаниеконтроллера КР580ВВ1.Структураконтроллера КР580ВВ2.Связь с системной шиной. 3.Программирование. 4. Работа БИС КР580ВВ5. Интерфейс клавиатуры 6.Интерфейс дисплея. 112.Описание параллельного интерфейса ввода-вывода
ЭВМ. 133.Описание разрабатываемого устройства 154.Разработка программного обеспечения 155.Выбор элементной базы. 17выводы 17ЛИТЕРАТУРА. 18Приложение1. Листинг управляющей программы. 19Введение Микропроцессорные системы в зависимостиот их функционального назначения используют различные устройства ввода иотображения УВО информации. Несмотря на то, что в настоящее время любоая ЭВМможет быть оснащена достаточным набором стандартных устройств ввода иотображения информации многофункциональные
клавиатуры, символьно-графическиедисплеи на ЭЛТ, другие манипуляторы , в некоторых случаях возникаетнеобходимость использования нестандартных устройств ввода и отображенияинформации, выполняющих ограниченный набор функций, но при этом болеекомпактных и приспособленных для работы в специфических условиях. Наличие усовременных ЭВМ стандартизированных каналов портов ввода-вывода позволяет приналичии соответствующего програмного обеспечения обеспечить взаимодействиетаких специализированных устройств с програмно-аппаратным
комплексом ЭВМ.Примером таких устройств могут быть внешние блоки охранных систем, ситстемуправления различным оборудованием и многое другое.Для вышеописанных целей отечественной промышленностьюбыл разработан ряд устройств, обеспечивающих функции ввода и отображенияинформации и ряд других вспомогательных функций. Одним из таких устройствявляется БИС КР580ВВ79, входящая в состав микропроцессорного комплекта КР580.Несмотря на то, чо данная БИС разрабатывалась для использования совместно смикропроцессором из
комплекта КР580, данное устройство можно с успехом использоватьи с другими устройствами, в частности с ЭВМ типа IBM-PC, используяпараллельный интерфейс LPT .Целью данного курсового проектаявляется разработка устройства ввода и отображения информации на базе БИСКР580ВВ1.Описание контроллера КР580ВВ79БИС КР580ВВ79 программируемоеустройство, предназначенное для построения систем подсистем отображенияинформации
на основе дисплеев индикаторов различных типов, а также ситем подсистем ввода информации из различного типа клавиатур рис.1, табл.1 .Эта БИС позволяет автоматически сканироватьклавиатуру, определить и выдать код позиции клавиши, нажатой в матрицеклавиатуры, подавить помехи дребезга контактов клавиатуры, а такжерегененерировать изображение на дисплее индикаторе . Программирование восьмирежимов ввода и четырех режимов вывода обеспечивает широкие возможности дляпользователя при вводе и отображении информации.
Вводимая информация можетнакапливаться в обратном магазине ОМ ОЗУ датчиков с доступом первыйвошел-первый вышел емкостью 8слов Х 8разрядов 8 байт . При наличииинформации в ОМ ОЗУ датчиков микросхема вырабатывает запрос прерывания, а вслучае ввода или чтения более восьми символов сигналы ошибок переполнения илипереопустошения в слове состояния. Для регенерации изображения на дисплее индикаторе в микросхеме имеется
ОЗУ отображения объемом 16 слов Х 8 разрядов.Время сканирования клавиатуры ирегенерации изображения задается программным способом. По электрическимпараметрам БИС КР580ВВ79 полностью совместима с микросхемами серии ТТЛ.Конструктивно выполнена в пластмассовом корпусе типа 2123.40-2 ГОСТ 17467-79. Рис. 1. Условное графическое обозначение а иназначение выводов б
БИС КР580ВВ1.Структура контроллера КР580ВВ79. БИС КР580ВВ79 организована на базевнутренней шины. В ее состав входят рис.2 ОМ ОЗУ датчиков со схемойуправления и устранения дребезга клавиатуры, буферами клавиатуры и датчиков исхемой анализа состояния ОМ ОЗУ датчиков схема управления и синхронизации сосчетчиком сканирования
ОЗУ отображения с регистрами адреса и данных средствасопряжения с системной шиной буферы канала данных и схема управлениячтением-записью.ОМ ОЗУ датчиковобеспечивает хранение инфомрмации, поступающей со входов RET7 RET0, и выдачуее в микропроцессор через внутраннюю шину данных и буферы канала данных покомандам чтения. В этом блоке используются следующие сигналы RET7 RET0 информация, вводимая с клавиатуры или матрицы датчиков.
За счет внутреннихнагрузок на этих выводах постоянно обеспечивается состояние лог.1 до появлениявходных сигналов низкого уровня.SH входной сигнал, используемый в режиме сканированияклавиауры для расширения увеличения числа функций клавиш вывод SH также имеет внутреннюю нагрузку входной сигнал,назначение которого определяется режимом работы в режиме сканирования состояние лог.1 увеличивает число конфигураций клавиатуры в режимесканирующего ввода состояние лог.0 используется как строб для вводаинформации с линий возврата
RET0 RET7 в ОМ ОЗУ датчиков по фронту сигнала вывод также имеет внутреннююнагрузку .INT выходной сигнал, переходит в состояние лог.1 врежиме сканирования клавиатуры при наличии данных в ОМ ОЗУ датчиков в режимесканирования матрицы датчиков при обнаружении изменения в датчиках.Схема управления и синхронизации программно задает скорость ввода-вывода исинхронизирует работу всех узлов контроллера. Необходимая скорость ввода-выводасоздается от деления частоты входной синхронизации
на программно задаваемоечисло, лежащее в диапазоне 2 31. При работе схемы используются сигналы сброс SR, тактовый С и BD, блокирующий индикатор дисплей в момент смены кодовсимволов.Счетчик сканирования 4-разрядный двоичный счетчик сканирует строкиклавиатурной матрицы и регенерируетизображения на дисплее индикаторе . Программно счетчик можно установить вкодированный или декодированный дешифрированный
режим работы. В кодированномрежиме он выдает на линии сканирования S3 S0 4-разрядныйдвоичный код от 00002 до 11112, который дешифрируетсявнешними дешифраторами в декодированном режиме он выдает два младших разрядакода, а на линии сканирования S3 S0 4- разрядный унитарный код активный уровень лог.0 . Внешних дешифраторов в этом случае не требуется, однако клавиатураможет иметь не более четырех строк
клавиш, а дисплей не более четырех знакоместпри 8-разрядном коде символа и восемь знакомест при 4-разрядном коде.Буферное ОЗУ отображения ОЗУ с произвольным доступом, хранит коды символов,отображаемых на дисплее. Каждый байт может рассматриваться как два независимыхполубайта. Это позволяет обслужить дисплей с большими функциональнымивозможностями на 16 знакомест при восьмиразрядном коде символа и на 32знакоместа при 4-разрядном коде символа.
ОЗУ доступно для записи и чтения информации.Регистр адреса ОЗУ отображения может быть прогаммно установлен в режимавтоинкрементирования. В процессе регенерации отображения на дисплее информацияиз ОЗУ отображения на дисплее циклически выдается на выходы DSPA3 DSPA0 и DSPB3 DSPB0, причем бит DSPA3 соответствует биту
D7 шины данных, а DSPB0 биту D0.Буфер канала данных двунаправленный трехстабильный, осуществляет стыковкувнутренней шины данных БИС КР580ВВ79 с системной шиной данных с помощью линий D7 D0.Схема управления чтением-записью управляет блоками контроллера при приеме информации ссистемной шины данных и выдаче информации на эту шину. Для управления схемойиспользуются следуюшие сигналы - разрешают проведениеопераций чтение-запись, выдачу информации на системную шину данных, приеминформации с системной
шины данных соответственно - определяет передачу комманд и слов сотояния INS 1 или передачу данных 0 .1.2. Связь с системной шинойОперациичтения-записи выполняются в зависимости от состояния управляющих сигналов табл.1 Таблица1. Входные сигналы Вид операции 1 1 0 0 Запись комманды 0 1 0 0 Запись данных 1 0 1 0 Чтение слова состояния 0 0 1 0
Чтение данных Х Х Х 1 Микросхема отключена от системной шины Примечание Х безразличное состояние.1.3. ПрограммированиеЦентральный процессор управляетконтроллером с помощью комманд табл.2 , которые передаются по системной шинеданных при 0 , INS 1 и загружаются по нарастающему фронту сигнала . Комманда Режим работы устанавливает режим работы клавиатуры табл.3 и дисплея табл.4 .
Таблица 2. Комманда D7 D6 D5 D4 D3 D2 D1 D0 Режим работы 0 0 0 К4 К3 К2 К1 К0 Программирование скорости ввода-вывода 0 0 1 Р4 Р3 Р2 Р1 Р0 Чтение ОМ ОЗУ датчиков 0 1 0 А4 Х А2 А1 А0 Чтение ОЗУ отображения 0 1 1 А4 А3 А2 А1 А0 Гашение запрет отображения 1 0 1 Х Г3 Г2 Г1 Г0 Сброс 1 1 0 С4 С3 С2 С1 С0 Сброс INT установка режима обнаружения ошибок 1 1 1
Е Х Х Х Х Примечание Х безразличное состояние. Таблица3. Код Режим клавиатуры К2 К1 К0 0 0 0 Кодированное сканирование с обнаружением одноклавишных сцеплений устанавливается после сброса 0 0 1 Декодированное сканирование с обнаружением одноклавишных сцеплений 0 1 0 Кодированное сканирование с обнаружением N-клавишных сцеплений 0 1 1 Дешифрированное сканирование с обнаружением N-клавишных сцеплений 1 0 0
Кодированное сканирование матрицы датчиков 1 0 1 Дешифрированное сканирование матрицы датчиков 1 1 0 Ввод по стробу, кодированное сканирование дисплея 1 1 1 Ввод по стробу, дешифрированное сканирование дисплея Таблица4. Код Режим дисплея К4 К3 0 0 8-8 битовых символов на дисплее, ввод слева 0 1 16-8 битовых символов на дисплее, ввод слева устанавливается после сброса
SR 1 0 8-8 битовых символов на дисплее, ввод справа 1 1 16-8 битовых символов на дисплее, ввод справа устанавливается после сброса SR 1.4. Работа БИСКР580ВВ79Информация в БИС КР580ВВ79вводится через линии возврата RET7 RET0. В кодированном дешифрированном режимесканирования с обнаружением одноклавишных сцеплений по нажатии клавишисрабатывает логика подавления дребезга. Другие нажатия клавиш обнаруживаются втечение следующих
двух сканирований. Если это единственная нажатая клавиша и ОМОЗУ датчиков было пусто, то ее позиция записывается в ОМ ОЗУ датчиков вместе ссодержимым линий и SH а сигнал INTустанавливается в состояние лог. 1, сообщая центральному процессору ЦП овводе информации в ОМ ОЗУ датчиков из клавиатуры.
Если ОМ ОЗУ датчиков былозаполнено полностью, то информация с клавиши не будет введена и установитсяфлаг ошибки D5 в слове состояния. В случаеодновременного нажатия нескольких клавиш код ни одной из них не будет записан вОМ ОЗУ датчиков. Код клавиши записывается в ОМ ОЗУ датчиков только одиночнымнажатием.В кодированном дешифрированном режиме с обнаружениемN-клавишных сцеплений каждое нажатие клавишиобрабатывается независимо от всех остальных.
При нажатии клавиши схемаподавления дребезга ожидает два цикла сканирования и проверяет достоверностьнажатия клавиши. При подтверждении нажатия в двух циклах код клавишизаписывается в ОМ ОЗУ датчиков. Если встретится одновременное нажатие, то кодуклавиш будут распознаны и введены в соответствии с порядком сканированияклавиатуры сигналами S3 S0.В кодированном декодированном режиме с обнаружением N-клавишных сцеплений с помощью комманды сброс INT установка режима обнаружения ошибок можнозапрограммировать
специальный режим обнаружения ошибок. Распознавание иподавление дребезга клавиши происходит, как в обычном N-клавишном режиме. Если в течение одного циклаподавления дребезга две клавиши будут обнаружены нажатыми, то это распознаетсякак одновременные нажатия и устанавливается в регистре слово состояния разряд D6 флаг ошибки. Указанный флаг запрещает дальнейшуюзапись в ОМ ОЗУ датчиков и устанавливает на выводе INT состояние лог.1 если оно до этого еще не былоустановлено
.В кодированных дешифрированных режимах сканированияклавиатуры символы, вводимые в ОМ ОЗУ датчиков, соответствуют позиции датчика вклавиатуре и значению сигналов SH и неинвертированным старший значащий бит, SH- следующий. Далее три бита указывают строку, вкоторой находится нажатая клавиша. Последние три бита и указывают, к какойлинии RET7
RET0 подсоединена нажатая клавиша.В кодированном дешифрированном режиме сканированияматрицы датчиков логика подавления дребезга заблокирована и состояние ключейдатчиков вводится непосредственно в ОЗУ датчиков. Хотя подавление дребезга необеспечивается, этот режим имеет то преимущество, что ЦП знает какдолго датчик находится в замкнутом состоянии и когда он был разомкнут.Клавиатурные режимы могут только отобразить действительное замыкание.
Дляупрощения программного обеспечения разработчик должен функционально сгруппироватьдатчики в строки в том формате, вкоторомЦП будет их читать. Вывод INTустанавливается в состояние лог.1 если обнаружено изменение состояния датчика в конце сканирования матрицы датчиков. В состояние лог.0 INT переходит после первой операции чтения данных, еслиперед чтением данных была записана команда чтение ОМ ОЗУ датчиков ,а во время записи команды разряд слова состояния
D4 находился в состоянии лог.0 или при подаче комманды сброс INT-установка обнаруженияошибок Е 1 .В кодированном дешифрированном режиме сканированияматрицы датчиков данные с линий возврата RET7 RET0 вводятсяпрямо в строку ОЗУ датчиков, соответствующую строке матрицы датчиков, котораясканируется. Таким образом, каждая позиция датчика отображается прямо в позицииматрицы
ОЗУ датчиков. Входы и SH в этом режиме не используются. Заметим, что к линиямвозврата могут быть подключены не только контакты. Любая логика, фиксирующаясялиниями сканирования, выдает данные на входы RET7 RET0.В режиме ввод по стробу с кодированным дешифрированным сканированием дисплея данные также вводятся в ОМ ОЗУдатчиков через линии возврата RET7
RET0. Данные записываются нарастающим фронтомстроб-импульса на линии . Они могут приходить от любой кодированной клавиатуры илиматрицы датчиков. Режим 16 8 битовых символов на дисплее, ввод слева простейший формат отображения в котором каждой позиции дисплея определенастрока полоустрока в ОЗУ отображения. Адресу 0 в этом ОЗУ соответствуеткарйний слева символ дисплея, а адресу 15 в 16-разрядном дисплее или
адресу 7 в8-разрядном крайний справа символ. Вывод символов начиная с нулевой позиции,вызывает запонение дисплея слева направо. Символ 17-й или 9-й будет в этом случае вводиться снова вкрайнюю слева позицию дисплея и т.д. Вывод в произвольную позицию дисплея приустановке режима вывод слева направо без сдвига приводит к нежелательнымпобочным эффектам и результата при этом предсказуем. В этом режиме адресацияОЗУ отображения используется с автоинкрементированием и без инкремента.
Инкрементирование способствует увеличению адреса, по которому будетпроизводиться следующая запись, на единицу, и символ появляется в следующей позиции.Без инкремента оба ввода произойдут в один и тот же адрес ОЗУ отображения ипозицию дисплея.Режим 16 8 -8 битовых символов на дисплее ввода справаиспользуются в большинстве электронных калькуляторов. Первый введенный символпомещается в правую позицию дисплея. Следующий вводимый символ также помещаетсяв правую позицию дисплея, но после того, как сдвинется все
отображение на однупозицию влево. Крайний слева символ при этом сдвигается за край дисплея итеряется. В режиме ввода справа со сдвигом нет прямого соответствия междупозицией дисплея и адресом строки ОЗУ отображения. Следовательно, вводкакого-либо символа в некоторую произвольную позицию дисплея не допускается,так как это может привести к неопределенным результатам. Рекомендуется последовательныйввод, начиная с нулевой позиции в режиме автоинкрементирования.
Если режим дисплея установлен на восемь символов, тоцикл подсвета вдвое меньше, чем он был бы для 16-символьного дисплея, т.е.время сканирования для 8-символьных дисплеев 5,12 мс и 10,24 мс для16-символьных дисплеев при внутренней частоте синхронизации 100 кГц.Слово состояния используется в режимах опросаконтроллера для индикации количества символов в ОМ ОЗУ датчиков D3 D0, а также для индикации ошибок при вводе информации постробу и из клавиатуры.
Имеются два типа ошибок это переполнение ипереопустошение. Переполнение D5 возникает, когда предпринимается попытка записи ещеодного символа в заполненное ОМ ОЗУ датчиков. Переопустошение D4 происходит, когда ЦП пытается читать пустое ОМ ОЗУдатчиков. Слово состояния также имеет бит D7, указывающий, что ОЗУ отображения занято, так каккоманды сброс дисплея или общий сброс не завершили
оперецию сброса ОЗУотображения до конца. В кодированном дешифрированном сканировании матрицы датчиковв слове состояния устанавливается бит D6, указывающий, что по крайней мере один контактзамкнут в ситуации заполненного ОЗУ датчиков. В N-клавишном специальном режиме устанавливается бит D6 в слове состояния, указывающий, что встретилисьошибки нажатия более одной клавиши. 1.5.Интерфейс клавиатурыПри вводе информации с клавиатуры необходимо обеспечить опрос ианализ состояния
датчиков, устранение дребезга, определение кодов датчиков,буферирование введенной информации, сервис выбор способов опроса и анализасостояний, формирование запросов прерываний и т.п Для упрощения интерфейсовустройств ввода и отображения информации УВО обычно применяют мультиплексныйопрос датчиков клавиатуры и такое же отображение информациина дисплее. Это, всвою очередь, позволяет объединить функции регенерации изображения и опросаклавиатуры.
Датчики клавишного или сенсорного типа, фиксирующие нажатие иликасание пальцем, являются основным элементом клавиатуры. Наиболеераспространены механические клавишные датчики, изменяющие при нажатии своесопротивление. Основные их достоинства невысокая стоимость и возможностьпрямого подключения к интерфейсам, а недостатки сравнительно низкаянадежность и дребезг контактов. Наряду с механическими используются и другиеклавишные датчики емкостные изменяющие при нажатии емкость
, интегральные например, работающие на эффекте Холла , механические со встроенными схемамиантидребезга, оптические и другие.В отличие от клавишных сенсорные датчики не имеют двигающихсячастей и чувствуют касание пальца по вносимой емкости или наводкампеременного напряжения, изменению сопротивления сенсорного элемента и т.п.Такие датчики изготавливаются, как правило, в виде элементов топологии печатныхплат. К недостаткам сенсорных датчиков относятся отсутствие механическойобратной связи, затрудняющее определение
оператором факта срабатывания датчика,необходимость в схемах сопряжения, слабая помехоустойчивость, чувствительностьк загрязненности сенсорного элемента. Для мультиплексного опроса датчикиобъединяются в матрицу.Анализ информации о состоянии датчиков, полученный в ходе опросаматрицы, и подготовка информации о сработавших датчиках для ввода в ЭВМпроводятся различными способами в зависимости от требований, предъявляемых кработе
клавиатуры. Контроллер клавиатуры и дисплея КР580ВВ79 позволяетпрограммно выбрать один из шести режимов сканирования клавиатуры.Буферирование введенной информации, подготовленной для выдачи в ЭВМпосле анализа состояния матрицы, необходимо вводить из-за асинхронностимоментов фиксации срабатывания датчиков и считывания данных о них МП БИС. Дляфиксации кодов сработавших датчиков используют регистр или ОЗУ, организованноекак стек, а для фиксации состояния всей матрицы обычное
ОЗУ. Извещение ЭВМ оналичии готовых к вводу данных в интерфейс клавиатуры обеспечивает схемаформирования запроса прерывания и или регистр состояния буферного ОЗУ.Последний, при отсутствии формируемых интерфейсом прерываний, можетиспользоваться для организации ввода данных в ЭВМ по опрсу как в произвольныемоменты, так и по прерываниям от задатчика интервалов времени.В БИС КР580ВВ79 для этих целей служат буферное
ОЗУ 8х8 бит ,которое работает как стек FIFOна восемь символов в режимах 1 3, 5 и как ОЗУ датчиков в режиме 4 регистрслова состояния стека ОЗУ датчиков выход запроса прерывания, формируемогосхемой интерфейса клавиатуры. Доступ к буферному ОЗУ возможен после аппаратногосброса или выполнения комманды Чтение стека ОЗУ датчиков .Для регламентации обмена данными между стеком
БИС и ЭВМ можнопользоваться словом состояния. Его разряды D0 D3отражают число кодов в стеке, причем D3 1 указывает на то, что в стеке находится восемь символов, иесли данные из него не будут считаны, то информация о следующих сработавшихдатчиках будет утеряна. Об ошибочных попытках чтения чтения данных из пустогостека и ввода в полный стек очередного кода свидетельствуют флагипереопустошения D4 1 ипереполнения D5 1.После чтения слова состояния разряды
D4 и D5автоматически сбрасываются.Одновременно с записью первого кода в стек устанавливается запроспрерывания на выходе INTБИС. Запрос снимается во время чтения очередного кода из стека иустанавливается вновь после окончания чтения, если стек еще не пуст. Кроме этого,возможен аппаратный или программный сброс запроса прерывания.1.6. Интерфейс дисплея.Интерфейс дисплея должен выполнять следующие функции регенерациюизображения, буферирование отображаемой информации, декодирование информациидля знакосинтезирующих индикаторов
ЗСИ , сервис очистка дисплея, запретотображения, установка порядка вывода информации на дисплей и способа доступа кбуферному ОЗУ дисплея . Сложность интерфейса определяется видом отображаемойинформации и физическим принципом действия ЗСИ. Сравнивая характеристикиразличных типов ЗСИ табл. можно заключить, что наиболее просто с ТТЛмикросхемами сопрягаются полупроводниковые индикаторы.Таблица 5. Тип ЗСИ Параметры питающих напряжений Достоинства
Недостатки Полупроводниковые Напряжение питания 2 5 В Максимальный постоянный ток сегмента 4 25 мА Импульсный ток сегмента 200 300 мА Быстродействующие время включения 10 нс , долговечность, высокая механическая стойкость, малые габариты, три цвета свечения Высокая потребляемая мощность, большая стоимость Вакуумные люминесцентные Напряжение питания нака-ла 0,7 5,5
В Ток потребления накала 50 100 мА Импульсное напряжение питания сетки 20 70 В Импульсный ток потребле-ния сетки 2,5 45 мА Импульсное напряжение питания анодов сегментов 20 70 В Импульсный ток потребле -ния анодов сегментов 0,1 1,3 мА Высокая яркость, долговечность, малая потребляемая мощность, несколько цветов свечения Несколько источников питания, низкая механическая стойкость
Вакуумные накаливаемые Импульсное напряжение питания сегмента 20 300 В Эффективное напряжение питания сегмента 4,5 7,0 В Ток потребления сегмента 20 50 мА Ток потребления сегмента в момент включения 70 150 мА Дешевизна, стабильность параметров Инертность, время включения 25 50 мс , низкие вибростойкость и механическая прочность, высокое потребление один цвет свечения Газоразрядные сегментные постоянного тока
Напряжение поджига разряда 190 220 В Напряжение поддержания разряда 120 170 В Ток потребления сегмента 25 40 мкА Малая потребляемая мощность Высокое питающее напряжение, низкая механическая стойкость При мультиплексном отображении информации динамическая индикация выбор знакоместа, на которое она будет выводиться в текущий момент времени,осуществляется сигналами сканирования.
Устойчивое изображение на дисплееполучается при условии регенерации с частотой, большей 40 Гц.В интерфейсах на основе БИС КР580ВВ79 мультиплексное отображениеинформации осуществляется под управлением счетчика сканирования. Придешифрированном режиме работы счетчика непосредственно на выводах БИСформируется четыре сигнала сканирования, что дает возможность использовать дочетырех знакомест в одной группе. В случае кодированного сканирования взависимости от запрограммированного режима работы
дисплея можно получить спомощью внешней схемы формирования сигналов сканирования до восьми илишестнадцати таких сигналов.Буферирование отображаемой информации при динамической индикациинеобходимо для хранения информации, выводимой МП БИС на дисплей и выдачи внужный момент при сканировании. Для буферирования выводимой на дисплей информации в БИС КР580ВВ79служит внутреннее ОЗУ отображения объемом 16 байт.
С помощью комманды Гашение запрет записи пользователь может организовать запись вОЗУ как целыми байтами, так и отдельными тетрадами чтение кода всегдаосуществляется только побайтно . Это позволяет подключить вторую группузнакомест дисплея, удваивая их число с помощью дешифратора кодов.Данные для дисплея выдаются из ОЗУ отображения на выходы DSPB0 DSPB3 тетрада В, разряды D0 D3 ОЗУ и DSPA0 DSPA3 тетрада
А, разряды D4 D7 .Чтобы исключить влияние переходных процессов в дешифраторе кодов интерфейса илиподсветки индикаторов при переключениях сканирующих импульсов на качество изображения,БИС формирует сигнал запрета отображения . Если этот сигнал активен, то на выходы DSP БИС выдается код очистки дисплея.Его значение устанавливается программно командой Сброс . Приаппаратном сбросе устанавливается код очистки 00, а содержимое
ОЗУ отображенияне изменяется. На время подачи сигнала сброса на вход CLR БИС ее выходы и DSP устанавливаются в состояние лог.0. Принеобходимости например, для устранения мигания дисплея в случае изменения МПБИС всего содержимого ОЗУ отображения БИС позволяет запрещать отображениететрад А и или В с помощью команды Гашение запрет записи .
Напогашенные тетрады постоянно выдается код очистки дисплея.Для организации правильного вывода информации на дисплей необходимоучитывать установленные режимы работы счетчика сканирования и дисплейной частиБИС, а также используемый способ доступа к ОЗУ отображения. Если режим работызадан таким образом, что формируется шестнадцать сигналов сканирования дисплея,то каждому знакоместу ставится в соответствие одна ячейка
ОЗУ отображения.Соответствие будет однозначным, номер знакоместа совпадает с адресои ячейкиОЗУ , если не использовалась автоинкрементная запись при вводе справа сосдвигом. В противном случае соответствие нарушается. Из-за сложностиопределения адреса ячейки ОЗУ отображения конкретного знакоместа дляправильного размещения информации на дисплее при ее обновлении удобнее вначалевосстановить соответствие между ними, очистить дисплей выдачей комманды
Сброс или заново запрограммировать режим работы БИС. Следуетотметить, что в случае работы БИС с формированием восьми сигналов сканирования,запись в ячейки с адресами к и к 8 к 0 7 приведет к выводу информации на однои то же знакоместо независимо отустановленного порядка отображения, а информация, заносимая в любую из этихячеек, запишется и в остальные. При дешифрированном сканировании дисплеякаждому знакоместу поставлены в соответствие четыре ячейки
ОЗУ отображения садресами к, к 4, к 8, к 0Сh к 0 3 .2. Описание параллельного интерфейса ввода-вывода ЭВМ.На сегодняшний день каждый IBM-совместимый компьютер комплектуется параллельным интерфейсомввода-вывода типа Centronics порт LPT , позволяющиморганизовать обмен данными с максимум тремя внешними устройствами. Чаще всего куказанному порту подключают печетающие устройства и устройства сканированияизображения
сканеры , что, впрочем, не мешает использовать его для подключениядругих, дополнительных устройств ввода-вывода.Устройство печатиIBM PC-подобных компьютеров обычно подключается к параллельному интерфейсу. Дляподключения используется стандартный разъем Centronix, имеющий 36 контактныхвыходов отечественный аналог ИРПР-М . Допускается три варианта подключенияпринтеров к ПЭВМ - адаптерпринтера может находится на одной плате с адаптером монохромного дисплея, приэтом используются
порты 3BCh - 3BEh - к ПЭВМ могутподключены два отдельных адаптера для управления принтерами, использующие порты 378h - 37Ah первый адаптер и 278h - 27Ah второй адаптер .Припрограммировании принтера важно знать адрес базового порта ввода-вывода первого порта из трех адреса базовых портов хранятся в области данных BIOS, начиная с адреса 0 408h LPT1 и далее послову на принтер до LPT4. Дальнейшее описание предполагает, что базовый адреспринтера
равен 378h. Порт Операция Описание 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 378h Запись Регистр данных - сюда засылается байт, посылае- мый напечать Чтение Регистр данных - позволяет считать последний байт,переданный принтеру 379h Чтение Регистр состояния принтера 7 6 5 4 3 2 10 9484 9472 9472 9516 9472 9472 9516 9472 9472 9516 9472 9472 9516 9472 9472 9516 9472 9516 9472 9516 9472 9488 9474 9474 9474 9474 9474 9474 X 9474 X 9474 X 9474 Биты 9492 9516 9472 9524 9516 9472 9524 9516 9472 9524 9516 9472 9524 9516 9472 9524 9472 9524 9472 9524 9472 9496 9472 9472 9472 9472 9472 9474 9474 9474 9474 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472
gt 3 0 при печати возникла ошибка 9474 9474 9474 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 gt 4 0 принтер в автономном режиме 9474 9474 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 gt 5 1 сигнал конец бумаги 9474 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 gt 6 0 принтер готов к печати 9474 следующего символа 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 gt 7 0 принтер занят, находится в автономном режиме или произошла ошибка 37Ah
Чтение Регистр управления принтером Запись 7 6 5 4 3 2 1 0 9484 9472 9516 9472 9516 9472 9516 9472 9472 9516 9472 9472 9516 9472 9472 9516 9472 9472 9516 9472 9472 9488 9474 X 9474 X 9474 X 9474 9474 9474 9474 9474 9474 Биты 9492 9472 9524 9472 9524 9472 9524 9516 9472 9524 9516 9472 9524 9516 9472 9524 9516 9472 9524 9516 9472 9496 9472 9472 9472 9472 9472 9474 9474 9474 9474 9492 9472 9472 9472 gt 0 битзапуска печати 9474 9474 9474 9492 9472 9472 9472 9472 9472 9472 gt 1 1 после возврата каретки выводить 9474 9474 9474 переводстроки в MS-DOS должен 9474 9474 9474 бытьсброшен 9474 9474 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 gt 2 1 инициализировать принтер 9474 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472
gt 3 1 разрешить вывод на печать должен 9474 быть всегда установлен 9492 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 9472 gt 4 1 разрешить прерывания от принтераДля управления разрабатываемым устройством можно использоватьуказанные регистры.3. Описание разрабатываемого устройстваРазрабатываемое устройство ввода и отбражения информациипредназначено для использования в системах безопасности различного уровня вкомплекте с персональной ЭВМ, оборудованной другими средствами управления системамибезопасности электронные замки, видеокамеры,
другие устройства наблюдения .Устройство представляет собой единый блок, работающий автономно от подключаемойЭВМ с собственным блоком питания , и оснащенный шестнадцатисимвольным дисплеем 16 семисегментных индикаторов и шестнадцатиклавишной клавиатурой,предназначенной для ввода информации и обеспечивающей некоторые функцииуправления. Программное обеспечение, разработанное для обслуживания блока,обеспечивает чтение символов с клавиатуры с последующим их отображением надисплее. Считанная последовательность символов воспринимается программнымобеспечением
как код пароль , который может быть использован для управлениядругими устройствами к примеру, электронным замком .Назначение клавиш следующее Таблица 6. Обозначение на схеме Наименование Функция SB1 SB13 0 9 , A , B , С Ввод кода пароля SB14 Сигнал завершения ввода SB15 Ввод кода заново SB16 Подача звукового сигнала Как видно из таблицы, вводимый код определяется тринадцатьюсимволами,
что значительно усложняет подбор пароля и увеличивает количествокомбинаций кода.Вводимая информация отображается на дисплее, при неправильном вводепароля выводится сообщение об ошибке.Назначение выводов устройства следующее Таблица 7. Наименование вывода Назначение вывода Вход Выход DAT0 DAT7 Шина данных INS D Передача данных передача команд
IORC Разрешение чтения IOWC Разрешение записи RESET Аппаратный сброс устройства PCLK Синхровход IRQ Запрос на прерывание 4. Разработка программного обеспеченияПрограмма для управления разрабатываемым устройством выполняетследующие функции Первичная инициализация устройства Синхронизация работы устройства и ЭВМ. Чтение служебной информации из устройства чтение слова состояния
Чтение данных с клавиатуры устройства и ихпоследующая обработка Запись обработанной информации в устройство длявывода ее на дисплей Управление работой устройства.Программа написана на языке Turbo Pascal 7.0 и предназначена для работы с операционной системой MS-DOS версии 6.22 и выше.Управление устройством производится с помощью записи всоответствующие порты
ввода-вывода комманд и управляющих сигналов. Состояниявыводов соответствующих портов и используемые при работе комманды приведены втабл Запись и чтение данных производится через порт данных принтера 378h , управляющие сигналы INS D, IORC, IOWC, RESET, PCLK, IRQ передаются устройству через портуправления 37Ah , запросна прерывание передается контроллером через порт статуса 379h .Таблица 8. Управление устройством.
Команда LPT 37Ah 378h X X X INS D IORC IOWC RESET PCLK DAT7 DAT6 DAT5 DAT4 DAT3 DAT2 DAT1 DAT0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 Программирование режима работы X X X 1 1 0 0 1 0 0 0 1 1 0 0 1 Чтение клавиатуры выбор первого ряда 0 7 X X X 1 1 0 0 1 0 1 0 0 0 0 0 0 Чтение клавиатуры выбор второго ряда X X X 1 1 0 0 1 0 1 0 0 0 0 0 1
Чтение клавиатуры прием данных X X X 0 0 1 0 1 Сброс INT X X X 1 1 0 0 1 1 1 1 1 0 0 0 0 Сброс контроллера аппаратный X X X Х Х Х 1 1 X X X Х Х Х Х Х Сброс контроллера програмный X X X 1 1 0 0 1 1 1 0 1 0 0 1 1 Сброс после вывода на дисплей X X X 1 1 0 0 1 1 1 0 1 0 0 1 0 Запись для вывода на дисплей
X X X 0 1 0 0 1 Чтение слова состояния X X X 1 0 1 0 1 Примечание. Х безразличное состояние ? передаваемыелибо принимаемые данные. Таблица кодов символов, выводимых программой на дисплей. A B C D E F G H Nh 1 0 1 1 0 0 0 0 0 60 2 1 1 0 1 1 0 1 0 DA 3 1 1 1 1 0 0 1 0 F2 4 0 1 1 0 0 1 1 0 66 5 1 0 1 1 0 1 1 0
B6 6 1 0 1 1 1 1 1 0 BE 7 1 1 1 0 0 0 0 0 E0 8 1 1 1 1 1 1 1 0 FE 9 1 1 1 1 0 1 1 0 F6 0 1 1 1 1 1 1 0 0 FC A 1 1 1 0 1 1 1 0 EE b 0 0 1 1 1 1 1 0 3E E 1 0 0 1 1 1 1 0 9E r 1 0 0 0 1 1 0 0 8C Коды клавиш, получаемые ЭВМ от устройства. Клавиша b0 b1 b2 b3 b4 b5 b6 b7 Nh 0 , 8 1 0 0 0 0 0 0 0 80 0 1 0 0 0 0 0 0 40 0 0 1 0 0 0 0 0 20 0 0 0 1 0 0 0 0 10 0 0 0 0 1 0 0 0 8 0 0 0 0 0 1 0 0 4 0 0 0 0 0 0 1 0 2 0 0 0 0 0 0 0 1 1
Текстпрограммы приведен в приложении 1.5. Выбор элементной базы.Для создания разрабатываемого устройства были использованы ИМСмикропроцессорного комплекта КР580 как наиболее совместимые с контроллеромввода-вывода КР580ВВ79. Остальные ИМС инвертор и дешифратор были выбраны изсоображений электрической совместимости и надежности разрабатываемогоустройства.Другие полупроводниковые приборы транзисторы и светоизлучающиедиоды
были выбраны из соображения их максимальной электрической совместимостис выходными характеристиками ИМС, несмотря на их относительно большоеэнергопотребление по сравнению с другими светоизлучающими знакогенерирующимиприборами.Резисторы С2-23 были выбраны, исходя из соображений рациональногосочетания цены и стабильности их параметров.Переключатели малогабаритные МП10 были выбраны, исходя из таких ихпреимуществ, как малые габариты и большая надежность, а следовательно, инаработка на отказ.выводыРазработанное в данном курсовом проекте
устройство ввода иотображения информации на базе контроллера КР580ВВ79 является полезнымустройством при проектировании систем безопасности на базе обычных персональныхЭВМ типа IBM PC.Разработанное устройство не требует для подключения никаких дополнительныхустройств и имеет достаточно гибкое, легко настраиваемое под конкретныепотребности програмное обеспечение. Кроме того, возможности ввода данногоустройства могут быть значительно расширены за счет неполного
использованияматрицы датчиков, причем добавлены могут быть не только кнопочные датчики, анапример, температурные либо оптические. Это не потребует дополнения схемыустройства, а только соответствующей доработки программного обеспечения.Исходя из выше сказанного, можно утверждать, что разработанноеустройство вполне можно применять в составе различных систем, где кроме стандартных устройств ввода иотображения а также последующего анализа информации необходимыдополнительные, компактные и многофункциональные устройства.
Несмотря нанекоторую моральную устарелость БИС КР580ВВ79, устройства на ее основе вполнеможно применять в тех областях, где скорость работы и энергопотребление неиграют решающей роли.ЛИТЕРАТУРА.1. Лю Ю-Чжен,Гибсон Г. Микропроцессоры семейства 8086 8088. Архитектура, программирование ипроектиро вание микропроцессорных систем Пер. с англ М. Р и С, 1987г.2. Аналоговые ицифровые интегральные схемы.
Под ред. С.В.Якубовского, Радио и связь, 1980.3.Микропроцессорные средства и системы, журнал.Приложение 1. Листинг управляющей программы. программа управления устройством ввода и отображения информациина базе БИС КР580ВВ79 Разработка Кузин Е.А. programKR580 usescrt,dos constRecode array 1 16 of byte 01, 02, 04, 08, 10, 20, 40, 80, 03, 05, 09, 0B, 12, 22, 42, 82 код Code array 1 16 of integer 1,2,3,3,3,4,4,5,6,6,0,0,0,0,0,0 vari,k integer Display array 1 16 of integer tmp byte OK boolean labelNEW,
AGAIN procedure OutByte portN,bte byte вывод байта в порт begin case portN of 378 asm mov al,bte out 378,al end 37A asm mov al,bte out 37A,al end end case Delay 10 end functionInByte portN byte byte чтение байта из порта begin case portN of 378 asm in al, 378 end 379 asm in al, 379 end 37A asm in al, 37A end end case asm mov InByte,al end Delay 10 end procedure Init первичная инициализация устройства begin
OutByte 37A, 03 aппаратный сброс OutByte 37A, 19 программирование режима OutByte 378, 19 работы end procedure Wait ожидание прерывания от устройства begin repeat until InByte 379 lt gt 0 end procedureOutToDisplay Symbol integer вывод символа на дисплей таблица перекодировки выводимых символов constRecode array 1 15 of byte 60, da, f2, 66, b6, be, e0, fe, f6, fc, ee, 3e, 9c, 9e, 8c begin OutByte 37A, 09 OutByte 378,Recode
Symbol end functionStatusWord boolean чтение слова состояния varSW byte begin StatusWord false OutByte 37A, 15 SW InByte 378 if SW lt gt 0 then StatusWord TRUE end procedureResetINT сбросINT begin OutByte 37A, 19 OutByte 378, F0 end procedure ResetDSPL сброс после вывода на дисплей begin OutByte 37A, 19 OutByte 378, D2 end procedureBell подача звукового сигнала begin
Sound 1200 Delay 1000 NoSound end functionGetChar byte чтение символа с клавиатуры begin If not StatusWord then begin OutByte 37A, 19 OutByte 378, 40 OutByte 37A, 05 GetChar Inbyte 378 if GetChar 0 then begin OutByte 37A, 19 OutByte 378, 41 OutByte 37A, 05 GetChar Inbyte 378 2 end else begin Bell Bell WriteLN аппаратная ошибка end
ResetINT end beginAGAIN Init k 0 repeat begin Wait tmp GetChar i 0 repeat inc i until Recode i tmp inc k case i of 1 13 begin Display k i OutToDisplay i end цифры 14 k 16 ВВОД 15 gotoAGAIN СБРОС 16 Bell ЗВОНОК end case end until k 16 for i 0 to16 do if Display i lt gt Code i then OK true ПРОВЕРКА ПАРОЛЯ if
OK then Exec proc.exe, пароль проверен, запуск другойпрограммы goto AGAIN end.1 описание работы схемы.Управление устройством осуществляется спомощью пяти управляющих сигналов, которые передаются устройству по линиям,подключенным к порту 37Аhпараллельного порта см. принципиальную схему и составляют канал управленияустройством см. структурную схему . Схема подключения следующая Сигнал Назначение сигнала бита контакта
INS D Прием комманд прием данных 4 18 IORC Чтение 3 20 IOWC Запись 2 21 RESET Аппаратный сброс 1 9 PCLK Синхронизация 0 11 К каналу статуса см. структурную схему подключена линия INT,сигнал на которой появляется, когда нажата одна из кнопок на клавиатуре. Этослужит сигналом управляющей программе к началу обработки данных.
Линияподключена к выводу 6 разъема бит 3 порта 379h . Канал данных контакты 1 8, биты 0 7порта 378h служит дляприема данных с клавиатуры и передачи устройству комманд и данных. Следуетотметить, что для функционирования устройства параллельный порт компьютерадолжен поодерживать спецификацию ЕРР, которая предусматривает двунаправленнуюпередачу данных по каналу порта 378h.Управляющие сигналы подаютсянепосредственно на БИС
КР580ВВ79 D3 , а данные и комманды передаются и принимаются через буферныйрегистр D1 см.принципиальную схему , что необходимо для синхронизации работы устройства иподключаемой ЭВМ.Клавиатурная часть устройства состоит изматрицы клавиш, подключенной непосредственно к линиям возврата RET7 RET0 и линиям выбора S3 S0 БИС КР580ВВ79. Одна из линий клавиш выбирается подачей сигналавысокого уровня на одну из линий вывода. Т.к. в разрабатываемом устройствеиспользуется только 2 ряда по восемь
клавиш, для выбора ряда используютсятолько линии S0 и S1. Информация с клавиатуры ввиде позиционного кода подается на линии возврата.Дисплейная часть устройства организованаследующим образом. Информация из ОЗУ отображения БИС КР580ВВ79 по линиям DSPA3 DSPA0 и DSPA3 DSPA0 последовательновыводится в регистр
D5и отображается на том из индикаторов HG1 HG16 ,номер которого, преобразованный в позиционный код с помощью дешифратора D4, выставлен на линияхвыбора S3 S0.Также в схеме предусмотрен блок индикацииготовности устройства к передаче данных, выполненный на элементах D2.3, HL1, R42.2 описание работы программыРабота программы управления основана назаписи и чтении данных байтов из портов, составляющих параллельный интерфейсЭВМ 378h,
379h, 37Ah . Чтение и запись данных всоответствующие порты ввода-вывода осуществляется с помощью процедуры OutByte выдача байта в порт и функции InByte,возвращающей значение прочитанного из соответствующенго порта байта.Все остальные управляющие процедурывыполняют свои функции на основании этих двух процедур. Их назначениеследующее Имя процедуры Выполняемая функция Init Первичная инициализация устройства аппаратный сброс, выбор режима работы.
Wait Ожидание сигнала INT OutToDisplay Вывод символа на дисплей StatusWord Чтение слова состояния булева функция, возвращает ИСТИНА, если в слове состояния есть единицы, т.е. при вводе были обнаружены ошибки ResetINT Сброс сигнала INT ResetDSPL Очистка дисплея, подготовка к новому вводу Bell Подача звукового сигнала GetChar Чтение символа с клавиатуры функция, возвращает значение позиционный
код прочитанного байта, если он прочитан с первой линии клавиш, и значение позиционный код увеличенный на два, если чтение произведено со второго ряда Разработанная программа начинает своюработу с первичной инициализации Init , далее происходит цикл ожидания нажатия клавиши Wait с последующим чтениемкода нажатой клавиши GetChar и перекодировкой полученного кода в число,соответствующее номеру клавиши от 1 до 16, с помощью таблицы перекодировки
Recode и занесениеполученного результата в массив Display.Далее происходит проверка прочитанного кода на соответствие необходимому,хранящемуся в массиве Code.Если коды совпадают, булева переменная ОК принимает значение ИСТИНА, ипроисходит запуск другой программы, выполняющей некоторую сервисную функцию,определяемую пользователем proc.exe . После выполненияпрограммы програма управления начинается сначала.
Поз. позначення Найменування К л. Прим тка Микросхемы. D1 КР580ВА86 1 D2 К555ЛН1 1 D3 КР580ВВ79 1 D4 3 К155ИД3 1 D5 КР580ИР82 1 Резисторы С2-23 ОЖО468354ТУ R1 0,125-10 кОм 10 1 R2 R9 0,125-330 Ом 10 8 R10 R25 0,125-3,3 кОм 10 16 R26 R41 0,125-10 кОм 10 16 R42 0,125-1 кОм 10 1 Транзисторы
ОЖО433261ТУ VT1 VT16 4 КТ350А 16 Светодиоды ОЖО471221ТУ HL1 АЛ307 1 HG1 HG16 АЛС314А 16 Переключатели ОЖО412233ТУ SB1 SB16 МП10 16 ДК 71.711200 Аркуш 1 Зм Арк. докум. П дпис Дата
! |
Как писать рефераты Практические рекомендации по написанию студенческих рефератов. |
! | План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом. |
! | Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач. |
! | Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты. |
! | Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ. |
→ | Виды рефератов Какими бывают рефераты по своему назначению и структуре. |