Строительный блокнот  Корпуса микропроцессорных микросхем 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 [ 36 ] 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121

функция

Доступ к ОЗУ отображения прекращен

I Г

Функи.ия

Ключ замкнут

Режим

лг< матрицы -i

\датчиков/

Функция

Ошибка (одновременное замыкание двух и долее клавиш)

Число символов

mm dl но

в ом- ОЗУ

0 0 0 0

0 0 0 1

0 0 10

0 0 11

0 10 0

0 1 0 I

0 110

0 111

10 0 0

Функция

Ошибка ( переопустошение)

Функция

Ошибка [переполнение)

Рис, 3.47. Содержимое регистра слова состояния ОМ-ОЗУ датчиков

Ввод слева соответствует простейшему формату отображения, в котором каждой позиции дисплея соответствует определенная строка в ОЗУ отображения. Адресу О в этом ОЗУ соответствует крайний слева символ дисплея, а адресу 15 в 16-разрядом дисплее или адресу 7 в 8-разрядном - крайний оправа символ дисплея. Ввод символов, начиная с нулевой позиции, вызывает заполнение дисплея слева направо. Символ 17 или 9 будет в этом случае вводиться снова в крайнюю слева позицию дисплея и т. д.

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

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

Буферные схемы клавиатуры и датчиков хранят входную информацию в режимах сканирования клавиатуры, сканирования матрицы датчиков и ввода по стробирующему сигналу. В режиме сканирования клавиатуры информация, вводимая в ОМ-ОЗУ, соответствует

позиции ключа в клавиатуре и состоянию входных сигналов SH и СО 1ST В-

COISTB

Номер строки

Номер столбца

Состояние входного сигнала CO/STB соответствует старшему разряду этого формата, а состояние входного сигнала SH - следующему по меньшинству разряду. Значения следующих трех разрядов соответствуют трем младшим разрядам счетчика сканирования и номеру строки, в которой нажата клавиша. Значения трех последующих разрядов соответствуют значениям трех разрядов, которые предшествуют трем младшим разрядам S2- SO счетчика сканирования и номеру столбца, в котором нажата клавиша В качестве клавиатуры, подключаемой к микросхеме, может использоваться любая клавиатура, подобная клавиатуре пишущей машинки с 64-контактной матрицей клавиш, которая может быть расширена до 256-контактной матрицы.

В режиме матрицы датчиков данные, поступающие с входов RET7-RET0, вводятся непосредственно в ту строку ОЗУ датчиков, которая соответствует сканируемой в данный момент строке матрицы. Следовательно, каждая позиция ключа в матрице соответствует определенной позиции ОЗУ датчиков. Входы SH н CO/STB при работе в режиме матрицы датчиков не используются. К буферным схемам клавиатуры и датчиков в этом режиме можно подключать не только ключи Любая



логическая схема, которой можно управлять с помощью выходов сканирования S3-SO, вводит данные на входы RET7-RETO Напри мер, к входам RET7-RETO можно подключать восемь мультиплексированных каналов ввода и сканировать их с помощью микросхемы КР5вОВВ79 Информация, считанная с ОЗУ датчиков, будет инверсной

В режиме ввода по стробирующему сигналу содержимое входов RET7-RETO записывает ся в буферные схемы клавиатуры и датчиков строб импульсом CO/STB Вход SH в этом режиме Не используется Длительность строб-импульса должна быть не менее одного пе риода Tl

Схема управления и устранения дребезга клавиатуры предназначена для управления ска нированием клавиатуры в режимах 2- и Л клавишных Сцеплений, /V-клавишных сцеплений с обнаружением ошибок, а также в режимах сканирования матрицы датчиков и ввода по стробирующему сигналу Кроме того, она устраняет влияние дребезга клавиатуры

В режиме сканирования клавиатуры с об наружением 2 клавишных сцеплений ввод осу ществляется по одной клавише, а при нажатии двух и более клавиш код ни одной из них не будет введен в ОМ-ОЗУ датчиков

В режиме сканирования клавиатуры с об наружением N клайишных сцеплений при на жатии нескольких клавиш все они опознаются и вводятся в ОМ-ОЗУ датчиков в соответствии с порядком сканирования

В режиме сканирования клавиатуры с об наружением N клавишных сцеплений при про граммированин команды Сброс прерывания - установка обнаружения ошибок ввод осуще ствляется только по одной клавише При од повременном нажатии двух и более клавиш код ни Одной нз них не вводится в ОМ- ОЗУ датчиков, но прн этом в слове состояния устанавливается флаг ошибки D6

Обратный магазин - ОЗУ датчиков пред назначено для хранения с последующим счи тыванием кода позиции клавиш, состояния ключей в матрице датчика, а также информа ции, вводимой по стробирующему сигналу ОМ-ОЗУ датчиков представляет собой ОЗУ с организацией 8X8, которое может выполнять две функции В режимах сканирования клавиатуры или ввода по стробирующему сиг налу оно работает как ОМ-ОЗУ (обратный магазин, работающий по принципу первым вошел - первым вышел ) Каждое вновь вво димое значение данных в этом случае записы вается в последующие ячейки ОЗУ и каждое нз них впоследствии считывается в том же по рядке, в каком оно вводилось В режиме ска иирования матрицы датчиков данное ОЗУ ра ботает как ОЗУ датчиков Каждая строка ОЗУ датчиков загружается состоянием соот ветствующей стооки датчиков в матрице датчиков В этом режиме на выходе INT уста навливается напряжение высокого уровня только в том случае, если обнаружено изме нение состояния датчиков

Схема анализа состояния ОМ-ОЗУ датчи ков предназначена для отображения состояния ОМ-ОЗУ датчиков, т е следит за числом символов, содержащихся в ОМ-ОЗУ датчиков, и за тем, является ли он полным или пустым Слишком большое число операций считывания из ОМ-ОЗУ или записи в ОМ- ОЗУ распознается как ошибка Схема анализа состояния ОМ-ОЗУ датчиков формирует также сигнал прерывания INT, если ОМ- ОЗУ содержит информацию В режиме скани рования матрицы датчиков схема анализа состояния ОМ-ОЗУ датчиков следит только за числом символов в нем (их может быть не более семи)

Описанные ниже команды программируют режим работы микросхемы КР580ВВ79 Перед программированием режима работы необходимо установить микросхему в исходное состоя ние На вход SP следует подать напряжение высокого уровня длительностью не менее бТс ОМ-ОЗУ датчиков и ОЗУ отображения в нулевое состояние сигналом SR не устанав ливаются

Команда Установка режимов работы кла виатуры дисплея предназначена для задания режима работы микросхеме КР580ВВ79 На рис 3 48 показано детальное раскодирование данной команды Разряды D4 и D3 определяют код режима работы дисплейной части, а разряды D2-DO - код режима работы клавиатурной части микросхемы

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

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

= 2-31

D7-D5 - код команды Программирование синхронизации , D4-D0-kor программируе мого коэффициента деления (К)

Команда Чтение ОМ-ОЗУ датчиков ис-пользуеЛя для чтеиия данных из ОМ-ОЗУ датчиков Формат команды

Адрес



H7\hs I jn\sj ji!2 \s/\mj

Команда

Установка режимов работы клавиатуры- дисплея

Режимы работы дисплея

д Д7

8-разрядный 8-символьный дисплей и ввод слева

-разрядный 8-симВольиый дисплей и ввод слева*

8-разрядный 8-сим Вольный дисплей и Ввод справа со сдвигом

1б-рррявшй 8-симВольнь1й дисплей и Ввод справа со содигом

Режимы работы клавиатуры

Кодированное сканирование клаВиату; ры с обиарутенаем 2-кловашных сцеплен

ДешифрироШное сканироВоте кладиату-рыс оВнарушением 2-клаоишных сцеплении

КоВироданное сканирование клавиатуры а ОВнарушением N-клавишнык сцеплений

Дешифрироваите сканирование клавиатуры с обна/мением Н-клоВишиых сцеплении

Кодированное сканирование матрицы датчиков

Дешифрированное сканирование матрицы датчиков

Ввод по стробирующему сигналу, ко Вира -банное сканировоние дисплея

Ввод по Стробирующему сигналу, дешифрированное сканирование дисплея

Рис. 3 48. Формат команды Установка режимов работы клавиатуры/дисплея* Ре жимы, отмеченные звездочкой, выбираются автоматически после установки микросхемы в исходное состояние сигналом SR

т \ло

функция

717,

Команда Сброс

Код на выходах

Код .

ЛЗРАЗ-ШАО

ft п п п

SSPBd-VSPBl

п п п п

и и и и 0 0 10

и и и и 0 0 0 0

1111

1111

Код в ОЗУ отображения

0 0 0 0

0 0 0 0

0 0 1 0

0 0 0 0

1111

117 7

Функция

Программный сброс

Функция

Сброс регистра, слова состояния и прерывания

Рис. 3 49. Формат команды Сброс . X-безразличное состояние

где D7-DS - код команды Чтение ОМ-ОЗУ датчиков ; D4 - флаг автоинкремеитирования, Ш - разряд не используется; D2-DO-адрес строки, читаемой микропроцессором.

В режиме сканирования матрицы датчиков используется флаг автоинкремеитирования D4 и разряды адреса D2-DO В клавиатурном режиме и режиме ввода по стробирующему сигналу для чтения ОМ-ОЗУ датчиков достаточно подать только код команды.

Команда Чтение ОЗУ отображения используется для чтения данных из ОЗУ отображения Фор:мат команды.

Адрес



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 [ 36 ] 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121