ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
В Питере есть компания efo(www.efo.ru) - а они дилеры атмела.
Ну у меня есть меги48, я на них и экперименты ставлю. Но прикол в том, то что мне приходится в Москве микрухами затариваться. В наших "аптеках" ничего кроме никудышнего PICа не найдешь. Сейчас хоть транспортные компании появились - проще стало, мотаться не надо.
Последний раз редактировалось Mick; 24.11.2008 в 08:39.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Несколько не тот раздел, но раз уж здесь начали "сборную солянку" про ПЦ клавиатуры...
Орион помаленьку оживает, вопрос с клавиатурой для него назревает.
Решил сам попробовать себя на поприще контроллеростроения
Забацал макетку с мегой 8515, привинтил клавиатуру на INT0, для наглядности повесил индикатор от древнего совеЦкого куркулятора
Уже умеем считывать скан-коды, частично декодировать их.
На фотке как раз видно результат нажатия на клавишу "F" (сама букоффка F и ее сканкод 2B). Я крут до безобразия!![]()
Вопрос к Умеющим- как делается обработка запроса клавиатуры с компьютера? На Спектруме сделано судя по схемам Камиля прерывание по селектору адреса FE на INT0 контроллера.
Далее считываем со входа адреса байтик с установленным битиком ряда и выдаем на выход байтик из таблицы, где заранее установлены биты нажатых клавиш. Итого для матрицы 8х8 (64 кнопки) нам надо в RAM иметь восемь ячеек. Сам еле понял что написал
В общих чертах, мои измышления верны? Или есть способы пооптимальней?
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Всё правильно, но только если сканирование идет строго одной строкой, тоесть выборка идет только одной адресной линией.Сообщение от ewgeny7
В этом случае действительно достаточно 8 ячеек, что бы хранить заранее просчитанные коды на выходе каждого ряда клавиатуры.
Не знаю как для ПК8000, а на Спектруме возможно практически любое сочетание одновременно сканируемых строк,
вплоть для случая когда для проверки нажатия любой клавиши 0 устанавливается на всех адресных линиях.
Поэтому приходится либо приостановить работу Спектрума сигналом /WAIT и в зависимости от состояния адресных линий вычислить результат на выходе матрицы клавиатуры, либо иметь заранее просчитанные все 256 вариантов кода.
Поскольку в ПК8000 мы клавиатуру подключаем, не имея возможности /WAITить процессор,
то видимо для учета всех возможных вариантов сканирования, надо иметь буфер на 256 состояний.
Если гарантируется, что сканирование идет одной строкой, то задача на много упрощается.
Но кто это может гарантировать?
PS. Кстати свой вариант прошивки для ATMega48 я практически написал, осталось проверить.
Последний раз редактировалось caro; 07.12.2008 в 22:09.
Там стоит дешифратор ИД10. И чисто физически нельзя сканировать более одной строки.
И собственно я использую такой же прицип, как ты в контроллере спека. Если в спеке у тебя 8 ячеек на хранение масок битов клавиатуры, тов ПК8000 их 10. И собственно работает также замечательно. Я вот тут замутил перекодировщик, подмена кодов. Вот там замороч будет полная. Там надо отсеживать состояния как основных так и альтернативных. Например для перекодировки русских букв уже небоходимо иметь дополнительный буфер масок. А так как еще и есть кнопка РГ, то уже два буфера и т.д. Конечно проще было бы просто сделать без перекодировщика, но тогда надо наклейки новые клеить.
Спасибо!
Правда, имеется ввиду не ПК8000, а Орион. Опрос клавы там идет через ВВ55. Это дает некоторую свободу во времени "обдумывания" выводимого сигнала.
Для простоты буду считать что за раз сканируется только одна линия. Едва ли на Орионе были извращения с опросом![]()
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
А мне всё равно у меня нет ни того, ни другогоСообщение от ewgeny7
Я делаю в расчете на схему РК86 и Вектора, у них вроде они совпадают.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)