КР580ВР43 - 4-битный порт

4-битные микроконтроллеры и микропроцессоры (прошлое, настоящее, будущее)

Moderator: Lavr

User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

КР580ВР43 - 4-битный порт

Post by Lavr »

Я тут столкнулся вплотную с отличнейшим портом для 4-битных поделий.
Не то, чтобы раньше не знал, знал и даже вот здесь его показывал.

Но тут пришлось поработать с ним вплотную, а поскольку Интернет не богат
на описание работы этой БИС, то я решил выложить материалы здесь.

Расширитель ввода/вывода КР580ВР43
KP580BP43_0.gif
Расширитель ввода/вывода (РВВ) КР580ВР43 предназначен для увеличения числа линий связи МК48 с объектом управления, но при соблюдении протокола обмена может работать и с другими МК. Расширитель содержит четыре 4-битных двунаправленных порта, которые являются прямым расширением резидентной системы ввода/вывода МК48. Это порты, именуемые Р4, Р5, Р6 и Р7. Обращение к портам РВВ осуществляется по специальным командам (MOVD, ANLD и ORLD), выполняемым совместно МК48 и расширителем. Выходы расширителя обладают высокой нагрузочной способностью: выходной ток составляет 5 и 0,24 мА для нуля и единицы соответственно.

Основные режимы работы

Подключение РВВ к МК48 производится путем соединения одноименных выводов ПРОГ и Р2.0—Р2.3. Все пересылки между МК48 и РВВ осуществляются через линии Р2.0—Р2.3 по синхросигналу ПРОГ (PROG), вырабатываемому МК48 при выполнении команд обмена с портами РВВ (MOVD, ANLD и ORLD). В процессе выполнения каждой команды обмена между РВВ и МК передаются две тетрады: первая содержит код выполняемой операции и адрес порта, вторая — данные. Сначала, при переходе сигнала ПРОГ из 1 в 0, передается управляющее слово, а затем, при переходе сигнала ПРОГ из 0 в 1, передаются данные.

Формат УС представлен на следующем рисунке:
KP580BP43_1.gif
Изменить состояние сигналов на выходах РВВ можно тремя способами: непосредственно с помощью команды MOVD Рр, А загрузить в требуемый порт новое значение; с помощью команды ORLD Рр, А произвести логическое сложение порта и аккумулятора и результат загрузить в порт и, наконец, с помощью команды ANLD Рр, А произвести логическое умножение старого содержимого порта и аккумулятора и результат загрузить в порт. Следует особо отметить, что логические операции над данными выполняет сам РВВ, а не МК48.
Прочитать данные из входного порта можно с помощью команды MOVD A, Pp. При выполнении операции ввода указанный порт настраивается на ввод, и его выходы переключаются в третье состояние. Таким образом, для настройки какого-либо порта РВВ на ввод данных необходимо выполнить для него команду ввода. Если до выполнения команды ввода порт находился в режиме вывода, то результат первого ввода окажется неопределенным, а все последующие команды ввода будут давать правильный результат.
Выполнение команд ввода/вывода поясняется временными диаграммами на рис. П 2.1, в.
При включении питания все порты РВВ переходят в третье состояние, а линии Р2.0—Р2.3 настраиваются на режим ввода.
Безо всякого МК48 порт КР580ВР43 вполне применим. У меня он сейчас работает в связке с PIC 16F877-20/P.
Если достаточно одного порта, /CS - вешают на землю и шевелят выводом PROG, подавая команды и данные как в описании.
You do not have the required permissions to view the files attached to this post.
iLavr
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: КР580ВР43 - 4-битный порт

Post by Shaos »

так он ещё и AND/OR сам делает получается?
Я тут за главного - если что шлите мыло на me собака shaos точка net
jdigreze
God
Posts: 1388
Joined: 02 Jan 2006 02:28
Location: Abakan

Re: КР580ВР43 - 4-битный порт

Post by jdigreze »

Управляющее слово (УС) отделяется от данных только его внутренней задержкой?


Lavr Re: Точные тайминги, я думаю, лучше посмотреть здесь:
8243 MCS-48® INPUT/OUTPUT EXPANDER
petrenko
Doomed
Posts: 598
Joined: 10 Mar 2012 16:21
Location: РФ

Re: КР580ВР43 - 4-битный порт

Post by petrenko »

jdigreze wrote:Управляющее слово (УС) отделяется от данных только его внутренней задержкой?
...
Нет.
У.С. грузится по спаду сигнала "ПРОГ" ,а ниббл данных грузится по фронту.

У меня тоже с другими м.к.(не MCS48) вполне нормально работали эти вр43
jdigreze
God
Posts: 1388
Joined: 02 Jan 2006 02:28
Location: Abakan

Re: КР580ВР43 - 4-битный порт

Post by jdigreze »

Понятно. А то по "Рис. П2.1(б)" я не понял как оно происходит.
Кстати, в "8243.pdf" на мой взгляд более наглядная диаграмма.


Lavr: P.S. Ситуация с записью в порт, в общем-то, очевидна: по спаду PROG - У.С., по фронту PROG - данные.
А вот на чтение ситуация может потребовать таймингов: после записи по спаду PROG - У.С., шина данных РВВ
сначала переходит в высокоимпедансное состояние, и только потом по фронту PROG выдаст данные.
Вот здесь тайминги из "8243.pdf" могут и понадобиться.