Critical Design Review
February 28, 2006
Brianna BethelRobert HavlikJessica Lowry
Alex Silva
Outline• Project Overview• Hardware Description
– Description of each unit and its schematic• Software Processes• Division of Labor• Updated Schedule• Parts and Cost
Project Overview• To create a standalone, portable, easy-
to-use system to display pictures without a computer
• Display pictures on a color LCD screen• Include user interface• Stores and retrieves pictures from Compact Flash cards
Hardware Block Diagram
Sharp MicrocontrollerLH79525
Compact Flash Card
Host Computer
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Future Revisions
Baseline
Power System• 12V DC Wall Input
– 12V supplies backlight inverter for LCD
• Regulated to 3.3 V– Supplies microcontroller
and peripherals• 1.8 V regulator in processor• Isolated analog sections• Power and Ground Planes
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Power System Schematic
Microcontroller• Features
– LCD controller– 24 bit address, 16 bit data
• Functions– Runs Software and
Embedded Linux– Controls all memory
devices and timing for LCDs
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Microcontroller Schematic
Reset and Oscillator Circuits• Two oscillators
– 11.2896 MHz– 32.768 KHz
• Reset in a box– Pushbutton reset– Power monitoring
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Reset (and Oscillator) Schematic
Hardware Memory Map
SDRAM• 256 Mbits (32 MB)• Functions
– Primary run-time application storage
– Software, Bootloader and Embedded Linux run-time environment
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
SDRAM Schematic
Buffers• Isolates SDRAM
from other memory devices
• Boosts system signal integrity
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Buffer Schematics
NOR and NAND Flash Memory• NOR
– 128 Mbit (16 MB)• NAND
– 512 Mbit (64 MB)• Large, non-volatile
memory storage• Contains bootloader• Programmed through
JTAG Wiggler (Sparkfun)
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
NOR Flash Schematic
NAND Flash Schematic
SRAM Memory
• 4 Mbits (256 kB)• Functions
– Additional storage– Frame buffer– Backup if SDRAM
is not functional
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
SRAM Schematic
Compact Flash• Large, non-volatile
storage device• Memory mode only• Sparkfun breakout
board
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Compact Flash Schematic
Serial RS-232 and IR Connectors
• RS-232– 115 kbps– Tera Term host
interface• Infrared
– Serial interface
Sharp MicrocontrollerLH79525
Compact Flash Card
SDRAM
LCD Display (STN or TFT)
Touchscreen
USB
IR Sensor and Remote
Serial Interface
User Interface Buttons
Buffers
SRAM
NOR Flash
NAND Flash
Oscillator
Power Reset
Serial RS-232 and IRConnectors Schematic
Software Block DiagramModel
(Main Functions)
View(User Interface)
Controller(Drivers)
+ProcessXYcoordinateInput() : int
«interface»TouchScreenInputHandler
+Select_Function()
«delegate»ApplicationLauncher
-ApplicationInterface
«implementation class»LCDDisplayDriver
-FrameBuffer+DisplaySettings
«implementation class»TFTLCDdriver
-FrameBuffer+DisplaySettings
«implementation class»STNLCDdriver
+RetrieveFile()+WriteFile()+GetFileNames()
«interface»FileSystem
Selects
View«interface»
DisplayMenuModifies
uses
invokesController
retrieves data from
+OpenFile()+CloseFile()
-File Data
«implementation class»MediaDriver
+start()
«delegate»Modify Picture Controller
+start()+picture_display()
«delegate»Display Picture Controller
+display()+crop()+rotate()+zoom()+retrieve()+nextImg()+previousImg()
-file name
«utility»Picture
Model
+start()+stop()+start_timer()+picture.display()+wait_for_timer()
«delegate»SlideShow Controller
+start()+stop()
-Time_To_Wait
«utility»Slideshow Timer
uses
«implementation class»TouchscreenDriver
retrieves data from
retrieves data from
Linux
invokes
View
+ProcessXYcoordinateInput() : int
«interface»TouchScreenInputHandler
+Select_Function()
«delegate»ApplicationLauncherSelects «interface»
DisplayMenuModifies
Model
+start()
«delegate»Modify Picture Controller
+start()+picture_display()
«delegate»Display Picture Controller
+display()+crop()+rotate()+zoom()+retrieve()+nextImg()+previousImg()
-file name
«utility»Picture
Model
+start()+stop()+start_timer()+picture.display()+wait_for_timer()
«delegate»SlideShow Controller
+start()+stop()
-Time_To_Wait
«utility»Slideshow Timer
uses
Controller
-ApplicationInterface
«implementation class»LCDDisplayDriver
-FrameBuffer+DisplaySettings
«implementation class»TFTLCDdriver
-FrameBuffer+DisplaySettings
«implementation class»STNLCDdriver
+RetrieveFile()+WriteFile()+GetFileNames()
«interface»FileSystem
invokesController
retrieves data from
+OpenFile()+CloseFile()
-File Data
«implementation class»MediaDriver
«implementation class»TouchscreenDriver
retrieves data from
retrieves data from
Linux
Development Environment• Programming in C• Compilation
– Compile in Arm Developer Suite (or Cygwin)
• ADS and Linux have similar code files– Color LCD panel initialization– Creates templates for custom
development
Embedded Linux• Functions
– Handles hardware initialization
– Compact Flash driver
– Allows for higher level applications
– Source code for future applications
Division of Labor Task Responsible Team
PCB Design All Embedded Linux All• Hardware Engineers Rob & Alex
– JTAG Wiggler– PCB Placement of Parts
• Software Engineers Brianna & Jessica– LCD Driver (Dev board and custom)– Display Single Picture– Timer for Slideshow
Milestone 1 : March 21• Have custom hardware running• Second revision ready for fabrication• LCD Driver
– Display still picture on LCD screen
Milestone 2 : April 18• Have slideshow program functional• User interface development
– Touchscreen• Implement possible extensions, time
permitting
Capstone Expo : May 4• Everything completed and working
Schedule
Current Progress• Microcontroller
with Linux Loaded– Includes custom
Linux kernel• Hardware Layout
and Routing Complete
• Custom PCB ready to be sent out
PCB Layout Rev 0
PCB 3D
Budget
Questions?