Download presentation
Presentation is loading. Please wait.
1
Final Presentation Ka Hing Chan EE 396 Project December 8, 2006 Archimedes USB – iTASK Part 1
2
Overview Microprocessor USB Client PC USB HOST HUB Keyboard USB Client PC Archimedes Mouse Head Tracker Speech Recognizer
3
Goals Need: Disabled People Standard PC and Macs Most solutions are clumsy and only work with particular software and hardware Archimedes
4
Goals Solution: Trick the PC by making alternative keyboard and mouse devices look exactly like a standard keyboard and mouse Archimedes
5
Goals Requires: Translation of alternative such as speech recognition and head or eye trackers into keyboard and mouse packets that feed in through USB port as a standard human interface device (HID) messages Archimedes
6
Constraints All of the user interface processing is done outside of the target PC The solution must be totally portable Low Power Consumption Mustn’t become obsolete Must be virus proof Design must run forever Archimedes
7
Constraints Archimedes Complete Design of iTASK requires three USB interfaces The microprocessor also has to do real time Natural Interactor Processing Estimate of coding cost was in order of $20,000
8
Constraints Archimedes Solution: Off load USB processing to dedicated hardware and fireware iTASK uses 3 MAX3421E chips and an ARM7 microprocessor The microprocessor has minimal overhead for managing the USB spent most of its time doing NIP
9
Progress Archimedes Learning how to use/program USB interface chips uses miniature surface mount Lots of research into how to do surface mount systems without expensive equipment
10
Progress Archimedes Several Options: Hand soldering under microscope Hot air gun Temperature controlled toaster oven Skillet Applying solder paste
11
Main Goal Concentration is only on getting the microprocessor and the USB to communicate with the PC. Microprocessor USBPC Archimedes
12
Design - Circuit Archimedes
13
MAX3421E - Diagram Archimedes
14
ET-ARM7 STAMP Archimedes
15
Design USB Peripheral/Host Controller with 26MHz SPI Interface Complies with USB Specification Revision 2.0 Interrupt Output Pin Allows Polled Interrupt-Driven SPI Interface Archimedes
16
Design Archimedes MicroprocessorUSB P0.3 PC P0.4 P0.5 P0.6 P0.7 Interrupt SCK0 MISO0 MOSI0 SSEL0
17
MAXIM MAX3421E PINS Archimedes PINNAMEINPUT/OUTPUTFUNCTION 1GPIN7Input 2VLInputConnect to 1.4V to 3.6V logic-level power 3, 19GNDInputGround 4 to 11GPOUT0-9Output 12RESInputDevice Reset 13SCLKInputSPI Serial-Clock Input 14SSInput 15MISOOutputSPI Serial-Data Output 16MOSIInput or OutputSPI Serial-Data Input 20D-Input/OutputUSB D- Signal 21D+Input/OutputUSB D+ Signal 23VccInputConnects to a positive 3.3V 26 to 32GPIN0-6Input
18
MAX3421E SPI COMMAND SPI Command Byte B7B6B5B4B3B2B1B0 Reg4Reg3Reg2Reg1Reg00DIRACKSTAT* STATUS BITS (PERIPHERAL MODE) B7B6B5B4B3B2B1B0 SUSP IRQ URES IRQ SUDAVI RQ IN3BAV IRQ IN2BAVIR Q OUT1DAVI RQ OUT0DAV IRQ IN0BAV IRQ Archimedes
19
Packet Level Archimedes
20
Programming Software KEIL C Compiler MircoVision3 V3.20a Started Using the evaluation software that came with the processor Able to download the demo program onto the processor. Archimedes
21
Coding // USB functions void std_request(void); void class_request(void); void vendor_request(void); void send_descriptor(void); void send_keystroke(BYTE); Archimedes
22
Coding void feature(BYTE); void get_status(void); void set_interface(void); void get_interface(void); void set_configuration(void); void get_configuration(void); Archimedes
23
Coding void wreg(BYTE reg,BYTE val); void wregAS(BYTE reg,BYTE val); BYTE rreg(BYTE reg); BYTE rregAS(BYTE reg); void readbytes(BYTE reg, BYTE N, BYTE *p); void writebytes(BYTE reg, BYTE N, BYTE *p); Archimedes
24
Problems Hardware or Software The parts were really small The USB B port came in small so Neil and I had to solder wires to the PCB board Archimedes
25
Outstanding Problems Doing lots of things the day before the project is due Time management was bad Either the hardware or Software Archimedes
26
Future Improments Time management Start things earlier Need teammates Order parts earlier Work on the coding more Archimedes
27
Questions? Visit my website at: http://www2.hawaii.edu/~kahing Thank You!!! USB – iTASK Part 1 Archimedes
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.