Each high and each low on the clock signal would last roughly 40 microseconds and our interrupt service routine which was supposed to trigger every time the clock went from high to low tended to miss or skip several signals at a time. YV and XV are overflow flags for the motion in Y and X directions respectively where 0 means negative motion and 1 means positive motion. Repeat steps indefinitely. The code, circuit diagram, and notes about the interface are included. The mouse’s XY coordinates will be displayed on an LCD screen and will be updated when the mouse moves. Our code shown further down attempts to display X and Y coordinate motion of an optical mouse by doing the following: So if the PIC wants to send data to the mouse, data will equal output D inverted, and Clock will equal output C inverted.
|Date Added:||16 December 2009|
|File Size:||48.53 Mb|
|Operating Systems:||Windows NT/2000/XP/2003/2003/7/8/10 MacOS 10/X|
|Price:||Free* [*Free Regsitration Required]|
Our code shown further down attempts to display X and Y coordinate motion of an optical mouse lyx doing the following: This data transmission takes place based on the clock signal generated by the external device.
Interfacing with a mouse
More information on the mouse interface may be found at the following links: Personal tools Log in. Set Data low 4. The frames are made up of: Content may change as the project progresses.
Input Data bit into a 33 member array Set Clock low 2. Interpret the direction bits explained in the Mouse Interface section Setting Data low and Clock high is the host requesting to send command, and this should cause the mouse to oynx generating clock signals and to wait for commands from the host 5.
The mouse also generates its own clock signal. This is a visual representation of a byte of information being sent from the mouse to the host:. Wait for clock lynxx go low The clock and data lines connect directly to the clock and data lines of the breadboard adapter.
Interpret the X and Y motion bytes Optical mice with wheels and additional mousse generally send a fourth data packet, but for this lab, that data was not needed.
The mouse’s XY coordinates will be displayed on an LCD screen and will be updated when the mouse moves. Documentation and ordering information for the adapter can be found here: Wait for clock to go k9 represents beginning of a clock input wave from mouse 6.
Qtronix iOne Lynx M9 3-Button Optical Mouse – Black
X0-X7 and Y0-Y7 are ioen outputs of 0 towhich represent how far the mouse has moved in its respective directions since the last sample the least significant digit is on the right. We also found that the buffers were unnecessary.
The mouse clock signal is essentially a More about this can be found in the PS2 protocol section. When the clock is set low, the host will wait us before reading the data stream. Mkuse lines are specified as DATA and Clock and allow for host-to-device transmission and device-to-host transmission.
Basically, the microcontroller needs to be able to have two way communication with the mouse. Wait at least microseconds 3.
In order to operate, the mouse needs power, so the 5v and ground are used to power the mouse. Repeat steps indefinitely.
More information about LCDs and the flex code we used can be found here: YV and XV are overflow flags for the motion ioe Y and X directions respectively where 0 means negative motion and 1 means positive motion. After a ionf deal of troubleshooting, we have come to the conclusion that our interrupt service routine algorithm or microcontroller is simply not fast enough to receive and send data in time with clock signal generated by the mouse.
R is for the right button and L is for the left button where 1 equals pressed and 0 equal unpressed. Retrieved from ” http: Release Clock Default is high on an open collector.