2 Lines Electronics I 2 C Analyzer Ching-Yen Beh Robert S. Stookey Advisor: Dr. J. W. Bruce
I2C Background Serial data transfer protocol Serial data transfer protocol Developed in 1992 by Phillips semiconductor Developed in 1992 by Phillips semiconductor
I2C ? Digital Peripheral Communications Digital Peripheral Communications –2 bi-directional bus lines –Conserves I/O pins on controller Data Transfer Data Transfer –Addresses a slave listener –Encoded into 8-bit bytes
User Problems Debug Complexity Debug Complexity Equipment Costs Equipment Costs
User Problems Figure represents I 2 C data SDA SDA SCL SCL Start Stop Signal Signal Data byte (F1)
Solution Decodes Data Decodes Data –Hexadecimal Wave Form –Individual Address Shown Cost Cost –Roughly $65.00
What is inside our device Ubicom SX52 Micro controller Ubicom SX52 Micro controller –Analyze data transferred from the I 2 C bus, and store them into memory. 256 x 128 Hyundai LCD Module 256 x 128 Hyundai LCD Module –Display the analyzed data in waveform 3 leads 3 leads –Get signals from I 2 C bus line. –Ground loop. 4 S.P.S.T pushbuttons 4 S.P.S.T pushbuttons –Control the Menu/Display setting 1 rotary encoder 1 rotary encoder –Change the setting value
Ubicom SX52 MCU 40 I/O pins 40 I/O pins 4K Words programming space 4K Words programming space 262 Bytes RAM 262 Bytes RAM Voltage Range 3.0 – 5.5 V Voltage Range 3.0 – 5.5 V Operating Temperature 0ْC + 70ْC Operating Temperature 0ْC + 70ْC Program in Assembly Language Program in Assembly Language
Hyundai LCD Module Viewing area: 5" x 2.75". Viewing area: 5" x 2.75". 256 x 128 pixel. 256 x 128 pixel. STN gray positive type display. STN gray positive type display. 5 Vdc logic. 5 Vdc logic. 18 Vdc LCD drive voltage. 18 Vdc LCD drive voltage. Physical area 5.8" x 4.58“ Physical area 5.8" x 4.58“
Pushbuttons and Rotary Encoder Pushbuttons Pushbuttons –S.P.S.T –Normally Open Rotary Encoder Rotary Encoder –Grayhill Series 25L –36 Position –3 Pin PCB Mount
Block Diagram Ubicom SX52 LCD Module 12 SDASCL Push Button 1 Push Button 2 Push Button 3 Push Button 4 2 Rotary Encoder
Design Specification Performances Performances –I 2 C Mode Support 100K bps in Standard Mode 100K bps in Standard Mode 400K bps in Fast Mode 400K bps in Fast Mode –Show data in waveform –Store 128 bytes of sniffed data for best case and 64 bytes of sniffed data for worse case. Physical appearance Physical appearance –Handheld Device (approx. 6” x 6” x 2” ). –Not more than 3.5 lbs.
Design Specification (cont) User Interface and Options User Interface and Options –GUI menu –Data filtering –Start byte –Waveform
Design Specification (cont) GUI Menu Interface
Design Specification (cont) Master and Slave Data Waveforms
Design Specification (cont) Power consumption Power consumption –Three 9V batteries. –4 Hours Operation
Design Parts List Economics Economics –Ubicom SX52 - $ 7.32 –50MHz Crystal - $ 1.66 –LCD Module - $ –Rotary Encoder - $ 3.26 –4 Pushbuttons - $ 1.50 –3 Test leads - $ 1.00 batteries - $ 6.50 –Chassis - $ –Labor - $ –Machinery operating cost - $ 5.00 Manufacturing Cost <$65 Manufacturing Cost <$65
Design Consideration Manufacturability Manufacturability –Our device can be easily mass produced for a cheap cost. –Simple circuit requires less machining time.
Design Consideration Health and Safety Health and Safety –Our device is operated by batteries and contains sharp leads. Therefore, it’s not advisable for kids below 6. Legal Legal –Applicable FCC rules and regulation.
Implementation Hardware Hardware –Breadboard circuit development –PCB prototype Software Software –2 Main Threads I 2 C, Button, and Rotary (Background) I 2 C, Button, and Rotary (Background) Data management (Background) Data management (Background) Flag processing (Foreground) Flag processing (Foreground) LCD communication (Foreground) LCD communication (Foreground)
Power On Processor/LCD Initialization Main Flag Processing LCD Refresh Software Foreground Loop
Software Background Loop ISR ISRSate = 1 I2C Buss Monitoring ISR ISRSate = 2 Push Button ISR Rotary ISR End Yes No
Minimum Requirements Read and Decode data Read and Decode data Works with standard and fast mode Works with standard and fast mode Display data on LCD screen Display data on LCD screen Hand-held battery operation Hand-held battery operation
Timeline DateTaskDuration (days) Jan 7 – Jan 13Research & Looking for parts7 Jan 14 – Jan 17 Start simple coding on Ubicom SX28 while waiting for the SX52 Chip to arrive. 4 Jan 18Hardware hook-up for Ubicom SX52, Rotary Encoder, and Buttons 1 Jan 19 – Jan 25 Coding - Able to read the signal from SCL, SDA and process it into byte form 7 Jan 26 – Jan 29 Hardware hook-up of LCD and MCU on prototype board 4 Jan 30 – Feb 5Coding for LCD drawing7
Timeline (cont) DateTaskDuration (days) Feb 6 – Feb 14More coding for I2C9 Feb 15 – Feb 21 Coding - Combine LCD and I2C7 Feb 22 – Feb 23 Coding on LCD Display Layout and User Selection Function 2 Feb 24 – Feb 25 Prepare for Critical Design Review Presentation2 Feb 26Critical Design Review Presentation1 Feb 27 – March 2 More coding on LCD Display Layout and User Selection Function 4 March 3 – March 16 Coding Displaying data on LCD14
Timeline (cont) DateTaskDuration (days) March 17 – March 23 Final coding7 March 24 – March 30 Testing7 March 31 -April 8Bugs and Problems9 April 9 – April 18Packaging10 April 19 – April 22Documentation4 April 23 – April 24Prepare for Final Presentation2 April 25Final Presentation1
Design Problems LCD requirements are high LCD requirements are high –-18 volt to drive LCD –Takes two 9-volt batteries Processor Requirements Processor Requirements –High power consumption at 50 Mhz. SX Programmer SX Programmer –Heats up!!
Possible Solutions D/C Converter D/C Converter –Battery input –Dual Output (logic and LCD drive) LCD LCD –5-volt drive voltage Processor Processor –Slower clock speed (30 Mhz)
Device Testing Microprocessors II class project Microprocessors II class project –Multiple I 2 C devices –All different data lengths Data Bus Speeds Data Bus Speeds –100 and 400 kbits/second Power Consumption Power Consumption –Battery life
Questions?
References –I2C Specification –Controller and software information –LCD manual and specification