Важная информация

User Tag List

Страница 3 из 5 ПерваяПервая 12345 ПоследняяПоследняя
Показано с 21 по 30 из 41

Тема: Контроллер для подключения PS/2 клавиатуры

  1. #21
    SaintTurnip
    Гость

    По умолчанию

    Цитата Сообщение от forth32 Посмотреть сообщение
    На практике оказалось, что есть программы, которые проверяют факт наличия нажатой кнопки, выставив адрес 00000000. То есть за одну операцию ввода можно узнать, нажата ли хотя бы одна кнопка на всей клавиатуре
    Спасибо за объяснение. Способ опроса всей клавиатуры и правда удобный.

    Его можно поддержать, записывая в нужный адрес OR от состояния всех рядов. Комбинаций адресов не так много.

    А как тебе такой вариант?

    Выбросить:
    * CSKB
    * SRAM
    * мультиплексор

    Добавить:
    * восемь декодеров i2c по 16 бит с защелками, типа PCF8575
    * восемь буферов по 16 бит для адресного селектора
    * шестнадцать OR на 8 входов

    Корвет даже не отличит от настоящей клавиатуры. И в атмеге свободные пины останутся.

    А что плата большая, так ведь и Корвет не маленький!

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

    FPGA на системном разъеме может не только клавиатуру изображать.

    Плисину пожирнее + SD + ОЗУ:
    - Extender
    - Виртуальный дисковод для 8010
    - Расширение памяти до четырех страниц
    - Мышь
    - Джойстики
    - Локалка

    Только подумать как грамотно затенить реальные устройства. Может выпаять вообще.

  2. #22
    Activist
    Регистрация
    17.04.2011
    Адрес
    Санкт-Петербург
    Сообщений
    324
    Спасибо Благодарностей отдано 
    32
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    48 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SaintTurnip Посмотреть сообщение

    Добавить:
    * восемь декодеров i2c по 16 бит с защелками, типа PCF8575
    * восемь буферов по 16 бит для адресного селектора
    * шестнадцать OR на 8 входов

    Корвет даже не отличит от настоящей клавиатуры. И в атмеге свободные пины останутся.
    Ну вот нечто подобное я и предполагал сделать. Только мне лень разводить и травить плату, идти в магазин за микросхемами, паять всю эту пачку... Проще описать всю эту схему на верилоге и получить тот же самый результат. Ну нечто вроде такого:
    Код:
     module kb(
     input [7:0]adr,
     input reset,
     input ps2data,
     input ps2clock,
     output [15:0]outdata
     );
    reg[15:0] data0;
     reg[15:0] data1;
     reg[15:0] data2;
     reg[15:0] data3;
     reg[15:0] data4;
     reg[15:0] data5;
     reg[15:0] data6;
     reg[15:0] data7;
     
     assign outdata= 
         (data0 & ~{2{adr}}) | 
         (data1 & ~{2{adr}}) | 
         (data2 & ~{2{adr}}) | 
         (data3 & ~{2{adr}}) | 
         (data4 & ~{2{adr}}) | 
         (data5 & ~{2{adr}}) | 
         (data6 & ~{2{adr}}) |
         (data7 & ~{2{adr}});
    Как и в твоем случае, строб по CSKB здесь не нужен, поскольку логика полностью асинхронная. К этому еще нужно добавить схему сброса регистров в 0 по ресету, ну и логику опероса клавиатуры. Ее можно или описать на том же верилоге, или, что лучше, синтезировать какое-нибудь процессорное ядро, например NIOS2 или хотя бы тот же AVR, и сделать программную обработку.

    FPGA на системном разъеме может не только клавиатуру изображать.
    Ну, я-то собираюсь его к разъему клавиатуры цеплять. Системный разъем - это отдельный разговор.

    - Extender
    - Виртуальный дисковод для 8010
    - Расширение памяти до четырех страниц
    - Мышь
    - Джойстики
    - Локалка
    Я думаю, это уже слишком. Тогда уж можно просто весь корвет запихать в FPGA и вообще отказаться от этой громоздкой платы. Тут, кстати, кто-то уже пытался это сделать, но так и не допилил вроде бы до рабочего состояния.

    Из вышеперечисленного я реализовывал только виртуальный дисковод, подключаемый к боковому разъему (проект EXTROM, где-то в этом разделе есть). Но там обошлись без FPGA, все сделано на любимой в народе атмеге.

  3. #23
    SaintTurnip
    Гость

    По умолчанию

    Цитата Сообщение от forth32 Посмотреть сообщение
    Я думаю, это уже слишком
    Учитывая, что локомотив тут ты, что сделаешь, тому и рады


    Цитата Сообщение от forth32 Посмотреть сообщение
    Тогда уж можно просто весь корвет запихать в FPGA и вообще отказаться от этой громоздкой платы. Тут, кстати, кто-то уже пытался это сделать, но так и не допилил вроде бы до рабочего состояния.
    Форумчанин ILoveSpeccy довел до состояния беты и забросил. Жаль только исходники не опубликовал.

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

    Цитата Сообщение от forth32 Посмотреть сообщение
    Ну, я-то собираюсь его к разъему клавиатуры цеплять. Системный разъем - это отдельный разговор.
    С ним какие-то сложности? Это на него выведены все ноги процессора?
    Последний раз редактировалось SaintTurnip; 01.07.2018 в 12:11.

  4. #24
    Master
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    904
    Спасибо Благодарностей отдано 
    200
    Спасибо Благодарностей получено 
    144
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Собрал прототип "безвейтового" контроллера PS/2 клавиатуры для Корвета.



    Идеей данной железки любезно поделился со мной andykarpov, за что ему огромное спасибо.

    Вопрос в том, нужна ли кому-то данная железка? Стоит ли заказать для нее производство печаток?
    И если ответы на эти вопросы будут положительными, то как народ видит раскладки клавиатуры?

  5. Эти 2 пользователя(ей) поблагодарили Xrust за это полезное сообщение:

    Serebriakov (09.08.2019), surinm (09.11.2020)

  6. #25
    Master Аватар для ILoveSpeccy
    Регистрация
    20.03.2007
    Адрес
    Germany
    Сообщений
    867
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SaintTurnip Посмотреть сообщение
    Форумчанин ILoveSpeccy довел до состояния беты и забросил. Жаль только исходники не опубликовал.
    Исходники всегда лежали тут, не жалко.
    https://github.com/ILoveSpeccy/Aeon-...r/cores/korvet
    Буду только рад если кто до ума доведёт.
    SpeccyLand - тут рождается клон!

    Новый проект: Аркадный автомат своими руками

  7. Эти 2 пользователя(ей) поблагодарили ILoveSpeccy за это полезное сообщение:

    Serebriakov (09.08.2019)

  8. #26
    Master
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    904
    Спасибо Благодарностей отдано 
    200
    Спасибо Благодарностей получено 
    144
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Нажмите на изображение для увеличения. 

