24
|
ni.com
|
NI Digital System Development Board User Manual
Mouse
Once entered in stream mode and data reporting enabled, the mouse outputs a clock and data
signal when it is moved; otherwise, these signals idle in logic '1.' Each time the mouse is moved,
three 11-bit words are sent from the mouse to the host device, as shown in Figure 11. Each of
the 11-bit words contains a '0' start bit, followed by 8 bits of data (LSB first), followed by an odd
parity bit, and terminated with a '1' stop bit. Thus, each data transmission contains 33 bits, where
bits 0, 11, and 22 are '0' start bits, and bits 11, 21, and 33 are '1' stop bits. The three 8-bit data
fields contain movement data as shown in the figure above. Data is valid at the falling edge of
the clock, and the clock period is 20 to 30 kHz.
The mouse assumes a relative coordinate system wherein moving the mouse to the right
generates a positive number in the X field, and moving to the left generates a negative number.
Likewise, moving the mouse up generates a positive number in the Y field, and moving down
represents a negative number (the XS and YS bits in the status byte are the sign bits – a '1'
indicates a negative number). The magnitude of the X and Y numbers represent the rate of mouse
movement: the larger the number, the faster the mouse is moving (the XV and YV bits in the
status byte are movement overflow indicators – a '1' means overflow has occurred). If the mouse
moves continuously, the 33-bit transmissions are repeated every 50ms or so. The L and R fields
in the status byte indicate Left and Right button presses (a '1' indicates the button is being
pressed).
Figure 7.
Mouse Data Format
The microcontroller also supports Microsoft
®
IntelliMouse
®
-type extensions for reporting back
a third axis representing the mouse wheel, as shown in Table 9.
Table 9.
Microsoft Intellimouse Type Extensions, Commands, and Actions
Command
Action
EA
Set stream mode. The mouse responds with “acknowledge”
(0xFA) then resets its movement counters and enters stream
mode.
F4
Enable data reporting. The mouse responds with
“acknowledge” (0xFA) then enables data reporting and resets
its movement counters. This command only affects behavior in
stream mode. Once issued, mouse movement will
automatically generate a data packet.
F5
Disable data reporting. The mouse responds with
“acknowledge” (0xFA) then disables data reporting and resets
its movement counters.