background image

3

Figure 2.  CY7C63743-PXC –ADNS-3080 Optical Mouse Hardware Block Diagram.

Serial Peripheral Interface (SPI)

The CY7C63743-PXC provides a SPI compatible interface. 
The SPI circuit supports byte serial transfer in either 
Master or Slave mode. The integrated SPI circuit allows 
the CY7C63743-PXC to communicate with an external 
SPI compatible hardware, in this case the ADNS-3080 
sensor.

Hardware Implementation

The standard hardware to implement a mouse is shown 
in Figure 2. For X and Y movement, the optical mouse 
sensor is used. The Z wheel movement is  detected by 
another set of optical encoder that outputs quadrature 
signals. For each button there is a switch that is pulled up 
internally by the built-in in pull up resistors. The D-line is 
pulled up via a 1.3k ohm resistor connected to the VREG 
pin.

Firmware Confi gurable GPIO

The reference fi rmware is confi gured to use the GPIO pins 
as shown in the schematic under Appendix A. However, it 
may be more optimal to use a diff erent I/O confi guration 
to meet the mechanical constraints of PCB design. The 
reference fi rmware is designed to be easily confi gured 
to another set of pin connections. This is accomplished 
through changes in the I/O defi nitions at the beginning 

of the adns- 3080.asm listing. The following statements 
are the pin defi nitions as they exist today. The fi rmware 
will use these defi nitions to read and confi gure the GPIO 
pins, without any other modifi cations. 

Communications between the CY7C63743-PXC and the 
ADNS-3080 are done through the integrated SPI inter-
face. The serial port cannot be activated while the chip 
is in power down mode (NPD low) or reset (RESET high). 
When the SPI is enabled thru P0.4 (NCS), P0.7 (SCLK), 
P0.6 (MISO), and P0.5 (MOSI) GPIO pins serve as special 
functions enabling the SPI interface to talk with the ex-
ternal hardware. (Sensor) During normal operation, the 
CY7C63743-PXC SPI is always confi gured as a Master to 
output the serial clock on P0.7. So, the USB microcon-
troller always initiates communication. Data sent by the 
ADNS-3080 optical sensor is received on the P0.6 (MISO), 
and data is shifted out to the same sensor through P0.5 
(MOSI). See schematic in Appendix A. When writing to 
the ADNS-3080, the microcontroller drives both SCLK 
and MOSI lines. When reading from the ADNS-3080, the 
microcontroller drives both SCLK and MOSI lines initially. 
After tSRAD delay, the ADNS-3080 will drive the data via 
MISO. The microcontroller is only driving the SCLK line ( 
for the serial interface).

Avago

ADNS-3080

Optical Mouse Sensor

Wheel Button

Right Button

Z Optics

Cypress 

CY7C63743A-PC 

enCoRe 

USB Controller

USB/PS2 Interface

MISO

MOSI

SCLK

NCS

D+/D-

SCLK/SDATA

VREG

1.3 k Ohm

Left Button

Z LED

Summary of Contents for ADNK-3083

Page 1: ...load a full array of pixel values from a single frame To learn more about sensor s technical information please visit the Avago web site at http www semiconductor Avago com Introduction This design gu...

Page 2: ...D and Optical Encoder combination Mouse Buttons Mouse buttons are connected as standard switches These switches are pulled up by the pull up resistors inside the microcontroller When the user presses...

Page 3: ...0 asm listing The following statements are the pin definitions as they exist today The firmware will use these definitions to read and configure the GPIO pins without any other modifications Communica...

Page 4: ...in Figure 3 below ADNK 3083 Designer s Kit Optical Mouse The ADNK 3083 optical mouse unit allows users to evaluate the performance of the Avago s Optical Tracking Engine sensor lens LED assembly clip...

Page 5: ...r IGES drawing Sensor Lens Object Surface 2 40 0 094 To Disassemble the ADNK 3083 Unit The ADNK 3083 comprises of the plastic mouse casing printed circuit board PCB lens buttons and USB cable See Figu...