Название:	korvetkey.jpg 
Просмотров:	113 
Размер:	22.0 Кб 
ID:	70184
    Вот схема и скетч для безвейтового контроллера клавиатуры. "Красивую" раскладку с полным соответствием русских букв и символов пока не делал, т.к. еще слишком мало вообще работал с Корветом и не решил, как удобнее.
    Скетч прост, как мычание. Массив задает соответствие между нажатой клавишей и замкнутыми контактами на матрице. Можно легко допилить переключение раскладок и добавить сколько угодно подобных массивов. Так же этот адаптер можно приспособить к практически любой матричной клавиатуре, не обязательно именно к Корвету. Вместо Атмеги 8 можно использовать, например, плату ардуино нано и т.п. Можно и без кварца обойтись, только сконфигурировать работу Атмеги от встроенного генератора. Выводы контроллера, предназначенные для SPI, UART и кварца не задействованы в скетче специально для универсальности.
    korvetkey.zip
    Вот еще даташит на MT8816. Только имейте в виду, что нумерация выводов по крайней мере для DIP корпуса там дана ошибочная. В моей схеме - правильная.
    Последний раз редактировалось Xrust; 02.10.2019 в 19:55.

  9. Эти 3 пользователя(ей) поблагодарили Xrust за это полезное сообщение:

    Roger Wilco (14.10.2019), Serebriakov (04.10.2019), surinm (09.11.2020)

  10. #27
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,721
    Спасибо Благодарностей отдано 
    16
    Спасибо Благодарностей получено 
    134
    Поблагодарили
    87 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Xrust Посмотреть сообщение
    Вот еще даташит на MT8816. Только имейте в виду, что нумерация выводов по крайней мере для DIP корпуса там дана ошибочная. В моей схеме - правильная.
    А где там ошибка? Ткни носом.
    Можно использовать также микросхему CD22M3494
    https://www.renesas.com/ja-jp/www/do.../cd22m3494.pdf
    Последний раз редактировалось caro; 02.10.2019 в 20:43.

  11. #28
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    MT8816? есть вопросы?
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

  12. #29
    Master
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    904
    Спасибо Благодарностей отдано 
    200
    Спасибо Благодарностей получено 
    144
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    caro, там Х выходы некоторые перепутаны. Сейчас найду картинку, сфоткаю и скину.

  13. #30
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    .
    Последний раз редактировалось OrionExt; 02.10.2019 в 21:15.
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

Страница 3 из 5 ПерваяПервая 12345 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 34
    Последнее: 24.11.2022, 16:05
  2. Ответов: 146
    Последнее: 31.05.2020, 19:00
  3. Ответов: 28
    Последнее: 06.06.2018, 15:28
  4. Контроллер клавиатуры для Скорпиона
    от Nikolaj Amosov (500:812/02.26) в разделе Scorpion
    Ответов: 1
    Последнее: 15.11.2005, 23:05

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •