Порт Р2 функционально совмещен со старшей 8 - ми разрядной внутренней шиной адреса МК. Будем использовать порт Р2 для адресации портов ввода - вывода.
Для работы МК требуется единственный источник питания +5В. Встроенный в схему генератор рассчитан на работу с кварцевым резонатором подключенным к выводам XTAL-1 и XTAL-2. Возможно также использование внешнего ГТИ с подачей тактовых импульсов на вход XTAL-1.
Вход RST служит для приведения МК в исходное состояние. Сигнал сброса воспринимается тогда, когда на входе RST удерживается напряжение высокого уровня более двух машинных циклов, при условии, что генератор запущен. В течении следующего машинного цикла формируется внутренний сигнал сброса, который повторяется до тех пор, пока вход RST активен.
Подсистема ВВ МК размещается непосредственно на кристалле. Для ВВ данных и управления процессом их передачи в состав МК введен ряд портов данных и регистров управления / состояния. Физическая система ВВ МК состоит из четырех двунаправленных 8 - ми разрядных портов Р0 - Р3. Каждый разряд этих портов отображается в адресном пространстве МК и образует битовое пространство ВВ. Порт Р0 функционально совмещён с внутренней шиной данных МК. Через этот порт реализуется обмен данными с внешними периферийными устройствами. Порт Р2 функционально используется как старший байт шины адреса.
Линии порта Р3 реализуют управление циклами обмена и другие специальные функции аппаратного уровня:
INT 0 - вход запроса на прерывание 0.
INT 1 - вход запроса на прерывание 1.
RD - строб чтения XSEG (внешней памяти данных).
WR - строб записи в XSEG.
Т0 - внешний вход таймера / счетчика 0.
Т1 - внешний вход таймера / счетчика 1.
RXD и TXD - выводы порта последовательного приемопередатчика.
INT 0 и INT 1 - служат для приема внешних запросов на прерывание. Они могут быть запрограммированы на срабатывание на срабатывание как по переходу из одного состояние в другое, так и по уровню входного сигнала, независимо друг от друга.
Графическое изображение МК представлено на рис.3.
Рис.3
XTAL1 XTAL2 | CPU | P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 |
RXD TXD | ||
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 | ||
RST | ||
T0 T1 | ||
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 | ||
INT0 INT1 | ||
RD WR | ||
ALE PSEK | ||
EA |
Так как память программ и память данных интегрирована на кристалле контролера и их объема достаточно для решаемой задачи, то использования внешней памяти ненужно. Следовательно, остается реализовать подключения периферийных устройств - клавиатуры, индикаторов, и датчиков.
Клавиатура и индикаторы подключаются через контролер клавиатуры и индикаторов КР580ВВ79.
Микросхема КР580ВВ79 программируемое интерфейсное устройство, предназначено для ввода и вывода информации. Микросхема состоит из двух функционально автономных частей - клавиатурной и дисплейной.
Клавиатурная часть обеспечивает ввод информации в микросхему через линии возврата, а также ввод по стробирующему сигналу Для хранения вводимой информации в микросхеме предусмотрено ОЗУ емкостью 8 байт. При наличии информации в ОЗУ микросхема вырабатывает сигнал “запрос прерывания” INT.
В клавиатурной части микросхемы предусмотрен специальный режим обнаружения ошибок при замыкании двух и более клавиш, а также введена схема устранения дребезга при замыкании - размыкании клавиш.
Дисплейная часть микросхемы обеспечивает вывод информации по двум 4 - х разрядным каналам DSPA3 - DSPA0 и DSPB3 - DSPB0 в виде двоичного кода на 8 - ми и 16 - ти разрядные цифровые или алфавитно - цифровые дисплеи. Информация на дисплей может выводиться двумя способами: слева направо бес сдвига или справа на лево со сдвигом.
Микросхема позволяет отображать информацию на всех известных в настоящее время типах дисплеев (дисплеи накаливания, со светоизлучающими диодами…).
Микросхема допускает одновременное выполнение функций ввода - вывода и рассчитана по выводу INT на прямое подключение к шинам микропроцессоров. Применение микросхемы КР580ВВ79 в системах позволяет полностью освободить микропроцессор от операций сканирования клавиатуры и регенерации отображения на дисплее.
Схема управления вводом/выводом вырабатывает сигналы, которые управляют обменом информации с микропроцессором, а также внутренними пересылками данных и команд к различным регистрам.
Буферные схемы канала данных Д7 - Д0 предназначены для обмена информацией между микросхемой и микропроцессором.
Счетчик сканирования вырабатывает сигналы сканирования клавиатуры, матрицы датчиков и дисплея.
Оперативное запоминающее устройство отображения объемом 16 слов *8 разрядов можно организовать в сдвоенное ОЗУ объемом 16 слов * 4 разряда. ОЗУ отображения можно сбрасывать в 1,0 или шестнадцатеричное число 20 командой “Сброс".
Регистр адреса ОЗУ отображения предназначен для хранения адреса данных, которые в данный момент записываются или считываются микропроцессором.
Схема анализа состояния ОМ - ОЗУ датчиков предназначена для отображения состояния ОМ - ОЗУ датчиков, т.е. следит за числом символов, содержащихся в ОМ - ОЗУ датчиков, и за тем, является ли он полным или пустым.
Контролер индикации и клавиатуры имеет стандартный 8 - ми разрядный шинный интерфейс, который включает в себя 8 - ми разрядную двунаправленную шину данных, сигналы управления чтением записи, сигналы выбора кристалла и вход выбора режима. Выводы Д0 - Д7 контролера индикации и клавиатуры подключаются к шине данных основного контролера (1816ВЕ51). Соответствующие сигналы управления заводятся с портов Р0 и Р3. Информация для индикации заносятся в контролер КР580ВВ79, после чего начинается ее отображения. После того как будет нажата клавиша на клавиатуре, контролер КР580ВВ79 активизирует выход IRQ, что будет свидетельствовать нажатию клавиши. Этот вывод заводим на вход запроса прерывания основного контролера (порт Р3).
МС состоит из двух автономных частей: клавиатурной и дисплейной.
Клавиатурная часть обеспечивает ввод информации в МС через “линии возврата” RET0 - RET7 с клавиатуры. Для хранения информации в МС предусмотрен обратный магазин - ОЗУ. При наличии информации в ОЗУ МС вырабатывает сигнал - запрос прерывания INT, а в случае ввода или чтения более восьми символов - сигналы переполнения или переопустошения.
Дисплейная часть МС обеспечивает ввод информации по двум 4 - х разрядным каналам DSPA3 - DSPA0 и DSPB3 - DSPB0 в виде двоичного кода.
Программирование режимов работы, запись информации в ОЗУ, чтение внутреннего состояния МС осуществляет через 8 - ми разрядный двунаправленный канал данных D0 - D7 при подаче соответствующих управляющих сигналов.
МС обеспечивает формирование кодированных или дешифрированных интерфейсных сигналов сканирования S3 - S0 клавиатуры и дисплея.
Наличие выходной линии запроса прерывания INT и режима чтения внутреннего состояния позволяет использовать данную МС в системах с прерыванием и последовательным опросом внешних устройств. МС допускает одновременное выполнение функций ввода / вывода и рассчитана по выводу INT на прямое подключение к шинам микропроцессоров.
Активный уровень на входе CS разрешает или запрещает работу контроллера с шиной. Активизация уровней на входах RD или WR определяет тип цикла обращения шины к МС (запись либо чтение).
Состояние на входе А0 определяет тип обмена: данные либо регистр состояния.
CLK - синхронизационный вход.
RES - вход начальной установки.
Графическое изображение контроллера клавиатуры и дисплея КР580ВВ79 представлено на рис.4.
D1 D2 D3 D4 D5 D6 D7 D8 | IOP | DSPA0 DSPA1 DSPA2 DSPA3 DSPB0 DSPB1 DSPB2 DSPB3 |
A0 CS | S0 S1 S3 S4 | |
RD WR | RET0 RET1 RET2 RET3 RET4 RET5 RET6 RET7 | |
CLK RES | ||
INT |
Рис.4