Page 6: ...lopment Kit and the CY3654 P05 Personality Board Programming support and programmer adaptors for the Cypress CY7C63743 PXC can be found through Cypress CY3649 xxxV CY3083 SC28 CY3083 08 or through mos...

Page 7: ...c product Note 3 MaxPower value should be changed as per specific circuit s current draw 4 Post Enumeration Operation Once communication between the host and mouse is established the mouse now has the...

Page 8: ...D sampled high disable the USB connect resistor and Delay 100 S If D and D are both 0 detect a USB interface else detect a PS2 interface SPIInit This routine is called in the try_download to enable t...

Page 9: ...ep0InReceived This routine is entered whenever an IN packet is received on endpoint 0 ep0OutReceived This routine is entered whenever an OUT packet is received on endpoint 0 setDeviceConfiguration Thi...

Page 10: ...l Map DualMain GetMouseType USB Main PS2 Interface System Initialization USB Initialization USBTaskLoop ProcessButtons ProcessOptics ReadMotionReg ReadDeltaX ReadDeltaY Read ZWheel Load new mouse pack...

Page 11: ...mand from the host The PS 2 mode is then set to remote mode PS2SetWrapMode This routine is called in response to a SET WRAP MODE command from the host It then sets the mouse mode to wrap mode See the...

Page 12: ...es and jumps to usbMain for the USB initialization Dual1msTimer This ISR reads the current status of the buttons Therefore every one millisecond the button state is updated the button status informati...

Page 13: ...sePacket HostRequestToSend PS2Receive GetBit send0 ReadMotionReg PS2SendResponseByte PS2Send Send_1 Send_0 ResetInterval PS2SetScaling SetWrapMode SetDefault PS2StatusRequest SetRemoteMode CheckWheel...

Page 14: ...ons L M QA QB Vcc GND V DD 19 16 GND 1K REFB 14 P0 3 7 NPD 4 P0 7 3 SCLK 21 P0 6 2 MISO 22 9 GUARD NC NC 11 18 20 P1 1 R 20 K 20 K 1 NCS LP2950ACZ 3 3 3 1 2 Vo Vin GND 4 7 F 0 1 F 0 1 F MMBT2222A 13 R...

Page 15: ...S 1 R16 Chip resistor 20K 1 0805_CUS 2 R8 R10 Chip resistor 240R 1 0805_CUS 1 R4 Resonator 24MHz XTAL4 1 X1 Transistor 2N2222 TO92C 1 Q3 Ceramic cap 2 2uF 16V 1206 1 C5 Tant cap 4 7uF 16V 1206 2 C2 C4...

Page 16: ...16 Figure C1 PCB Schematic Bottom Layer Figure C2 PCB Schematic Top Overlay Appendix C PCB Layout HLMP EG3E Figure C3 PCB Schematic Bottom Overlay...

Page 17: ...tional view of PCB assembly highlighting all optical mouse components optical mouse sensor clip lens LED PCB and base plate Clip LED PCB Sensor Lens Light Pipe Surface Base Plate Appendix D Base Plate...

Page 18: ...e Command Action 0xFF Reset Resets mouse to default states 0xFE Resend Resends last data to host 0xF6 Set Default Sets mouse to use default parameters 0xF5 Disable Disables the mouse 0xF4 Enable Enabl...

Page 19: ...dicate that this is a Microsoft compatible three button wheel mouse the wheel report format is enabled After this initialization sequence the PS 2 wheel reporting format is enabled The fourth byte rep...

Page 20: ...ADNS 2220 001 Assembly Clip Data Sheet d HLMP EG3E xxxxx Red LED Data Sheet Hardware Support Files a ADNK 3083 BOM List b ADNK 3083 Schematic c 3D Model IGES Files d Gerber File Software Support Files...

Reviews: