Difference between revisions of "Joystick Interface"

From RoboJackets Wiki
Jump to navigation Jump to search
m (Replaced receptacles with headers)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
[[Category:IGVC]]
 +
[[Category:2005-2006]]
 +
If you're looking for how to '''use''' the joystick see the [[Joystick]] page.
 +
 
==Parts==
 
==Parts==
  
Line 5: Line 9:
 
===Processor===
 
===Processor===
  
*[[ATTINY26-16SI-ND]] - U3 - Atmel [http://en.wikipedia.org/wiki/Avr AVR] Microcontroller  
+
*[http://www.atmel.com/dyn/products/product_card.asp?part_id=2967 ATTINY26-16SI-ND] - U3 - Atmel [http://en.wikipedia.org/wiki/Avr AVR] Microcontroller  
 
*LED2 - Green LED for use by programs running on the microcontroller
 
*LED2 - Green LED for use by programs running on the microcontroller
 
*R3 - 470 ohm resistor in series with LED2
 
*R3 - 470 ohm resistor in series with LED2
Line 13: Line 17:
 
===CAN Specific===
 
===CAN Specific===
  
*[[MCP2515]] - U2 - Microchip CAN Controller with [http://en.wikipedia.org/wiki/Serial_Peripheral_Interface SPI] Interface
+
*[http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en010406 MCP2515] - U2 - Microchip CAN Controller with [http://en.wikipedia.org/wiki/Serial_Peripheral_Interface SPI] Interface
*[[MCP2551]] - U1 - Microchip CAN TransponderP966-ND
+
*[http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en010405 MCP2551] - U1 - Microchip CAN TransponderP966-ND
 
*R1 - 10k ohm pullup resistor for the RESET command
 
*R1 - 10k ohm pullup resistor for the RESET command
 
*R6 - 10k ohm pullup resistor for the CAN chip select
 
*R6 - 10k ohm pullup resistor for the CAN chip select
Line 20: Line 24:
 
===Onboard Power Control===
 
===Onboard Power Control===
  
*[[296-12290-1-ND]] - U4 - 5V Linear Regulator
+
*[http://www.national.com/pf/LM/LM78M05.html UA78M05DCY] - U4 - 5V Linear Regulator
 
*1N4004GICT-ND - D1 - Diode
 
*1N4004GICT-ND - D1 - Diode
 
*P966-ND - C1,C2 - 10 microfarad Capacitor
 
*P966-ND - C1,C2 - 10 microfarad Capacitor

Latest revision as of 22:54, 13 June 2018

If you're looking for how to use the joystick see the Joystick page.

Parts

Part numbers listed are those of the Digi Key Corporation parts database. Note - some generic parts do not have part numbers listed.

Processor

  • ATTINY26-16SI-ND - U3 - Atmel AVR Microcontroller
  • LED2 - Green LED for use by programs running on the microcontroller
  • R3 - 470 ohm resistor in series with LED2
  • R4 - 470 ohm pullup resistor for joystick DATA
  • R5 - 470 ohm pullup resistor for joystick ACK

CAN Specific

  • MCP2515 - U2 - Microchip CAN Controller with SPI Interface
  • MCP2551 - U1 - Microchip CAN TransponderP966-ND
  • R1 - 10k ohm pullup resistor for the RESET command
  • R6 - 10k ohm pullup resistor for the CAN chip select

Onboard Power Control

  • UA78M05DCY - U4 - 5V Linear Regulator
  • 1N4004GICT-ND - D1 - Diode
  • P966-ND - C1,C2 - 10 microfarad Capacitor
  • 399-2127-ND - C3,C4,C5 - 0.1 microfarad Capacitor
  • LED1 - Red LED to indicate power activity
  • R2 - 470 ohm resistor in series with LED1

Oscillator

  • 300-7022-1-ND - U4 - 11.0592 MHZ Clock Siqnal Oscillator

Headers

  • A19423-ND - J1 - Power 2-pin header
  • A19430-ND - J2 - CAN 3-pin header
  • A19436-ND - J3 - 9 pin header to joystick
  • A19520-ND - J4 - SPI connection to the MCU, 10 pin header

Misc.

  • 377-1090-ND - Box to contain the module
  • 1892K-ND - Standoffs

Electrical

Joystick Schematic.png Joystick Board.png

Port Pin Assignments on MCU

* Port A:
* Bit	Dir	Description
* 0	I	Pad DATA
* 1	O	Pad COMMAND
* 2	O	Pad ATT
* 3	O	Pad CLOCK
* 4	I	Pad ACK
* 5		Unused
* 6		Unused
* 7	O	Status LED

* Port B:
* Bit	Dir	Description
* 0	I	SPI data input, with pull-up
* 1	O	SPI data output
* 2	O	SPI clock
* 3	O	CAN /CS
* 4	I	Clock, not usable as I/O
* 5		Unused
* 6	I	CAN INT
* 7	I	/RESET, not usable as I/O
	

Code

C Source Files

  • can.c - communicates with the CAN controller, pretty much the same for all modules
  • joystick.c - code that controls the joystick's inputs
  • Makefile - programmer created file for configuring the compilation for gcc
  • psx.c - code that interfaces with the psx controller
  • spi_usi - hardware based spi