User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 182

Тема: Схема и прошивка контроллера AT PC-Keyb на AT90S2313 Камиля Каримова

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    22.02.2005
    Адрес
    Украина, Харьков
    Сообщений
    1,528
    Спасибо Благодарностей отдано 
    13
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Прикидывал, сделать можно без проблем.
    Только кому это теперь надо?
    Да мне вот надо, конструктив такой на доработке, что широкий DIP40 там не разместить, не говоря про PLCC, а вот узенький DIP28 в самый раз. В принципе и 2313 подошла бы, но увы там только клавиатура.

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

  3. #2

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от spensor Посмотреть сообщение
    Да мне вот надо, конструктив такой на доработке, что широкий DIP40 там не разместить, не говоря про PLCC, а вот узенький DIP28 в самый раз. В принципе и 2313 подошла бы, но увы там только клавиатура.
    Вариант контроллера на ATTiny2313 c поддержкой и клавиатуры и мышки
    я уже кидал как то в форум. Только прошивку не доделал, за не востребованностью.
    Последний раз редактировалось caro; 24.02.2008 в 15:40.

  4. #3

    Регистрация
    22.02.2005
    Адрес
    Украина, Харьков
    Сообщений
    1,528
    Спасибо Благодарностей отдано 
    13
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro
    Вариант контроллера на ATTiny2313 c поддержкой и клавиатуры и мышки
    я уже кидал как то в форум. Только прошивку не доделал, за не востребованностью.
    А прошивка сырая или просто не рабочая?
    Хотя все равно склоняюсь к Mega8(88) - доработки прошивки под базовый кристалл (8515) было бы относительно несложно портировать и под эту вариацию. Но, естественно, это доступно только автору, поскольку одно дело в исходнике корректировать, а другое в дизасме.

  5. #4

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от spensor Посмотреть сообщение
    А прошивка сырая или просто не рабочая?
    Сырая, не проверенная на железе.
    Цитата Сообщение от spensor Посмотреть сообщение
    Хотя все равно склоняюсь к Mega8(88) - доработки прошивки под базовый кристалл (8515) было бы относительно несложно портировать и под эту вариацию.
    У Mega8(88) не очень удобно распределение ножек по портам - один полноценный 8-ми битный порт,
    но поскольку именно на нем закреплены основные сигналы прерываний использовать
    его как порт связи с шиной Z80 не получается.
    Так что простыми способами перенести прошивку из Mega8515 в Mega8(88) не получается.

    Добавлено через 2 минуты
    Цитата Сообщение от Syntal Посмотреть сообщение
    Придётся тогда как в спековские времена - хакать, дизассемблировать, переделывать под себя, реализовывать на имеющемся железе. Так будет даже интереснее!!!
    Проще просто сесть и написать новую прошивку. Даже лучше может получится.
    KingOfEvil вон за 4 дня склепал прошивку под свой Z-контроллер.
    Последний раз редактировалось caro; 06.06.2007 в 17:05. Причина: Добавлено сообщение

  6. #5

    Регистрация
    01.08.2006
    Адрес
    Волгоград
    Сообщений
    399
    Спасибо Благодарностей отдано 
    22
    Спасибо Благодарностей получено 
    24
    Поблагодарили
    22 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Проще просто сесть и написать новую прошивку. Даже лучше может получится.
    KingOfEvil вон за 4 дня склепал прошивку под свой Z-контроллер.
    Писал я с год назад клавиатурного шпиона аж под Tiny13 с Atmelовской флэш-памятью по SPI, с анализом даже интересующих логинов. В принципе работало, с глюками правда (куда ж без них). Только вот прикол - админа дали раньше, чем железка помогла.
    Анти-офтоп: Caro, а можно поинтересоваться изначально прошивка писалась на асме или на Си?

  7. #6

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Syntal Посмотреть сообщение
    .... а можно поинтересоваться изначально прошивка писалась на асме или на Си?
    На асме.

  8. #7

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

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Проще просто сесть и написать новую прошивку. Даже лучше может получится.
    Я вот уже несколько дней пытаюсь контроллер клавиатуры замутить
    Подумал, и решил всетаки сам...
    Заодно и контроллеры подучить (точнее начать изучать) может получится.
    Пока результатов нима.
    Но меня интересует вот что:

    * если одновременно нажато 2 или более кнопки, каким образом это проще распознать?
    * что делать с автоповтором, который в РС-клавиатуре? Как он работает? Просто передает несколько раз код нажатия клавиши и только при отпускании передает код, что кнопка отпущена? (нигде доку найти не мог на ету тему...) Может есть пара ссылок?

  9. #8

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    * если одновременно нажато 2 или более кнопки, каким образом это проще распознать?
    Судя по описаниям контроллеров клавиатур (я имею ввиду встроенных в клавиатуры),
    они допускают обработку не более 6 одновременно нажатых клавиш.
    Поэтому в памяти внешнего контроллера организуется буфер на 6 скан-кодов.
    Каждая нажатая клавиша вызывает выдачу в интерфейс своего скан-кода (некоторые больше одного).
    Даже если нажато одновременно несколько клавиш, их скан-коды будут выданы в линию один за другим,
    в порядке опроса матрицы клавиатуры встроенным контроллером.
    Принятые скан-коды помещаются в буфер внешнего контроллера.
    При отпускании клавиши, в начале выдается служебный байт (0xF0) - признак отпускания, затем сам скан-код этой клавиши.
    При этом из буфера удаляется код отпущенной клавиши.

    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    * что делать с автоповтором, который в РС-клавиатуре? Как он работает? Просто передает несколько раз код нажатия клавиши и только при отпускании передает код, что кнопка отпущена?
    При удержании клавиши начинается цикл автоповтора, при котором в линию передается один и тот же код нажатой клавиши.
    Принятый код надо просто сравнить с тем что уже лежит в буфере, и при совпадении просто игнорировать.
    Есть правда еще один вариант и лично я им пользуюсь.
    Надо переключить клавиатуру в режим scan code 3, при котором каждой нажатой клавише соответсвует один уникальный скан-код, а также установить режим работы Make/Break запрещающий автоповтор кода:
    Код:
    	ldi	data,0xf0	;Select Alt_Scan
    	rcall	trans_ack	;передать
    	ldi	data,0x03	;Alt_Scan = 3
    	rcall	trans_ack	;передать
    ;
    	ldi	data,0xf8	;Select All Make/Break
    	rcall	trans_ack	;передать
    Последний раз редактировалось caro; 07.06.2007 в 08:54.

  10. #9

    Регистрация
    22.02.2005
    Адрес
    Украина, Харьков
    Сообщений
    1,528
    Спасибо Благодарностей отдано 
    13
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro
    У Mega8(88) не очень удобно распределение ножек по портам - один полноценный 8-ми битный порт,
    но поскольку именно на нем закреплены основные сигналы прерываний использовать
    его как порт связи с шиной Z80 не получается.
    Так что простыми способами перенести прошивку из Mega8515 в Mega8(88) не получается.
    Может конечно и ошибаюсь, но можно и второй порт под порт данных заюзать - PB, а осциллятор использовать внутренний. Ведь контроллеры в самих клавах/мышах не обладают большой стабильностью частоты. В то же время внутренний осциллятор Меги, в принципе обладает приемлимой стабильностью частоты. Кроме того, хоть и не так хорошо как в базе (8515), но и в Меге8 можно реализовать COM-порт; проблемы только будут с пересчетом коэффициентов для таймеров, и отклонением этих частот от стандартных, но это не очень существенно, IMHO.

  11. #10

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от spensor Посмотреть сообщение
    Может конечно и ошибаюсь, но можно и второй порт под порт данных заюзать - PB,
    Длительность WAIT увеличится.
    Цитата Сообщение от spensor Посмотреть сообщение
    а осциллятор использовать внутренний. Ведь контроллеры в самих клавах/мышах не обладают большой стабильностью частоты. В то же время внутренний осциллятор Меги, в принципе обладает приемлимой стабильностью частоты.
    Да, стабильность при работе с клавиатурой и мышкой вполне премлемая.
    Только вот частота 8 Мгц, а для Mega8(88) можно ставить внешний до 20 МГц.
    Цитата Сообщение от spensor Посмотреть сообщение
    Кроме того, хоть и не так хорошо как в базе (8515), но и в Меге8 можно реализовать COM-порт; проблемы только будут с пересчетом коэффициентов для таймеров, и отклонением этих частот от стандартных, но это не очень существенно, IMHO.
    COM-порт при тактовой частоте 8 Мгц с приемлемой точностью может работать со скоростью не выше 9600 бод.

    Реализовать можно все что хочется, только какими усилиями.
    При таких потребностях в периферии проще уж ставить и контроллер соответсвующий.

Страница 1 из 2 12 ПоследняяПоследняя

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

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

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

Ваши права

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