Difference between revisions of "Joystick Interface"

From RoboJackets Wiki
Jump to navigation Jump to search
m (recategorizing)
 
Line 1: Line 1:
 +
[[Category:IGVC]]
 +
[[Category:2005-2006]]
 
If you're looking for how to '''use''' the joystick see the [[Joystick]] page.
 
If you're looking for how to '''use''' the joystick see the [[Joystick]] page.
  
Line 88: Line 90:
  
 
*spi_usi - hardware based spi
 
*spi_usi - hardware based spi
 
[[Category:IGVC|IGVC]][[Category:Year: 2005-2006|Year:_2005-2006]][[Category:Electrical|Electrical]][[Category:Software|Software]]
 

Latest revision as of 21: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