|
Message
From: Jecel Assumpcao Jr<jecel@m...>
Date: Mon Jan 17 08:39:43 CET 2005
Subject: [usb] Need Clarifiaction USB 1.1 Interrupt Endpoint
Ramachandiran V wrote on Sat, 15 Jan 2005 16:21:18 +0530 > The Problem i'm facing is like , what ever the data i type in Keyboard , It is read and > displayed TWICE. I checked the behavioral simulation and saw that the data is stored > in Endpoint FIFO only once with WE for FIFO is kept asserted for 1 Clock Pulse.
One simple test: do the characters appear twice when you press a key or once when you press it and then a second time when you release it?
For example: when you press the "A" key the PS/2 interface sends a scan code of 0x1C and when you release it sends a 0xF0 followed by a 0x1C, which is three bytes in all. If you just convert the 0x1C to ASCII and ignore the 0xF0 you will get two "a"s on your screen. The reason why the AT keyboard works this way is so you can detect when some key is being held down and not just when it is pressed. This doesn't always work very well (see "n key rollover" and autorepeat for complications) but is what makes the keyboard a practical input device for games.
Check out
http://panda.cs.ndsu.nodak.edu/~achapwes/PICmicro/keyboard/scancodes2.ht ml
Your problem is probably something else, but it is always good to check your basic assumptions when debugging.
Good luck, -- Jecel
|
 |