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

User Tag List

Страница 5 из 21 ПерваяПервая 123456789 ... ПоследняяПоследняя
Показано с 41 по 50 из 206

Тема: Клавиатура 128К (56 клавиш)

  1. #41
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Провел макетирование!

    Скрытый текст

    [свернуть]


    Макетирование показало, что все приведенные тут варианты схем и прошивок неработоспособны. Однако не надо радоваться раньше времени. Сама идея оказалась состоятельной, в приведенных вариантах были просто мелкие недочеты, вызванные многофакторностью решаемой задачи. Невозможно все и вся сразу учесть.
    Долго мучался, чтобы разобраться, вариант таскать прошивку, которую пишет MV1971, на работу не проходил. Для отладки нужно было экспериментировать не отходя от кассы. По сему решил приобрести вот такого зверька.

    Скрытый текст

    [свернуть]

    После этого дела пошли в гору.
    Сначала добился того, чтобы при нажатии каждой дополнительной клавиши формировался требуемый символ - 5,6,7,8 для курсора и соответсвенно остальные. Задача оказалась не тривиальной, как я ее себе представлял в тех схемах, которые тут публиковал. Особенно мешались клавиши, которые на схеме показаны сиреневым цветом (ковычки и точка с запятой). Амстрадовцы их вынесли из своих столбцов, поэтому, чтобы забросить их назад пришлось попотеть...
    Эта задача была успешно решена!
    Далее были добавлены опросы шифтов CS и SS. Это прошло относительно гладко. Таким образом, я получил прошивку, которая позволяет опрашивать дополнительные 16 клавиш.
    Далее встала проблема глюков ложной выдачи символов вместо выполнения функций дополнительных клавиш. Исследовал эту проблему на наиболее глюкавых клавишах курсора LFT, RGH.
    Для этого в режиме бейсик 128к набрал полный экран символов "1", 20 строк по 27 символов. Затем перемещал курсор по этим символам, сначала вправо, потом влево. При возникновении глюка в массиве "1" появлялись символы "5" и "8". Так, на 27*20=540 нажатий при ритмичном перемещении курсора возникало около двух "5" и трех, четырех "8".
    Глюк был четко воспроизведен и зафиксирован. После этого начал работать над его устранением. Долго приколхозивал триггер отсечки неполных циклов. Но потом отдельно разобрался с самим уравнением триггера, оттестировал его, убедился как он сбрасывается и устанавливается. После этого задача решилась практически мгновенно... Сама идея триггера (его установка и сброс), которую я привел в последнем варианте абсолютно верна, именно она и была успешно реализована!!!
    Еще одна проблема, которая возникла при программировании матрицы - это длина логического уравнения. На этот параметр есть ограничение. Не хватало длины при введении сигнала строба клавиатуры. Обошел эту проблему тем, что ввел стробирование опроса шифтов только для триггеров, то есть там где это важно. Для шины данных строб осуществляется входным регистром в самом Спектруме.

    В итоге была получена прошивка с отсечкой неполных циклов при помощи триггерного запоминания опроса CS и SS в каждом цикле опроса.
    Прошивка протестирована по вышеописанной методики, случая ложного срабатывания обнаружено не было. Использовался Пентагон 128к 91г, клавиатура Amstrad +2/3. Проверка осуществлялась только для клавиш курсора RGT и LFT. Остальные клавиши реализованы точно также, и вероятность глюка для них либо такая же либо меньше, так что проблем возникнуть не должно.
    Порядок опроса адресных строк на работу схемы никак не влияет. Как видно из последнего варианта схемы, которую я приводил выше, триггер сначала сбрасывается KA0 или KA7 для каждого из шифтов, а потом с небольшой задержкой, вызванной прохождением сигнала через ряд логических элементов, устанавливается в лог 0, открывая путь опросу символов через клавиши. Поэтому очередность опроса адресных строк для установки и сброса триггера не имеет значения.

    Прошивку привожу ниже, желаю удачи в использовании, жду результатов ваших тестов.
    Вложения Вложения
    Последний раз редактировалось Addison; 14.04.2017 в 11:19.

  2. #42
    Master Аватар для VELESOFT
    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    752
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    33
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    I see in your project GAL16V8. This version of GAL use internal pull-down 10kOhm on pin 2 after power on. (this feature are used in GAL 16V8 and 20V8. Gal 22V10 don't use any pull-down)

  3. #43
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от VELESOFT Посмотреть сообщение
    I see in your project GAL16V8
    ATF16v8B


    Цитата Сообщение от VELESOFT Посмотреть сообщение
    This version of GAL use internal pull-down 10kOhm on pin 2 after power on.
    Не понял, ты хочешь сказать, что есть подпорка входов?
    При чем тогда только пин 2?

  4. #44
    Master Аватар для VELESOFT
    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    752
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    33
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Клон Посмотреть сообщение
    Не понял, ты хочешь сказать, что есть подпорка входов?
    При чем тогда только пин 2?
    This is undocumented feature. Pin 2 on both GAL types are used also for programming, but in working mode is on this input pin also 10K resistor to GND (internal). Example:
    - if you connect adress line A14 to pin 2 then will used as input signal but parallel is connect via resistor 10K to GND.
    - if you connect adress line A14 to any other input pins then will used as input signal only (without any internal resistor)
    This pull-down is measurable only after power on !!!

    I dont know ATF16V8 type, you can verify this feature

  5. #45
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Обновил сообщение №2

    Привел схему подключения матрицы и ссылку на отработанную прошивку.
    Последний раз редактировалось Addison; 18.12.2010 в 23:01.

  6. #46
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Схема прошивки

    Скрытый текст

    [свернуть]

    Сделал логическую схему пошивки.
    Для облегчения начертания и понимания разделил ее на 4-ре секции. Схема нарисована точно по уравнениям без каких-либо упрощений, присутствуют все логические операции включая скобки.

    В секции I решается задача определения опроса шифтов CS и SS через дополнительный набор клавиш.
    В секции II решается задача запоминания факта опроса шифтов CS и SS через дополнительный набор клавиш. Для этого реализованы два триггера Т1 и Т2 на элементах И-НЕ. Установка триггера осуществляется по сигналам SS и CS, сброс по KA0 и KA7 при отсутствии опроса CS и SS. Сигналы установки и сброса стробированы, для исключения запоминания ложных сигналов, которые могут формироваться на шине адреса. Таким образом, триггеры устанавливаются, если опрошен один из шифтов через дополнительные клавиши и сбрасываются при опросе по адресным линиям KA0 и KA7, если ни одна дополнительная клавиша не нажата. На выходе секции сигналы триггеров для CS и CS суммируются по И. В эту сумму можно подмешать и сигнал внешнего тумблера, который включает и отключает триггерную отсечку.
    В секции III решается задача выделения сигналов опроса, соответствующих символам. Если это не делать, то в некоторых случаях при опросе через одну клавишу из дополнительного набора могут проскакивать до трех сигналов. Два от адресных линий шифтов KA0 и KA7и один от адресной линии нужного символа. Кроме того, проблема усугубляется нестандартным расположением клавиш «кавычки» и «точка с запятой». В конечном счете все это приводит к выдачи на шину данных сразу нескольких битов за один цикл опроса и ставит процедуру опроса в раскоряку. Таким образом, чтобы это избежать вся расширенная часть шины данных фильтруется по ИЛИ так, чтобы прошли только сигналы от опроса по адресам символов. На выходе секции фильтрованные сигналы обозначены через знак «*».
    В секции IV решается задача распределения расширенной части шины данных с KD5 по KD10 на основную часть с KD0 по KD4, а также осуществляется триггерная отсечка по сигналу ON.
    Конечно, схему можно было бы и упростить в некоторых местах, но я не вижу в этом нужды. От добра – добра не ищут…
    Последний раз редактировалось Addison; 14.04.2017 в 11:26.

  7. #46
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #47
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXFanat Посмотреть сообщение
    Разобрал для форума
    это как бы уже здесь постилось в сообщении №2, но может этот вариант лучше...

  9. #48
    Guru Аватар для Addison
    Регистрация
    07.01.2006
    Адрес
    г. Москва
    Сообщений
    3,442
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Народ, ну что, кто-нибудь пробовал прошивку?
    Есть какие-то впечатления?

  10. #49
    Banned Аватар для Black_Cat
    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXFanat Посмотреть сообщение
    Развел печатную плату клавиатуры, схема которой размещена на:
    http://velesoft.speccy.cz/samcoupe_keyboard-cz.htm.
    ну, и при чём тут клава от SamCoupe?

  11. #50
    Banned Аватар для Black_Cat
    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXFanat Посмотреть сообщение
    можно ли подключить к ZX, и что дополнительно надо
    У Спектрума есть своя расширенная клавиатура, а расширения этой БЕЙСИКом Спектрума не поддерживаются. Встаёт вопрос - и зачем ты её хочешь подключить? И уж если рассматривать подключение, то к какому конкретно клону?
    Последний раз редактировалось Black_Cat; 16.07.2011 в 17:12.

Страница 5 из 21 ПерваяПервая 123456789 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Пленочная (56 клавиш) клавиатура: стандарт
    от Gryphon в разделе Устройства ввода
    Ответов: 9
    Последнее: 22.03.2010, 10:38
  2. Куплю пленочную ZX клавиатуру 58 клавиш
    от Zhizh в разделе Барахолка (архив)
    Ответов: 5
    Последнее: 01.09.2008, 20:34
  3. Куплю клаву 40 клавиш или расширенную
    от F0lken в разделе Барахолка (архив)
    Ответов: 9
    Последнее: 12.08.2008, 12:25
  4. Сигнатура замыкания/дребезга клавиш
    от Raider в разделе Программирование
    Ответов: 19
    Последнее: 11.01.2008, 19:34
  5. Клавиатурку 58 клавиш пленочную куплю!
    от Orionsoft в разделе Барахолка (архив)
    Ответов: 4
    Последнее: 15.05.2005, 15:29

Ваши права

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