реклама на сайте
подробности

 
 
> Как правильно работать с компьютерной Клавой
zorromen
сообщение Mar 22 2007, 10:18
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 13-12-05
Пользователь №: 12 147



Привет всем ... вот замутил девайс чтобы подключать внешнюю клаву ... но столкнусля с проблеммой ...
по идее когда нажимаешь клаву то должен генерироваться код нажатой клавиши ... но если посмотреть осцилографом , то ничего нет ... я понимаю сам процесс работы протокола ... но если при нажатии ничего нет - это говорит о том что, наверно, нужно произвести процесс инициализации клавы ... так вот, Тавариши ... Мне нужнен процесс инициализации ... кто делал подскажите ...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
TriD
сообщение Mar 22 2007, 10:35
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 252
Регистрация: 29-12-04
Пользователь №: 1 728



Нужно подтянуть линии CLK и DATA на питание резисторами, скажем, по 5.1кОм (номинал не принципиален). Никакой специальной инициализации не требуется (речь идет об обычной клаве). Это если вы захотите подключить свой девайс в писюку вместо клавы, то придется правильно отработать процесс инициализации клавы писюком, иначе писюк будет игнорировать команды от нее.
Go to the top of the page
 
+Quote Post
Alex_Pol
сообщение Mar 22 2007, 10:46
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 192
Регистрация: 23-03-05
Из: Украина. Днепропетровск
Пользователь №: 3 626



У Атмела есть апнота AVR313 по названию "Interfase PC AT keyboard". Там есть исходники на Си. В том числе и процедура инициализации. А здесь (http://www.gaw.ru/html.cgi/txt/app/micros/avr/AVR313.htm), то же, только по русски.

Сообщение отредактировал Alex_Pol - Mar 22 2007, 10:49
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Mar 22 2007, 11:01
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



на счёт поддтяжки - по 5.1 - в самый раз, а вот на счёт инициализации - там главное чтоб при старте компа его лапы(клок дата) не висели где то , а были лог1(кстати при питании в 4.хх - были тоже ошибки..). Ещё столкнулся с тем что если неправильно генерился код клавиши - то оно его тож не воспринимало - советую посмотреть в эту сторону тоже..
+ там ещё задежки немаловажную роль играют..
+ был такой глючок - если двигать мышаком и посылать с имволы в клавиатурный интерфейс то будут ошибки тоже..
А на счёт нажатия клавиши - то там точно должен быть код клавивши(так просто , хотел напомнить, что ещё должен быть код отжатия клавиши).Когда я собирал ткое устройство - всё работало, непоняток не возникало(разве что с тем как передаются данные smile.gif )...
Попробуйте отсоединить девайс и проверить его в неподключенном состоянии.
Если интересно в общем могу выложить схемку и код как я это делал...

собсно в архиве схемка + код на передачу, на приём данных так навскидку не нашёл...
Пользуйтесь..

Сообщение отредактировал Kuzmi4 - Mar 22 2007, 10:49
Прикрепленные файлы
Прикрепленный файл  Kb_.rar ( 20.27 килобайт ) Кол-во скачиваний: 71
 
Go to the top of the page
 
+Quote Post
zorromen
сообщение Mar 22 2007, 11:03
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 13-12-05
Пользователь №: 12 147



Да вылаживай ... Тока может чтота я недопонял вас ... но я подключаю клаву к АВР, а не к компу ...
Я говорю что при нажатии вообшее на клаву не генерируется ничего...
Go to the top of the page
 
+Quote Post
676038
сообщение Mar 22 2007, 12:46
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 25-07-06
Пользователь №: 19 070



Вдруг поможет...

Подключал ps/2 мышь к контроллеру Atmega16.
Кстати, подобным образом можно подключить и PS/2 клавиатуру, протокол-то тот же. (При отладке алгоритмов я подключал вместо мыши клавиатуру и принимал от нее байты, так что это проверено).

Пробная программа написана на IAR4.12, работает так:
инициализирует мышь подключенную к INT0 - CLOCK и PORTD_Bit3 - DATA (в трехкнопочном режиме со скроллером),
затем при нажатии кнопки или движении мыши идет перенаправление принятых кодов на USART (используя форматный printf)

Прошу прощения за качество программы, дальше проект не пошел ввиду бесперспективности...

Разбирался с протоколом и алгоритмом по следующим ссылкам:
http://www.computer-engineering.org/ps2mouse/
http://www.computer-engineering.org/ps2protocol/
Прикрепленные файлы
Прикрепленный файл  ps2.zip ( 58.41 килобайт ) Кол-во скачиваний: 66
 
Go to the top of the page
 
+Quote Post
zorromen
сообщение Mar 22 2007, 15:33
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 13-12-05
Пользователь №: 12 147



Вроде так

Keyboard: AA Self-test passed ;Keyboard controller init
Host: ED Set/Reset Status Indicators
Keyboard: FA Acknowledge
Host: 00 Turn off all LEDs
Keyboard: FA Acknowledge
Host: F2 Read ID
Keyboard: FA Acknowledge
Keyboard: AB First byte of ID
Host: ED Set/Reset Status Indicators ;BIOS init
Keyboard: FA Acknowledge
Host: 02 Turn on Num Lock LED
Keyboard: FA Acknowledge
Host: F3 Set Typematic Rate/Delay ;Windows init
Keyboard: FA Acknowledge
Host: 20 500 ms / 30.0 reports/sec
Keyboard: FA Acknowledge
Host: F4 Enable
Keyboard: FA Acknowledge
Host: F3 Set Typematic Rate/delay
Keyboard: FA Acknowledge
Host: 00 250 ms / 30.0 reports/sec
Keyboard: FA Acknowledge
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th August 2025 - 07:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01536 секунд с 7
ELECTRONIX ©2004-2016