blackinwoman, Спасибо! Это ПЗУ отличается от моего одним байтом.
Вот теперь интересно, какое из них "правильнее"...
Вид для печати
blackinwoman, Спасибо! Это ПЗУ отличается от моего одним байтом.
Вот теперь интересно, какое из них "правильнее"...
Ребята, а чем посмотреть содержимое дампа ПЗУ? Я тут сделал копию ПЗУ вроде она с моего Хоббита (каюсь не пометил откуда какая). Но почемуто начало у нее пустое.
Вложение 58881
Друзья! Соратники!
Спустя более 10 лет нашел в себе силы восстановить ХОББИТ (большой с контроллером дисковода), но у меня только сама плата. Столкнулся с проблемой подключения клавиатуры. Механическая меня не устраивает, нужно PS/2. Потратил уже неделю, не хватает знаний реализовать контроллер на чем нибудь. В целом механизм опроса клавиатуры в Хоббите разделен на две составляющих. Первая опрос ядра, это наша матрица 5 на 8, проще говоря 40 клавишная спековская клавиатура. И опрос остальной части (помним что у нас использовалась МС7007).
Так вот, в целом реализовать контроллер как я понимаю совсем не сложно, потому как у нас есть тактирующий сигнал HRES по которому происходит увеличения счетчиков и на выходе ПЛМ РТ5 появляется семибитный код. Он обозначает следующее: старшие 3 бита это номер ряда, а младшие 4 это номер колонки. Если клавиша нажата то с мультиплексора КП1 падает единичка. Далее там уже не так важно (как мне кажется). Цель проста получаем код нажатой клавиши с PS/2, смотрим текущий адрес опроса, если это наша клавиша на 10 выводе мультиплексора выставляем единичку.
Возможно я плохо понимаю...
При попытки использовать для этого ардуинку 168, не хватает ее скорости. А при попытки использовать stm32 я вообще заблудился...
Если кто-то может помочь сделать контроллер PS/2 для данного компьютера! отзовитесь!!!!
В Хоббите два вида опроса клавиатуры, как в спектруме, и свой, по скан-кодам. При таком подходе будет работать только первый.
Не так. Микропроцессор постоянно крутится в цикле опроса клавиатуры и поддерживает в актуальном состоянии матрицу нажатых/отпущенных клавиш. При запросе от спектрума данных с клавиатуры, микропроцесоор прерывается, выбирает запрошенный ряд и выдаёт с него данные в порт спека.
Я не уверен, но мне кажется те реализации не подходят.
Я не очень силен в схемотехнике (это я и то преувеличил). Посмотрел на схему Ленинграда. Как я понимаю, там код образуется на шине данных и считывается через порт FE.
В Хоббите, сканирование идет постоянно с подачей питания, пачками по 5 бит, которые выбираются из клавиатурного ПЗУ и попадают на клавиатурное ОЗУ которое хранит по 8 пятибитовых значений, которые по сигналу! INFE читаются из клавиатурного ОЗУ и попадают на канал А ВВ55 и читаются по обращению к порту FE. Для всей клавиатуры используется канал Б этой же микросхемы где мы имеем код состоящий из 7 бит и один бит отвечающий за нажата/не нажата.
Соответственно если мы подключимся непосредственно на порт FE, то у нас теряется возможность использовать клавиатурное ОЗУ.
Опять таки, я что-то не так понимаю?