|
|
  |
Контроллер PC/AT клавиатуры на AVR |
|
|
|
Jan 14 2009, 07:02
|
Частый гость
 
Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167

|
To rezident: Здесь вопрос был задан именно после долгих поисков в интернете. На этом сайте ничего полезного нет - на поиск я потратил значительно больше чем 5 минут. На том же сайте атмела указывается только вариант простенькой 4х4 клавиатуры и подключения клавиатуры к контроллеру. Конечно не буду отрицать, что я может чего упустил - вот поэтому и запостил сюда вопрос. Алгоритмы опроса и избавления от дребезга меня не интересуют - я ясно написал, что не хочу изобретать велосипед (но это не значит, что я не могу это сделать). Сроки по проекту как всегда "позавчера", и делать клавиатуру на 80% соответствующую стандартной с нуля меня не очень прельщает (других дел полно). Отдельное спасибо за то что переместили мою тему в раздел "В помощь начинающему". Как вижу тут каждый спец по клавиатурам  Единственный нормальный ответ - VDG: Спасибо, в общем нечто подобное я и предполагал. Еще не удалось найти подробной инфы, в частности организацию таблицы кодировок. Из-за этих мелких вещей вот и боюсь, как бы клавиатура с моей прошивкой не выдала бы ерунды в каком-нибудь экзотическом случае. Пдф о котором вы говорите пока не обнаружил - поищу еще.
|
|
|
|
|
Jan 14 2009, 09:35
|
Частый гость
 
Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167

|
Стандартные контроллеры не подходят по нескольким причинам - они заточены под конкретные матрицы, а желательно сделать ПО легко настраиваемое под конкретную матрицу + требуется организовать несколько иной алгоритм опроса, да и PS/2 не нужен - данные идут через UART. Цена конечной версии клавиатруры естественно будет в несколько раз дороже 100р  область применения весьма специфическая. А что касается того, что мне непонятно: Таблицы скан-кодов 1,2,3 - отличаются ли они для русской клавиатуры? И если да, то нужно их описание. Алгоритмы обработки нажатия одновременно нескольких клавиш, до 3 и более (работа с автоповтором, когда производится отсылание кодов отжатий, обработка ошибки сканирования) - кстати в разных клавиатурах это организовано по разному, возможно зависит от матрицы. Это то что приходит на ум пока я этим плотно не занялся, вероятно дальше число вопросов увеличится.
|
|
|
|
|
Jan 14 2009, 10:36
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(Serg_Sm @ Jan 14 2009, 12:35)  Таблицы скан-кодов 1,2,3 - отличаются ли они для русской клавиатуры? И если да, то нужно их описание. В наших клавиатурах используется таблица 2. Это написано в статье, ссылку на которую приводил выше. Там же и сама таблица. Цитата(Serg_Sm @ Jan 14 2009, 12:35)  Алгоритмы обработки нажатия одновременно нескольких клавиш, до 3 и более (работа с автоповтором, когда производится отсылание кодов отжатий, обработка ошибки сканирования) - кстати в разных клавиатурах это организовано по разному, возможно зависит от матрицы. При нажатии нескольких клавиш: код нажатия и отпускания - в соответствии с порядком нажатий/отпусканий; автоповтор - только для последней нажатой и не отпущенной. При одновременном нажатии большого числа клавиш - коды начиная с некоторой не передаются (определял эксперементально), т.е. как-будто и не нажимались (речь, естественно для клавиш типа буква/цифра, всякие Ctrl и им подобные - нажатие/отжатие передаются всегда). Автоповтор прекращается, если удерживаем клавишу и нажали/отжали управляющую (Shift и др) (по эксперименту). Автоповтор некоторых клавиш - не производится: Ctrl, Shift, Alt, NumLock, CapsLock, ScrollLock, PrintScreen, Pause. P.S. Соврал: автоповтора нет только для Pause
|
|
|
|
|
Jan 15 2009, 08:15
|
Частый гость
 
Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167

|
Про 2 таблицу понятно, а что делать если придет запрос на установку другой кодовой таблицы? Что с передачей ошибки сканирования при нажатии большого числа клавиш? Передаются ли после неё коды отпущенных клавиш (если были нажаты ранее)? Вот мне не нравиться, что информацию приходиться получать из экспериментов. Где бы стандарт описывающий AT клавиатуру найти? PS: Вот нашел, похоже самое подробное описание что я видел: http://download.microsoft.com/download/1/6...6c/scancode.doc
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|