долго думал куда же подевались девственницы в девственном лесу
а ларчег просто открывалсо - спектрумы надо искать на Английском ебее, а не на Австралийском.
http://shop.ebay.co.uk/?_from=R40&_t...All-Categories
долго думал куда же подевались девственницы в девственном лесу
а ларчег просто открывалсо - спектрумы надо искать на Английском ебее, а не на Австралийском.
http://shop.ebay.co.uk/?_from=R40&_t...All-Categories
.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Сегодня закончил монтаж элементов на макетке. К сожалению дома закончился монтажный провод, поэтому полный монтаж схемы смогу завершить только завтра. Возможно завтра уже будут первые результаты проверки схемы...
При распайке изучил исходник прошивки и нашел там ошибку.
Pin 19 = KD0;
Pin 18 = KD1;
Pin 17 = KD2;
Pin 16 = KD3;
Pin 15 = KD4;
/*Pin 14 = ON;*/
Pin 13 = KD9_SS;
Сигнал KD9_SS - это внутренний сигнал, он необходим для опроса кавычек, показывает, что SS опрошен по КD9 и можно воспринимать опрос символа через KD9. Выводить наружу его не нужно.
А вот заремаренный ON как раз пригодился бы для принудительного включения триггера...
Про какой триггер речь?
Триггер то внутри тоже реализован.
Чтобы сделать обратную связь пришлось вывести на внешний вывод сигнал KD9_SS. А сигнал ON - он как раз внутри схемы только задействован.
В описании ног он остался, я экспериментировал, поэтому и остался, забыл удалить.
Вот описание реализации триггера:
KD9_SS = ((KD8_9 & KD5 & KD6 & KD10) & !(STB & ON)) # ((STB # ON ) & KD9_SS );
Но здесь действительно есть ошибка, помечено красным, должно быть вот так:
KD9_SS = ((KD8_9 & KD5 & KD6 & KD10) & !(STB # ON)) # ((STB # ON ) & KD9_SS );
В файле нарисована от руки схема замены элементов E5,6,7.
Последний раз редактировалось MV1971; 22.11.2010 в 10:26.
MV1971, я сейчас схему переделываю, не стал дальше паять, так как нашел теоретический просчет...
Прошивку придется потом переписать, когда выложу переработанный вариант
а не 58 кл. разве?
Переработал схему. Решил не заморачиваться на корпуса, сразу рисовал под программируемую матрицу.
Сразу скажу, что основной проблемой было сбросить триггер, во-первых "чем?", а во-вторых "когда?". Предыдущие варианты грешили тем, что после первой установки триггера при опросе шифтов через дополнительный набор клавиш он так и оставался в установке про сброс я забыл. А это означало одно, что система работает только для одного нажатия клавиши, а дальше она работает так, как-будто опрос шифтов и не проверяется.
Новая схема ниже в PDF.
Кратко принцип работы:
1. На сборка Е1..Е3 формируется признак опроса одного из шифтов (CS или SS) через дополнительный набор клавиш.
2. Признаки SS и CS через сборки Е13 и Е14 выдаются на шину данных.
3. При наличии одного из признаков CS или SS на сборке Е4 в момент строба STB формируется логический 0 и подается на установку триггера Т вход SET, при этом на входе reset логическая единица за счет одного из инверсных сигналов SS и CS на сборке Е15. В результате триггер устанавливается в лог 1 (третья строка таблицы).
4. После завершения опроса шифтов признак CS/SS устанавливается в 1 и на вход триггера set поступает 1, а на входе reset остается 1 за счет КА0 на сборке Е15. таким образом, согласно 4-й строке таблицы триггер переходит в состояние хранения.
5. Сохраненный признак SS/CS с прямого выхода триггера поступает на вход сборок Е7..Е12, как сигнал "ON" и разрешает прохождения данных с дополнительного набора клавиш. Это разрешение отсекает проблемный неполный опрос цикла, при котором возможно ложное формирование, например, цифровых клавиш вместо курсора.
6. На сборках Е13, Е14, Е16, Е17, Е18 сигналы с шины данных дополнительных клавиш распределяются на шину данных основных клавиш клавиатуры.
7. После того как происходит отжатие клавиши из дополнительного набора (ни одна из них не нажата) на сборке Е15 сигналом КА0 переодически формируется 0 и подается на вход триггера reset, при этом на входе set за счет отсутствия признаков CS/SS весит 1. Такая комбинация соответствует второй строке таблицы и приводит к сбросу триггера в 0.
8. После сброса триггера схема готова к повторному опросу нажатия дополнительных клавиш.
Я понимаю, что чисто теоретически может возникнуть много спорных вопросов, на многие я себе ответил положительно при анализе схемы и не вижу смысла сейчас их обсуждать. Здесь проще проверить макетированием...
У меня уже все почти готово, осталось распаять провода для матрицы ну и собственно прошить новую версию схемы.
MV1971, жду новую прошивку в выходные попробую старую проверить, но боюсь, что моя ошибка, плюс твоя поправка...
Последний раз редактировалось Addison; 14.04.2017 в 11:17.
Выкладываю, надо пробовать.
Очередная переработка. В прошлой версии был добавлен сброс триггера по КА0, но это привело к блокировке опроса символьных клавиш. Было два пути решить проблему. Первый - это подавать символьные клавиши напрямую на шину данных без отсечки по SS. Глюк ложного нажатия символа при этом в стандартной процедуре был бы исключен, так как SS опрашивается последним. Однако в какой-то нестандартной процедуре опроса при раннем опросе SS глюк мог бы проявиться... Хотя трудно представить себе программу с нестандартным опросом клавиатуры и использованием символьного набора.
Но я решил сделать честно и пошел по второму варианту. Разделил запоминание признаков опроса шифтов через доп клавиши на два, отдельно на двух триггерах их запомнил и отдельно сбросил. При этом даже схема несколько упростилась.
Схема в приложении.
Последний раз редактировалось Addison; 14.04.2017 в 11:18.
Новая версия прошивки
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)