Upload
virginia-jefferson
View
217
Download
4
Tags:
Embed Size (px)
Citation preview
ECE 477 Design Review ECE 477 Design Review Team 09 Team 09 Spring 2010 Spring 2010
LukeEthan
Andy
Dhruv
OutlineOutline• Project overview Project overview • Project-specific success criteriaProject-specific success criteria• Block diagramBlock diagram• Component selection rationaleComponent selection rationale• Packaging designPackaging design• Schematic and theory of operationSchematic and theory of operation• PCB layoutPCB layout• Software design/development statusSoftware design/development status• Project completion timelineProject completion timeline• Questions / discussionQuestions / discussion
Project OverviewProject Overview
The Huge Universal Language Keyboard (HULK) is a keyboard whose keys can be dynamically changed to display several different languages’ characters.
Main Features:• Loads languages from SD card • Touch-screen to select language• Displays languages’ characters on an internal VGA
monitor• Uses physical keys with tactile feedback• PS/2 interface to host PC
Project-Specific Success CriteriaProject-Specific Success Criteria
• An ability to display a languages’ characters as a keyboard layout on an LCD screen.
• An ability to change the language displayed on the keyboard by selecting a new language on a touch-screen menu.
• An ability to receive and decode a key press as a meaningful character.
• An ability to send and display a language’s characters on a host PC through a PS/2 interface.
• An ability to load languages from an SD card.
Block DiagramBlock Diagram
Motherboard PCB
Keyboard PCB
61
61 Keyboard
Keys
61 Pull-Up Resistors
61
8 8-bit Shift Registers
SPI
3
Micro
SPI
Host PC
data clk
PS/2
Touchscreen
SD Card Reader
SPI
4
Dual-Port SRAM
32
25MHz Oscillator
8-bit Shift Register
Horizontal Sync PLD
Vertical Sync PLD
Shift Enable
8R
G
B
HS
VS
VG
A C
onne
ctor
SPI4
16
Component Selection RationaleComponent Selection Rationale
• Microcontroller - PIC32MX360F512LMicrocontroller - PIC32MX360F512L– 85 GPIO pins, 4 SPI, 512K Flash85 GPIO pins, 4 SPI, 512K Flash– MIPS coreMIPS core– Development board available in labDevelopment board available in lab
• Touch Screen – LCD-010Touch Screen – LCD-010– Physical sizePhysical size– Touch screen and LCD all-in-one packageTouch screen and LCD all-in-one package– Good sample code availableGood sample code available
Component Selection Rationale
• 1 Mbit SRAM – CY7C09099V-6AXC1 Mbit SRAM – CY7C09099V-6AXC– Dual portDual port– Big enough for bitmap filesBig enough for bitmap files– Fast enough for VGA videoFast enough for VGA video– Internal address burst counterInternal address burst counter
• Programmable Logic Devices – GAL26CV12BProgrammable Logic Devices – GAL26CV12B
– Number of macrocellsNumber of macrocells– Availability of parts/programmersAvailability of parts/programmers– Fast enough for VGA videoFast enough for VGA video
Packaging DesignPackaging Design
Packaging Design
• 2 PCBs (Motherboard and Keyboard)– 5 wire connector between them– VGA connection from motherboard to monitor
• Keyboard sits directly on top of VGA monitor• Keys are clear plastic pieces sitting on SMT
pushbuttons• Thickness of internal monitor determines
thickness of overall package• All contained in manufactured box (if available);
else homemade balsa wood box
Motherboard Schematic: MCU
Motherboard Schematic: Touch-screen
Motherboard Schematic: SD Card Reader
Motherboard Schematic: VGA Circuitry
Keyboard Schematic
Power SchematicPower Schematic
Theory of Operation
Motherboard PCB
Keyboard PCB
61
61 Keyboard
Keys
61 Pull-Up Resistors
61
8 8-bit Shift Registers
SPI
3
Micro
SPI
Host PC
data clk
PS/2
Touchscreen
SD Card Reader
SPI
4
Dual-Port SRAM
32
25MHz Oscillator
8-bit Shift Register
Horizontal Sync PLD
Vertical Sync PLD
Shift Enable
8R
G
B
HS
VS
VG
A C
onne
ctor
SPI4
16
Theory of Operation – Touch-screen
5 V
5 V
CLKTC_CSMISO
MOSI
Bidirectional Data Bus
Back Light
RS
RDWR
Busy
LCD_CS
Reset
Pen
Theory of Operation - VGA
Micro
A0-A16
ADS
CE0-CE1
CNTEN
CNTRST
I/O0-I/O7
OE
R/W
FT/PIPE
Vcc
17
2
8
A0-A16
ADS
CE0-CE1
CNTEN
CNTRST
I/O0-I/O7
OE
R/W
FT/PIPE Vcc
2
17
8
VS PLD
CLK
CLK HS PLD
VS_Out
HS_Out
CNTRST
SR
AM
25.175MHz Oscillator
External Clock
HS_In
read_byte
Shift Register VG
A C
onnector
0
1
2
14
13
CLK
shift_enable
CLK
shift_enable
PCB Layout - MotherboardPCB Layout - Motherboard
PCB Layout - Keyboard
127
.00
260.00
13.
00
RP
SR
SR
SR
SR
SR
SR
SR
SR
SR
SR
RP
RP
RP
RP
305.00
11.
00
17.00 2.00
6.50
10.
00 10.
00
6.50
11.00
11.00
10.00
2.0
0
Q W E R T Y U I O P [ ] \
1 2 3 4 5 6 7 8 Backspace9 0 - =
A S D F G H J K L ; ‘ EnterCaps
Z X C V B N M , . / ShiftShift
Space AltAlt~Ctrl
Tab
PCB Layout - Keyboard
Software Design/Development StatusSoftware Design/Development Status
• Boot-UpBoot-Up– Load data from SD card to MCU flashLoad data from SD card to MCU flash– Write default language to SRAMWrite default language to SRAM– Set burst counter start addressSet burst counter start address– Write touch-screen image informationWrite touch-screen image information
• Normal OperationNormal Operation– Key presses and touch-screen touches generate Key presses and touch-screen touches generate
interruptsinterrupts– VGA circuitry runs without interruption unless a VGA circuitry runs without interruption unless a
new language is selectednew language is selected
Project Completion TimelineProject Completion Timeline
• Week 8 - Schematics and PCBs FinalizedWeek 8 - Schematics and PCBs Finalized• Week 9 - PLDs programmed / VGA circuit testedWeek 9 - PLDs programmed / VGA circuit tested• Week 10 – Touch screen fully tested and functionalWeek 10 – Touch screen fully tested and functional• Week 11 – Key decoding and SD card programmingWeek 11 – Key decoding and SD card programming• Week 12 – PS/2 and host PC interfaceWeek 12 – PS/2 and host PC interface• Week 13 – Keyboard PCB with keys assembledWeek 13 – Keyboard PCB with keys assembled• Week 14 - Packaging finishedWeek 14 - Packaging finished• Week 15 - Paperwork and final reportWeek 15 - Paperwork and final report• Week 16 - DemonstrationWeek 16 - Demonstration
Questions / DiscussionQuestions / Discussion