Правильная ссылка на эту страницу
http://az-design.ru/Support/HardWare/Intel/D19831103Elc048.shtml

Расширитель ввода-вывода для микрокомпьютера 8051

УДК 681.327.23.681

Роберт Брокер (Robert Brawner)
Фирма Robert Brawner & Associates (Финикс, шт.Аризона)

Алекс Тот (Alex Toth)
Фирма Intel Corp. (Чандлер, шт.Аризона)

Robert Brawner, Alex Toth. Expanding the I/O facilities of the 8051 microcomputer, pp.162,163.

Микрокомпьютерная ИС 8051 в четырех случаях из пяти имеет преимущества перед микрокомпьютером 8048, когда дело касается их применения в электробытовой и автомобильной технике, терминалах ЭВМ и аппаратуре управления производственными процессами. Микрокомпьютер 8051 работает быстрее, имеет большее число внешних выводов и больший объем памяти. Кроме того, он оснащен дуплексным портом последо- нательного ввода-вывода. По сравнению с микрокомпьютером 8048 ему не хватает только средств расширения функций ввода-вывода. Но в действительности расширитель ввода-вывода 8243, который первоначально был рассчитан на прибор 8048, может быть использован непосредственно для расширения уже имеющихся средств ввода-вывода микрокомпьютера 8051 при условии, что необходимые протоколы будут эмулироваться с помощью описанных ниже простых программных инструкций.

Эта интерфейсная схема (а) демонстрирует применение расширителя 8243 для увеличения возможностей ввода-вывода 8-разрядной ИС 8051. Расширитель 8243 до
Эта интерфейсная схема (а) демонстрирует применение расширителя 8243 для увеличения возможностей ввода-вывода 8-разрядной ИС 8051. Расширитель 8243 до
Эта интерфейсная схема (а) демонстрирует применение расширителя 8243 для увеличения возможностей ввода-вывода 8-разрядной ИС 8051. Расширитель 8243 добавляет четыре 4-разрядных двусторонних статических порта в качестве непосредственного расширения уже имеющихся средств ввода-вывода главного микрокомпьютера. Число таких портов ввода-вывода может быть дополнительно увеличено при использовании шлейфового соединения. Представ лена также управляющая синхросерия для расширителя ввода-вывода 8243 (б).

Наличие квазидвусторонних портов дает возможность каждый выходной контакт ИС 8051 использовать либо для тестирования, либо для получения строба вывода. Это позволяет программе без особых сложностей назначать определенные функции управляющим и информационным выводам. На схеме интерфейса (а) показано, что выводы порта P1.5 и P1.6 служат для эмуляции функции CS (выбор кристалла), в то время как вывод P1.4 используется для эмуляции строб-сигнала PROG. Управляющая синхросерия (б) для расширителя ввода-вывода 8243 эмулируется при помощи стандартных программных процедур (табл.1).

Таблица 1. Программа микрокомпьютера 8051 для эмуляции функций расширителя ввода-вывода 8243

; N8243 Входная информация поступает с расширителя А ввода-вывода (тип 8243),
; подсоединенного к порту 1, выводы P1.3 — P1.0
; Контакты P1.4 и P1.6 служат для эмуляции сигналов PROG и CS
; Данные для порта, которые должны быть введены в накапливающий сумматор
PROG   BIT    P1.4           ; Символическое описание выводного контакта
       ORL    A, #00010000В  ; Установить сигнал PROG по его нарастающему фронту
       MOV    P1, A          ; Выходной код порта и код операции
       CLR    PROG ; Зафиксировать адрес по убывающему фронту сигнала PROG
       ORL    P1, #00001111В ; Выделить для ввода контакты младших разрядов
       MOV    A, P1          ; Читать входные данные 
       ORL    P1, #01010000В ; Выдать высокий уровень сигналов PROG и CS

Так как инструкции микрокомпьютера 8051 для работы с булевыми переменными дают возможность непосредственно манипулировать отдельными битами (т.е. выбирать любой бит и обновлять его), программа расширения ввода-вывода становится еще проще, когда указанные инструкции используются для эмуляции сигналов CS и PROG расширителя ввода-вывода (табл.2). С помощью 2-байт инструкции SETB, CLP или CPL каждый бит может быть установлен, сброшен или дополнен до 2. Кроме того, посредством инструкции MOV биты могут засылаться во флажок переноса или считываться из него, а между флажком переноса и выбираемым битом или его дополнением могут производиться операции логического сложения и умножения, ORL и ANL. Следует добавить, что при использовании расширителя 8243 инструкции обработки булевых переменных микрокомпьютера 8051 идеально подходят для обновления и проверки любого отдельного элемента данных или битов поля адреса.

Таблица 2. Пример программы, использующей инструкции обработки булевых переменных

; IN8243 Входная информация поступает с расширителя В ввода-вывода (тип 8243), 
; подсоединенного к порту 1, выводы P1.3 —P1.0
; Выводы P1.6 и P1.4 служат для эмуляции сигналов CS и PROG 
; Данные для порта, которые должны быть введены в накапливающий сумматор
IN8243  ORL    А, #00010000В ; Установить сигнал PROG по его нарастающему фронту
        MOV    P1, A         ; Выходной код порта и код операции
        CLR    P1.4      ; Зафиксировать адрес по убывающему фронту сигнала PROG
        ORL    P4, #00001111В ; Выделить для ввода контакты младших разрядов
        MOV    A, P1          ; Читать входные данные
        SETB   P1.4           ; Выдать высокий уровень сигнала PROG
        SETB   Р1.5           ; Выдать высокий уровень сигнала CS

Выходные данные:

Журнал "Электроника" том 56, No.22 (678), 1983г - пер. с англ. М.: Мир, 1983, стр.83

Electronics Vol.56 No.22 November 3, 1983 A McGraw-Hill Publication

Robert Brawner, Alex Toth. Expanding the I/O facilities of the 8051 microcomputer, pp.162,163.

Раздел: МЕТОДЫ, СХЕМЫ, АППАРАТУРА

Тема:     Из опыта разработчика





Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:44 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/HardWare/Intel/D19831103Elc048.shtml