Вход

Просмотр полной версии : Конвертер PS/2 в необычную матричную клавиатуру (терминал Wyse 50)



Tronix
11.09.2017, 21:27
Доброго всем,

Заранее прошу прощения, что не совсем по теме ZX Hardware, но подумав решил, что скорее всего именно в этом разделе мне смогут подсказать и направить на путь истинный.

Суть - есть у меня плата от терминала Wyse 50 (http://terminals-wiki.org/wiki/index.php/Wyse_WY-50).

https://habrastorage.org/web/85e/8d9/6b1/85e8d96b13e44edc85224ed8aaa7f094.JPG

Хочу ее оживить и сделать на ее базе, не поверите, терминал. Ну, чтоб с RS232 общался и на монитор выводил. Что-то вроде HyperTerminal, только аппаратный.

Проблема N1 - у меня нет клавы для него. Но, есть на сей девайс сервис-мануал (http://www.textfiles.com/bitsavers/pdf/wyse/880020-01B_WY-50_WY-50+_Maintenance_Manual_Jan1986.pdf), в котором есть схема и клавы. В кратце, выглядит так:

https://geekhack.org/index.php?action=dlattach;topic=50883.0;attach=447 29;image

https://geekhack.org/index.php?action=dlattach;topic=50883.0;attach=447 31;image

https://geekhack.org/index.php?action=dlattach;topic=50883.0;attach=464 83;image

И со стороны материнки:

https://geekhack.org/index.php?action=dlattach;topic=50883.0;attach=447 86;image

Как я понимаю, клава организована как 16 колонок и 8 столбцов. Мать все время перебирает адреса колонок и столбцов, и если кнопка нажата где-то выдает в OUT единицу.

Вопрос - как организовать это в микроконтроллере? Ну, допустим я PS/2 распарсил, уловил что нажата клавиша "A". А дальше как? Ждать несколько миллисекунд пока адрес станет равным строке, в которой находится A, потом ждать пока адрес колонки станет равной колонке в которой находится A и выдать в OUT 1? Вопрос сколько ждать и что делать, если пока ждали уже нажата клавиша "B" на клавиатуре?

Ну, и проблема N2 - это как подключить видео. Имею сигналы HSYNC, VSYNC и VIDEO. В мане в диаграммах вычитал, что VSYNC ~ 16.666ms, что по моим соображением равно CGA. Значит буду пробовать подключить через конвертер GBS-8200 к VGA, или же к телику через SCART. Но это вторично, не думаю что с видео у меня возникнут проблемы. Больше всего клава интересует ((

Завтра попробую подключить ее к питанию, и по возможности заснифить лог анализатором то, что идет в разъем клавиатуры.

blackmirror
11.09.2017, 22:17
Ну, допустим я PS/2 распарсил, уловил что нажата клавиша "A". А дальше как? Ждать несколько миллисекунд пока адрес станет равным строке, в которой находится A, потом ждать пока адрес колонки станет равной колонке в которой находится A и выдать в OUT 1? Вопрос сколько ждать и что делать, если пока ждали уже нажата клавиша "B" на клавиатуре?
Тебе нужна матрица на 128 бит, в которой по нажатию/отпусканию реальной кнопки ставишь/сбрасываешь битик, а при изменении строки/столбца терминалом выдаёшь битик из соответствующей ячейки и всё.

AndyD
12.09.2017, 00:18
Вопрос - как организовать это в микроконтроллере? Ну, допустим я PS/2 распарсил, уловил что нажата клавиша "A". А дальше как? Ждать несколько миллисекунд пока адрес станет равным строке, в которой находится A
Когда адрес(колонка 0111 линия 111) на шине = А и если А нажата то выдать на выход j5-11 лог0,если нет 1. вроде так.
как я понял,например:надо проверить кнопку,хост на шину j5-4.5.6.7.10.8.9 вываливает адрес и из порта j5-11 считывает что там.Контролер должен мониторить шину и по адресу вываливать сразу ответ на j5-11,не важно нажато или нет,то есть 1 или 0.вроде так.

Tronix
12.09.2017, 11:32
Сегодня зацепился за ATX, включил девайс. Только не понятка возникла с линией -23V (минус 23 вольта). Так и не вкурил, зачем она на плате, запустил без нее. Жизнь есть. При старте пикает динамиком. Но внезапно возникли сложности с видео. Сигналы все есть - HSYNC, VSYNC, VIDEO, но конвертер GBS-8200 видео не хавает. Еще есть некий странный сигнал "Dim", на нем тоже шевеление идет будь здоров, но что это такое не понял. Посмотрел лог анализатором:

UPD: Здесь был бред. Не правильно подключил анализатор.

Залил сюда http://rgho.st/6v6QFzLfJ сохраненный снимок Saleae Logic, можно его открыть в программе и посмотреть полностью сигналы....

rw6hrm
12.09.2017, 11:51
По клаве: а не будет ли полезным просмотреть сорцы от адаптера PS/2-клавы на атмеге к "Специалисту"? Вроде бы идея та же...

Tronix
12.09.2017, 12:54
По клаве: а не будет ли полезным просмотреть сорцы от адаптера PS/2-клавы на атмеге к "Специалисту"? Вроде бы идея та же...

Спасибо, посмотрю. Но внезапно заглох на видео.
Теперь правильно снял данные логическим анализатором с HSYNC, VSYNC, VIDEO и Dim. Залил данные для Saleae Logic сюда: http://rgho.st/6v6QFzLfJ
Их можно просмотреть в программе Saleae Logic, даже не имея реального анализатора. В пункте меню Options выбрать "Open capture / setup" и загрузить файл-снимок. Программа для Win, Mac и Linux.
Посмотрите пожалуйста, на предмет схожести с CGA?

- - - Добавлено - - -

А блин, чертов я наркоман. GBS-8200 же аналог на входе хочет, а не TTL. Все, щаз DAC спаяю и проверю.

Tronix
12.09.2017, 15:38
Пффф... Чего то не взлетает.... Что за сигнал Dim такой? Это не интенсивность случайно?