С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Спасибо, уже разобрался.
АлександрПП, скетч для ардуино можно взять здесь - https://github.com/timtashpulatov/ok...d/ok240ps2.ino
Поясните начинающему пловцу, нативная клавиатура на рассыпухе авто повторяет нажатое? Вот прям с частотой сканирования? А если в одном ряду несколько нажатых оказывается? Никак не решусь раскурить эту схему, доисторические кмопы как-то мимо прошли и не особо хочется)
Profi v3.2 512K+color; Profi 6.2B; МС-0511
(сам вроде как оклавиатурен по третьему варианту авторства четвертого (см. классификацию из стартового поста), от себя только заточка под несколько другой пик, 16ф628, ну и протокол-полярности)
Хочется в идеале чтоб как нативная рассыпушная работала, при этом не собирая ее)
Profi v3.2 512K+color; Profi 6.2B; МС-0511
из книги по океану номер два:
TOM 6. "ИГРЫ
!!! "'" - ИГРЫ ТРЕБУЮТ НЕСТРОБИРУЕМОГО ОБМЕНА С КЛАВИАТУРОЙ (ДОРАБОТКА СХЕМЫ)
вот да, замечено, если не реагировать на ACK и держать строб активным - скорострельность автоповтора зашкаливает. не в этом ли заключается доработка? держать строб, пока нажато.
Profi v3.2 512K+color; Profi 6.2B; МС-0511
Может, для чисто океанических применений. Там что-то такое в статье упоминалось про RSTx на плате клавиатуры (?)
вопчем почти раскурил схему, пока пытался отрисовать ее в протеусе. недорисовал, вроде понимание настигло раньше)
от генератора с делителями считают счетчики, от счетчиков дешифратор, через диоды на столбцы матрицы. 8 разрядов со строк матрицы складываются, и, буде что в конкретном столбце вдруг нажато - генерится строб. счетчики при этом, похоже, приостанавливаются. далее монитор+ читает номер опрашиваемого контроллером столбца (порт С0..3, 42h), добавляет к нему пару бит состояния Ctrl и Shift (биты порта C5, С6, пододвигаемые, как видим, вплотную к С3..0 в процедуре) и далее, по идее, должен считать порт А(=40h), оно же состояние строк матрицы. по выдаче ack процесс продолжается.
т.е., теоретически есть возможность отработать комбинации нажатых клавиш (с точностью до того, что 7007 это всё же пленка, а не тру механик с персональным диодиком на клавишу),
есть возможность не тратить (почти? прерывания вообще кроме теста задействованы?)) время, когда ничего не нажато,
пока нет пониманиятеперь и ежу понятно, как пробел (20h?) превращается в семерку, на "старом" контроллере,
и получается нет нужды в нестробируемом обмене для вот той части игр из списка книги2.
- - - Добавлено - - -
а также
адаптер на пике под это дело не заточить ввиду отсутствия ног,
на атмеге - можно, ввиду наличия.
Последний раз редактировалось UncleDim; 22.08.2024 в 08:17.
Profi v3.2 512K+color; Profi 6.2B; МС-0511
Что характерно (с)
В версиях BIOS со встроенным Монитором холодный старт помимо всяких инициализаций устанавливает довольно замысловатый обработчик RST1, который связан с точкой входа горячего старта - и, возможно, действительно с какой-нибудь кнопкой типа СТОП на клавиатуре.
В более поздних BIOS этот обработчик выпилили вместе с Монитором.
Апнем тему. Поскольку с подключением джойстика ничего не понятно, приходится обратиться мысленным взором к проблеме нажатия нескольких клавиш.
Я все равно собираюсь сделать другой наколеночный контроллер на STM32, так почему бы не посылать по кругу все нажатые клавиши так быстро, как "Океан" успеет их принимать? Должно решить вопрос с играми как минимум.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)