120 likes | 227 Views
Solar Telematics System. Software Design Narrative. Dan Ehrman Clayton Dickemann Brian Kelley Craig Lechlitner. Agenda. PSSCs Hardware block diagram External interfaces and port assignments Memory layout Software design Software block diagram Questions. PSSCs.
E N D
Solar Telematics System Software Design Narrative Dan Ehrman Clayton Dickemann Brian Kelley Craig Lechlitner
Agenda • PSSCs • Hardware block diagram • External interfaces and port assignments • Memory layout • Software design • Software block diagram • Questions
PSSCs • An ability to track vehicle location using GPS. • An ability to receive and send CAN messages from and to other systems in the car. • An ability to display graphics on the LCD display. • An ability to respond to user input from a touchscreen. • An ability to store and load data to and from non-volatile memory.
Memory Layout – Program Memory Reserved User program memory Unimplimented Reserved 0x000000 0x0001FE 0x000200 87K Instrs. 0x02ABFE 0x02AC00 0x7FFFFE 0x800000 0xFFFFFF
Memory Layout – Data Memory Special Function Registers Lower Data Space (globals, heap, and stack) Extended Data Space (globals, heap, and stack) 0x0000 2K 0x07FE 0x0800 30K 0x7FFE 0x8000 66K 0xFFFE
Memory Layout – External Memory External SRAM (2MB) Reserved memory for graphics Dynamically allocated memory 0x00100000 1,536K 0x00276FFE 0x00277000 ~561K 0x002FFFFE External flash (2GB) Images Sound FAT16
Software Design • Time sharing • Polling • Dynamic memory allocation • Coherence between microcontrollers
High level Communication (PIC32) Graphics/Audio (PIC24) Low level SD Storage Framework SD Card The Car CAN Processing Wireless Modem Telemetry Processing Application Logic Audio Processing Speaker System Communications Control Widget Framework Touch Processing LCD Data Registry (Communication) Data Registry (Graphics) Graphics Processing GPS GPS Processing