Предлагаю обсудить конструкцию экстремально - минимального контроллера MIDI - клавиатуры, предназначенного для встраивания в детскую музыкальную игрушку. Бюджет - до 1000 руб, так что будут некотрые решения, направленные на удешевление ( например, отказ от применения 1801РР1 и др. ППЗУ ).
ЭБ ( в стиле "ретрокомпьютинг" ) :
КМ1801ВМ1А-5 мгц.
КР1801ВП1-065 7.5 мгц ( 31.25 кбод )
62256 х 2 шт. ( 60 кбайт СОЗУ 1 такт )
555ИР23 х N шт.
КР1564ИР23 - несколько шт.
Мелкие ИС - кучка.
ПЗУ - на диодиках и 155ИД3 ( 16 слов ).
Адрес порта клавиатуры - 177714
Адрес РНП - 176000
Текст ПЗУ ( приблизительно ) :
На 177716 порте - индикатор 7-сегментный ( или 16-сегментный, или 4 шт. матриц 8х8 общий - катод, или "малогабаритное табло для БК" ) со сканированием, использующий в т.ч. 177714 порт.
Клава будет иметь 2 режима функционирвания - "Загрузка" и "Работа", определяемые переключателем ( адреса РНП 176000 и 001000 соответственно )
Устройство процессора М-ЭВМ :
Все мелкие ИС - КР1533
Выключатели :
1.Перезапуск
2.Режим загрузка/работа ( РНП=176000/001000 )
*
Блок телеграфа, универсальный - и для MIDI 31.25 Кбод, и на др. скорости :
Где :
S2.1 замкнут - 177560, разомкнут - 176560
S2.5...8 - скорость FR0...FR3
S3.1 разомкнут - инверсия приемника готовности, замкнут - без инверсии.
S3.2 разомкнут - инверсия приемника данных, замкнут - без инверсии.
S3.3 разомкнут - инверсия передатчика данных, замкнут - без инверсии.
S3.4 разомкнут - инверсия передатчика готовности, замкнут - без инверсии ( только для RS-232 )
S3.5 - состояние входа готовности передатчика 065 при MIDI - режиме ( на входе ВП1-065 должно быть 0в. )
S3.6 разомкнут - RS-232, замкнут - MIDI
Мелкие ИС применять КР1533
Все входы и выходы защищены от кратковременного попадания ~220 вольт ( 20 мс, не более )
*
Порты 177714 и 177716 :
Применять КР1564ИР23 ( т.к. у них большое выходное напряжение и встроенная диодная защита от статики на входах ),
и 155ИД10 - они обеспечивают выходной ток до 80 ма ( практически и 120 ма могут, при повышении выходного напряжения до +1.2 вольт ).
Клавиатура - пассивная размером до 10х12 сканов с теоретической возможностью применить и 16х12 сканов.
Индикатор - 16 сегментный 16 знаков ( или даже диодная точечная матрица 1 цвет 8х8 4 шт. с общими катодами ).
В самом крайнем случае и АЛС318 подойдет.
Назначение регистров :
177716 запись - сегменты индикатора, аноды, 16 шт.
177714 запись - биты 0...3 - выходной сигнал сканирования клавы,
биты 4...7 - выходной сигнал сканирования катодов индикатора ( отдельных знаков ), 16 шт.
177714 чтение - биты 0...11 - входной сигнал с клавиатуры.
177716 чтение - старший байт - РНП.
*
СОЗУ и диодное ПЗУ :
Применять 2 шт. 62256 быстрее 100 нс, с допустимым напряжением хранения - 2 вольт.
Адрес СОЗУ - 000000...167777
Адрес ПЗУ - 176000...176377, реально - до 176037, примерно 75 диодов для 1801ВМ1, для 1806ВМ2 - до 100 шт.
Быстродействие СОЗУ - 1 такт, ПЗУ - 0 тактов. Для 1806ВМ2 допускается применять СОЗУ с быстродействием 0 тактов.
Собственно БИС СОЗУ не показаны на рисунке, их входы CS подключать к 217ЛА2 - младший байт СОЗУ - "L", старший байт - "Н".
Входы СОЗУ "ОЕ" - линия DIN МПИ, входы "WE" - линия DOUT МПИ.
Применять мелкие ИС серии КР1533, а так же К155ИД3, 2ЛБ172, 217ЛБ2.
Возможно расширение СОЗУ до 62 кбайт посредством добавления 1 шт. 555ЛЛ1 - адреса 000000 - 173777
Возможно добавление 16-канального 8 битного АЦП для опроса регуляторов, но с импортной АЦП ( т.к. для 1113ПВ1 надо городить стабиллизированный БП минус 15 в. 30 ма. )
Вариант ПЗУ для 1806ВМ2 :