NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse....

162
Interface Solutions I 2 C-bus 30 July, 2008

Transcript of NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse....

Page 1: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

Interface SolutionsI2C-bus

30 July, 2008

Page 2: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

2

I2C - Contents

I2C protocol

I2C functions

I2C bus enablers

I2C demo boards

I2C support information

Page 3: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

3

I2C - ProtocolIIC - Inter-Integrated Circuit

I2C-bus developed in the late 1970’s for Philips consumer products (e.g. TVs)

Worldwide industry standard and used by all major IC manufacturers

This means:• Decreased number of wires (reduced PCB area)• Reduced number of chip pins• Remove glue logic• Clip many devices on to the bus• Modular design: Time-to-Market

VCC

Logic

I2C-bus

Invented by NXP!(Philips Semiconductors)

Page 4: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

4

I2C - ProtocolHardware architecture

2 wire bus: – SDA: Serial Data Line– SCL: Serial Clock Line

Open-drain or open-collector output stages: wired-AND function

VDD

Pull up resistors

SDA

SCL

Data out

Data in

Clock out

Clock in

Device 1

Data out

Data in

Clock out

Clock in

Device 2

Page 5: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

5

I2C - ProtocolHardware architecture (2)

Multiple master

Multiple slave

Bi-directional– Master-transmitter– Master-receiver– Slave-transmitter– Slave-receiver

Data collision is taken care off

Master1 Slave1

Master2 Slave2

VDD

SDASCL

Page 6: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

6

I2C - ProtocolAddressing / device selection

Each device is addressed individually by softwareNew devices or functions can be easily “clipped" on to an existing bus!112 different addresses max with the 7-bit format (others reserved); additional 1024 with 10-bit formatAddress allocation coordinated by the I2C-bus committeeProgrammable pins means that several of the same devices can share the same busUnique address per device: fully fixed or with a programmable part through hardware pin's)10-bit format use a 2 byte message: 1111 0A9A8R/W + A7A6A5A4A3A2A1A0

Master1 Slave1

VDD

VDD 0 0 1 1 1 0 0

Fixed

Hardware Programmable

Address register

SDASCL

A6 A5 A4 A3 A2 A1 A0

Page 7: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

7

I2C - ProtocolCommunication

Communication must start with: START conditionStart bit is always followed by slave addressSlave address is followed by a READ or NOT-WRITE bitThe receiving device (either master or slave) must send an ACKNOWLEDGE bitCommunication must start with: STOP condition

START SLAVEADDRESS[7] R/W ACK DATA[8] ACK

START SLAVEADDRESS[7] 0 ACK DATA[8] ACK STOP

Transmit (0 = Write)

DATA[8] ACK

START SLAVEADDRESS[7] 1 ACK DATA[8] ACK STOP

Receive (1 = Read)

DATA[8] ACK

Master

Slave

STOP

Master or Slave

Example:

Page 8: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

8

I2C - ProtocolSTART & STOP conditions

Start condition - a HIGH to LOW transition on the SDA line while SCL is HIGH

Stop condition - a LOW to HIGH transition on the SDA line while SCL is HIGH

Page 9: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

9

I2C - ProtocolBit transfer

During data transfer, SDA must be stable when SCL is High

Page 10: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

10

Each byte has to be followed by an acknowledge bit

Number of data bytes transmitted per transfer is unrestricted

If a slave can’t receive or transmit another complete byte of data, it can hold the clock line SCL LOW (clock stretching) to force the master into a wait state

I2C - ProtocolData transfer

Page 11: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

11

I2C - ProtocolAcknowledge / NOT-Acknowledge

I2C specification: Data transfer with acknowledge is obligatory. The receiver must pull down the SDA line during the acknowledge clock pulse so that it remains stable LOW during the HIGH period of this clock pulse.

Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH):1. A receiver with the address is not present in the I2C bus.2. The receiver is performing real-time tasks and it cannot process the received I2C

information.3. The receiver is the master and wants to take control of SDA line again in order to

generate a STOP command. The slave transmitter MUST then release the SDA line when it sees the NACK so the master can send the STOP command.

Page 12: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

12

I2C - ProtocolArbitration procedure

Two or more masters may generate a START condition at the same time

Arbitration is done on SDA while SCL is HIGH -Slaves are not involved

VDD

SDA

DATA1

SDA

Master 1

DATA2

SDA

Master 2

Summary: The master that first sends a “1” while the other sends a “0” loses control (arbitration)

Page 13: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

13

I2C - ProtocolClock synchronization during the arbitration procedure

VDD

SCL

CLK1

SCL

Master 1

CLK2

SCL

Master 2

Internal counters of masters count the LOW and HIGH times (TL1, TH1) and (TL2, TH2)

Wired-AND SCL connection:TL= longest TL= max (TL1, TL2 ,TLn)TH= shortest TH= min (TH1, TH2,THn)

TL TH

TL1 TH1

TL2 TH2

Page 14: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

14

Standard Mode Fast Mode Fast Mode Plus (FM+)

Bitrate (kBit/s) 0 – 100 0 – 400 0 – 1000 0 – 1700 0 – 3400

Address (bits) 7 (10) 7 (10) 7 (10) 7 (10) 7 (10)

Capacitive Bus Load (pF) 400 400 550 400 100

Sink current (mA) 3 3 20 3 3

High Speed Mode

I2C - ProtocolModes

Fast mode Plus (FM+):– Increased bandwidth– Increased transmission distance (at reduced bandwidth: >> 550 pF bus load)

Page 15: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

15

Standard Mode Fast Mode Fast Mode Plus (FM+)

Bitrate (kBit/s) 0 – 100 0 – 400 0 – 1000 0 – 1700 0 – 3400

Address (bits) 7 (10) 7 (10) 7 (10) 7 (10) 7 (10)

Capacitive Bus Load (pF) 400 400 4000 400 100

Sink current (mA) 3 3 20 3 3

Trise: Rise time (ns) 1000 300 120 160 80

High Speed Mode

I2C - ProtocolModes: Electrical specification

t (s)

Vbus(V)

trise

VIH

VILVOL

0.7 * VDD

0.3 * VDD

0.4 V @ 3 mA sink current0.4 V @ 20 mA sink current (FM+)

gnd

Vcc

t1 t2

Page 16: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

16

I2C - ProtocolElectrical: VDD / How to calculate the pull-up resistor values

VDDvoltage can be chosen freely

Pull-up resistor value:– Minimum resistor value:

• Determined by the I²C spec limit of 3 mA sinking current• R = (VDDmax– Volmax)/ 0.003A• Example: using a VDD = 5 ± 0.5 V: Rpull-up = (5.5 V – 0.4 V) / 0.003 A = 1.7 kΩ

– Maximum resistor value:• Determined by the I²C-bus rise time requirements:

V(t1) = 0.3 * VDD = VDD (1 – 1/et1/RC); then t1 = 0.3566749 * RCV(t2) = 0.7 * VDD = VDD (1 – 1/et2/RC); then t2 = 1.2039729 * RC

t = t2 – t1 = 0.8472979 * RC• For standard-mode I²C-bus: trise = 1000 ns (1 μs)

so RC = 1180.2 ns• Example: at a bus load of 400 pF: Rmax= 2.95 kΩ• For Fast-Mode: I²C-bus rise time = 300 ns @ 400 pF: Rmax= 885 Ω

Page 17: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

17

I2C - ProtocolSummary

START HIGH to LOW transition on SDA while SCL is HIGH

STOP LOW to HIGH transition on SDA while SCL is HIGH

DATA

8-bit word, MSB first (Address, Control, Data):- Must be stable when SCL is HIGH- Can change only when SCL is LOW- Number of bytes transmitted is unrestricted

ACKNOWLEDGE- Done on each 9th clock pulse during the HIGH period- The transmitter releases the bus - SDA goes HIGH- The receiver pulls DOWN the bus line - SDA goes LOW

CLOCK

- Generated by the Master(s)- Maximum speed: (100, 400, 1000, 3400 kHz) but NO min- A receiver can hold SCL low when performing another function (transmitter in a Wait state)- A master can slow down the clock for slow devices

ARBITRATION

- Master can start a transfer only if the bus is free- Several masters can start a transfer at the same time- Arbitration is done on SDA line- Master that lost the arbitration must stop sending data

Page 18: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

18

I2C - ProtocolDemoboard I2C 2005-1: software & hardware setup

Proceed as follows if WinI2CUSB Lite is not installed on your computer:

1. Run Win-I2CUSB Lite Install from the software.win-i2cusb.lite.zip file

2. Replace the Win-I2CUSB Lite Installation.exe executable file by the latest version (if necessary). Default installation path is: C:\Program Files\The Boardshop\Win-I2CUSBLite

3. Plug the I2C Demonstration Board I2C 2005-1 into a USB port

4. Install the USB Driver. Default installation path is: C:\Program Files\The Boardshop\Win-I2CUSB Lite\USBDriver The hardware should now be ready to use.

5. Run Win-I2CUSB Lite.exe

Page 19: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

19

I2C - ProtocolDemoboard I2C 2005-1: Win-I2CUSB LiteGUI Overview

Hardware detectionGreen = Hardware detectedRed = Hardware not detected

I2C Clock frequency Double-clicking allows changing the frequency.Also available under the Options menu

Control 3.3 V and 5.0 V power supplies. Double-click enables/disables the selected power supply. Also available under the Options menu

Device selection: only devices in the board can be selected

Self test feature: allows board diagnostic to be performed

Expert Mode allows to write customized I2C commands limited to 8 commands with 8 bytes of data for each

Page 20: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

20

I2C - ProtocolDemoboard I2C 2005-1: Expert Mode

Page 21: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

21

I2C - ProtocolDemoboard I2C 2005-1: Demonstration Board Block Diagram

Page 22: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

22

I2C - ProtocolDemoboard I2C 2005-1: PCF8574 schematic

Page 23: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

23

1. Switch S1: SDA

2. Switch S1: SCL

I2C - ProtocolDemoboard I2C 2005-1: PCF8574 on the board

PCF8574

Page 24: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

24

I2C - ProtocolDemoboard I2C 2005-1: Exercise: Use switch to generate an I2C message

Objective: verify understanding of the I²C bus protocol

Use switch S1 to generate an I²C message to the PCF8574:– The PCF8574 address is 0x40– The PCF8574 requires one data byte– The data byte should be 0xFA to turn on two of the LEDs

Page 25: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

25

I2C - ProtocolDemoboard I2C 2005-1: Exercise: solution

The following sequence should be followed:– Send Start condition– Send PCF8574 address with LSB= ‘0’ for Write: 0100 0000b– Send data byte 0xFA: 1111 1010b– Send Stop condition– Don’t forget the acknowledge clock pulses

Page 26: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

26

I2C - Building blocks

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 27: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

27

I2C - AD / DA Converters

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 28: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

28

I2C - AD / DA ConvertersApplication

2. Read out of Wheatstone-bridges: measure resistance very accurately

1. Read out of grounded voltages

5. Read out remotely

4. Battery monitoring / Floating voltages

6. Use DAC output and AD input to implement fast control loop

8. Read out of sensors

9. Audio distribution

Page 29: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

29

I2C - AD / DA ConvertersProduct overview

AD and DA convertersI2C Bus

ADCMUXAnalog-in DAC Analog-out

DA convertersI2C Bus DAC

Analog-outDAC

DAC

Page 30: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

30

PCA9691

See PCF8591 +

Fast Mode Plus (FM+) device: – High sampling rate: 110 kHz– Allows audio signal distribution– Fast control loops without occupying the bus continuously

PCF8591

8-bit resolution

Simply add the capability to:– 4 analog inputs– One analog output

Sampling rate: 11 kHz

Can support a large variety of input configurations

I2C - AD / DA ConvertersAD and DA converters

Page 31: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

31

TDA8444

Eight DACs with 6-bit resolution

Adjustable common output swing

Push-pull outputs

Outputs short-circuit protected

Three programmable slave address bits

Large supply voltage range

Low temperature coefficient

I2C - AD / DA ConvertersDA converter

Page 32: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

32

I2C - GPIOs: General Purpose I/O Expanders

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 33: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

33

1. LED driver

µC

VDD

I2C Bus

2. Read interrupts

3. Give subsystem resets

4. Control devices

5. Drive alarm pins

6. Make even LED displays7. Read out keys position

I2C - GPIOs: General Purpose I/O Expanders Application

Page 34: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

34

I2C - GPIOs: General Purpose I/O ExpandersApplication: making LED displays

µC

Functions with I2C

Other hardware

I2C GPIO

VCC

I2C GPIO

Use FM+ devices to increase data rate or to build large LED arrays without I2C buffers

Page 35: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

35

I2C - GPIOs: General Purpose I/O ExpandersIntermezzo: Output stages

Open drain IO

IOdriveroutput data

~ 25 mA

AdvantagesVDD independent

25 mA sink current

Steep HIGH-LOW transition

Switch from output to input: only write I/O with “1” to be used as an input

DisadvantagesSlow LOW-HIGH transition (depends on the load and on Rpullup)

VDD

Rpullupinput data

Page 36: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

36

I2C - GPIOs: General Purpose I/O ExpandersIntermezzo: Output stages (2)

Totem Pole IO

IOdriver

~ 25 mA

~ 10 mA

Advantages25 mA sink current, 10 mA source current

Steep HIGH-LOW transition

Steep LOW-HIGH transition

DisadvantagesVDD dependent

Switch from output to input: program the configuration register accordingly (extra programming involved to use the I/O as input)

output data

input dataVDD

Rpullup*

*: some types havepull up resistors

Page 37: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

37

I2C - GPIOs: General Purpose I/O ExpandersIntermezzo: Output stages (3)

Quasi Bidirectional IO

IOdriver

~ 25 mA

VDD

~ 100 μA

Advantages25 mA sink current; strong sourcing current only during low-high transition; weak sourcing in steady state

Steep HIGH-LOW-transition Steep LOW-HIGH transition

Switch from output to input: only write I/O with “1” to be used as an input

Usage at higher speeds

Usage at heavily loaded outputs

DisadvantagesVDD dependent

output data

input data

Strong PMOS onONLY 2 osc. clockperiods

Page 38: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

38

I2C - GPIOs: General Purpose I/O ExpandersProduct overview

GPIO I2C Bus Totem-pole

outputstages

IO0IO1

IOn

Differentiating GPIO features

Active-LOW Interrupt output

Active-LOW Reset input

Programmable I2C address pins

Low power consumption

Additional:– EEPROM– DIP switch

EEPROM

GPIO I2C Bus Quasi-

bidirectionaloutputstages

IO0IO1

IOn

GPIO I2C Bus Quasi-

bidirectionaloutputstages

IO0IO1

IOn

EEPROM

GPIO I2C Bus Open drain

outputstages

IO0IO1

IOnEEPROM

MUXMUX_IN MUX_OUT

Page 39: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

39

I2C - GPIOs: General Purpose I/O ExpandersPCF8574(A) and PCF8575(C) or PCA type (low cost)

8 or 16 I/O pins are used as inputs or outputs

Open-drain interrupt output– activated when any input state differs from its corresponding input port

register state– Used to indicate to the system master that an input state has changed.

The PCF8574, PCF8575, and PCF8575C have the same I2C address while the PCF8574A has a slightly different fixed address allowing 16 devices (eight PCF8574A and eight PCF8574/PCF8575(C) in any combination) to be on the same I2C bus.

The PCF8575 is optimized for automotive applications.

PCA8574/75 = LOW cost version of the PCF8574/75 (General: not all PCA types are cost down versions)

Page 40: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

40

I2C - GPIOs: General Purpose I/O ExpandersPCA9698

40-bit I/O advanced expanderMaximum I2C frequency is 1000 kHzSDA output current is stronger than normal to allow use in large area networks without the need for bus buffersEach byte will change on acknowledge or wait for a stop condition, allowing you to update the output registers on multiple devices and then change all the outputs at once—which is great for large sign applicationsEach pin can sink 25mA and all pins can be on (40 x 25 mA = 1 A) when using the HVQFN packageWhen used for sensing input, the registers can be latched so that you are able to read spurious signals or the inputs can be masked so you don't generate an interruptThree address pins allow for 64 different addresses by using inputs of GND, VDD, SCL, or SDA so you can control up to 2560 LEDs on one I2C busThere is a GPIO All Call fixed address that allows you to turn on or off LEDs on all the GPIOs in the circuit with a single command sequence—which is great for lamp test or darking the array between displaysHardware Reset input will reset the device to its power up stateOutput Enable pin that will tri-state the outputs which are selectable between push pull and open drain

Page 41: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

41

PCA8575* 16 2.3-5.5 400

I2C - GPIOs: General Purpose I/O ExpandersProduct summary

Type

nr.

# of

Out

puts

Qua

si O

utpu

t

Push

-pul

l Out

put

Inte

rnal

Pul

l-Up

Res

isto

r/ cu

rren

t so

urce

Vcc

Ran

ge (V

)

5 V

Tole

ranc

e

I2 C M

ax

Freq

uenc

y [k

Hz]

SPI M

ax

Freq

uenc

y [M

Hz]

OE

Har

dwar

e re

set

Inte

rrup

t Out

put

2 kb

it EE

PRO

M

5-bi

t Mul

tiple

x / 1

-B

it la

tch

EEPR

OM

PCA9500 8 2.5-3.6 400PCA9501 8 2.5-3.6 400PCA9558 8 Open Drain 2.3-5.5 400

PCA9505/06 40 Open Drain 2.3-5.5 400PCF8574(A) 8 2.5-6.0 100PCA8574(A)* 8 2.3-5.5 400

PCF8575 16 2.5-5.5 400PCF8575C 16 4.5-5.5 400PCA9670* 8 2.3-5.5 1000PCA9672* 8 2.3-5.5 1000

PCA9674(A)* 8 2.3-5.5 1000PCA9671* 16 2.3-5.5 1000PCA9673* 16 2.3-5.5 1000PCA9675* 16 2.3-5.5 1000

*: GPIOs Recommended for LED Applications

Open Drain

Page 42: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

42

I2C - GPIOs: General Purpose I/O ExpandersProduct summary (2)

Type

nr.

# of

Out

puts

Qua

si O

utpu

t

Pus

h-pu

ll O

utpu

t

Inte

rnal

Pul

l-Up

Res

isto

r/ cu

rren

t so

urce

Vcc

Ran

ge (V

)

5 V

Tol

eran

ce

I2 C M

ax

Freq

uenc

y [k

Hz]

SP

I Max

Fr

eque

ncy

[MH

z]

OE

Har

dwar

e re

set

Inte

rrup

t Out

put

PCA9502 8 2.3-3.6 400 15PCA9505* 40 2.3-5.5 400PCA9506* 40 2.3-5.5 400PCA9534 8 2.3-5.5 400PCA9535 16 2.3-5.5 400PCA9536* 4 2.3-5.5 400PCA9537* 4 2.3-5.5 400PCA9538* 8 2.3-5.5 400PCA9539* 16 2.3-5.5 400

PCA9554(A) 8 2.3-5.5 400PCA9555 16 2.3-5.5 400PCA9557* 8 2.3-5.5 400PCA9698* 40 Open Drain 2.3-5.5 1000

*: GPIOs Recommended for LED Applications

Page 43: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

43

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: PCF8574 schematic

Page 44: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

44

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: PCF8574 GUI

Checkboxes (read-only) represent state of port pinsChecked = HighUnchecked = Low

Press the Read button to find the state of the IO pins

P6 = switch connected to groundP7 = switch to Vcc

Pins P0-P3 control LEDs Checked = high (LED off) Unchecked = low (LED on)

Press Write button to send data to PCF8574 or use Auto Write to send automatically

Page 45: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

45

1. Set all the port pins high using Win-I2CUSB Lite.

2. Change the state of switch 1 on S2.

3. The INT LED should illuminate.

4. Change the state of the switch. The LED should turn off.

5. Turn the INT LED again by changing the switch.

6. Using Win-I2CUSB Lite. Read the PCF8574. What happened to the Interrupt?

7. Turn the INT LED again by changing the switch. Write to the PCF8574. What happened to the Interrupt?

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: Exercise: Understanding quasi-bidirectional outputs

Page 46: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

46

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: PCA9536 schematic

MAIN I2C bus

Switched 3.3 V

Unswitched 5 V

PCA9536:No programmable address pinI2C address = 0x82

Page 47: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

47

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: PCA9538 schematic

MAIN I2C bus

Active Low RESET input

PCA9538 I2C address: A[1:0] = 10 Address = 0xE4

Signal control and monitoring; Visual status provided by LEDs

Page 48: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

48

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: PCA9538 GUI

I2C address:PCA9536 = 0x82PCA9538 = 0xE4 Auto Write Feature

Configuration register-programming IOs as inputs or output

Output register programming the logic state of the pins programmed as inputs

Polarity register-allowing to invert or not the logic values read from the pins

Input register reading the IOs logic states

Page 49: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

49

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: PCA9536, PCA9538 on the board

RESET

PCF8574PCA9536

PCA9538

Page 50: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

50

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: Exercise A: PCA9536

1. Power sequence the board Board OFF then ON

2. Open the PCA9536 GUI: Device IO Expanders PCA9536 4-bit I/O Expander

3. Switch ON the 4 LEDs connected to the PCA9536Configuration register: the 4 I/Os need to be configured as outputs (checked)Output register: the 4 outputs need to be forced Low

4. Uncheck C0, C1, C2 and C3 Check O0 and O1 in the Output Register (O2 and O3 unchecked)Check N0 and N2 in the Polarity Register (N1 and N3 unchecked)Read the Input Register and explain what you see

I0 = Low Inverted Logic state of I/O0I1 = High Logic state of I/O1 I2 = High Inverted Logic state of I/O2I3 = Low Logic state of I/O3

Page 51: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

51

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: Exercise B: PCA9538

Write the following I2C sequence (Red) using the Expert Mode

1. Power sequence the board Board OFF then ON

2. Program PCA9538 I/O0 to I/O4 as output (and be sure that I/O5 to I/O7 are configured as inputs)

3. Switch ON PCA9538 I/O0 only and wait 0.5 s

4. Switch ON PCA9538 I/O1 only and wait 0.5 s

5. Switch ON PCA9538 I/O2 only and wait 0.5 s

6. Switch ON PCA9538 I/O3 only and wait 0.5 s

7. Switch ON PCA9538 I/O4 only and wait 0.5 s

Execute it in loop

Page 52: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

52

I2C - GPIOs: General Purpose I/O ExpandersDemoboard I2C 2005-1: Exercise B: PCA9538; solution

Page 53: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

53

I2C - LED Drivers, Blinkers and Dimmers

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 54: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

54

I2C - LED Drivers, Blinkers and DimmersIntermezzo: Using PWM for color mixing in RGB LED

LEDDriver

Voltage(V)

To perform color mixing:– Frequency high enough so the human eye does not see the ON/OFF phases– Brightness for each primary color (desired amount of each primary color) is controlled with the

duty cycle– Human eye sees the sum of primary colors’ average brightness: X% Red + Y% Green + Z%

Blue

t (s)Frequency > 80 .. 100 Hz

Voltage on BLUE LED driver<Iblue>

<Iblue>

<Iblue>

Voltage on GREEN LED driver

Voltage on RED LED driver

+

+

=

ONblue

ONgreen

ONred

Page 55: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

55

I2C - LED Blinkers, Dimmers and DriversControllability via I2C; color mixing, brightness, blinking

I²CBus Expander,

Hub or Repeater

µC I²C Bus Controllers

8

VCCVCC

Functions with I2C

I2C Bus Enablers

Other hardware

I²CBus Expander,

Hub or Repeater

VCC

I²CBus Expander,

Hub or Repeater

VCC

PCA963x PCA963x

PCA963x PCA963x

PCA963x PCA963x

I2C bus

I2C bus

I2C bus

Page 56: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

56

I2C - LED Drivers, Blinkers and DimmersProduct overview

LED Drivers (GPIOs)I2C Bus

LED Blinkers

2 slow PWMs

LED Dimmers

2 fast PWMs

LED Blinkers/DimmersColor mixing

fast PWM onevery output

I2C Bus

I2C Bus I2C Bus

LED Blinkers

Programmedsequence

One wire bus

Page 57: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

57

Drive up to 25 mA per output

Fully integrated oscillator generates programmed blinking / dimming schemes

Each LED can programmed to be:– Fully OFF, ON– Blinking / dimming at frequency1 or at frequency2

I2C - LED Drivers, Blinkers and DimmersPCA955x - Blinkers / PCA953x - Dimmers

drivers

PWM 1

PWM 2

PCA955x

400 kHzI2C Bus

HW Addrpin

40 Hz osc

PCA953x

400 kHzI2C Bus

HW Addrpin

160 Hz osc

driversPWM 1

PWM 2

Page 58: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

58

4/8/16 channel-LED drivers – On / Off– Individual PWM control– Group PWM Control

Output Structure– 5 V tolerant Outputs– Programmable totem-pole / open drain – 10 mA source, 25 mA sink capability

/OE input pin allows hardware dimming / blinking

Enables groups of devices to be addressed at the same time

– 1 Group-Call Address– 3 Sub-Call Addresses

Fast Mode Plus (Fm+) compatible I2C protocol

VDD = 2.3 V to 5.5 V

I2C - LED Drivers, Blinkers and DimmersPCA963x - RGBA Dimmer / Blinker / Color mixing

driversPWM 1

PWM 2

PWM n

PCA963x

sub2 addrOE

group addrsub3 addr

sub1 addraddr

1 MHzI2C Bus

HW Addrpin

25 MHz osc

globalPWM

PCA9633 8-pin = no HW addr pin

PCA9633 10-pin = 2 HW addr pin

PCA9633 16-pin = 7 HW addr pin

Page 59: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

59

3. RGB / RGBA LED: any color can be mixed2. Use global PWM to set:

Brightness of your mixed color

Plus set blinking rate

1. Use PWM per output

to set right color mix

4. Use global OE to set the

brightness of your mixed color or

just turn it ON or OFF

RGBA-LED

VDD

I2C - LED Blinkers, Dimmers and DriversApplication – PCA963x family

drivers

PWM 1

PWM 2

PWM n

PCA963x

sub2 addrOE

group addrsub3 addr

sub1 addraddr

1 MHzI2C Bus

25 MHz osc

globalPWM

5. Reduce software overhead by addressing groups of devices

6. Output:

25 mA / output

5 V tolerant

Voltage output

Page 60: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

60

Use series resistors to drive

transistors high: Vbe = ~ 0.7 V

voltage, VDD – 0.7, across the

series resistor

I2C - LED Drivers, Blinkers and DimmersApplication

Drive RGBA LEDs

Distribution of power dissipation

Off-load the microprocessor: only program LED-controller once

Outputs of blinkers / dimmers not used for LED driving can be used as GPI/O (not all devices)

Page 61: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

61

I2C - LED Drivers, Blinkers and DimmersProduct summary

Frequency Duty Cycle Resolution Type nr.

Drivers On/off - See GPIOs

Blinkers 40 Hz - 1/6.4 s 100 - 0.4% 8-bit PCA955x

Dimmers 160 Hz - 1/1.6 s 0 - 99.6% 8-bit PCA953x

Blinkers/dimmers 24 Hz - 1/10.73 s 0 - 99.6% 8-bit PCA963x

# of outputs LED Blinkers LED Dimmers LED Dimmers / Blinkers

2 PCA9550 PCA9530

4 PCA9553 PCA9533 PCA9633

8 PCA9551 PCA9531 PCA9634

16 PCA9552 PCA9532 PCA9635

PCA9632 (low power)

Page 62: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

62

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: PCA9551 (blinker) schematic

Page 63: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

63

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: PCA9531 (dimmer) schematic

Page 64: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

64

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: PCA9531 GUI (PCA9551 similar)

I2C address:PCA9551 = 0xC0PCA9531 = 0xC8

Auto Write Feature

Register Hexadecimal values

LED output state selection

Blinking / Dimming frequency and duty cycle selection

Page 65: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

65

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: PCA9551 & PCA9531 on the board

PCA9551 PCA9531

Page 66: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

66

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: Exercise A: PCA95511. Power sequence the board Board OFF then ON

2. Open the PCA9551 GUI: Device LED Blinkers and Dimmers PCA9551 8-bit LED Blinker

3. Read all the registers. What do you read?

All the LED outputs are OFFBoth blinking rates default to slower blinking rate (once every ~ 6.4 s, 50 % duty cycle)

4. Program the 4 LEDs connected to the PCA9551 as following:LED0 ( Y): ONLED1 ( B): Blinking Rate 0 with Blinking Rate 0 = 1s – 75 % duty cycleLED2 ( G): OFFLED3 ( R): Blinking Rate 1 with Blinking Rate 1 = 0.2 s (5 Hz) – 25 % duty cycleObserve the result

5. Check the Auto Write optionProgram LED0 to LED3 to Blinking Rate 0Use the maximum frequency for Blinking Rate 0 (40 Hz) and change the duty cycle from min to max back and forth. What do you observe?

Using the maximum frequency of the LED blinkers allow brightness control by changing the duty cycle. However, the human eye can observe some flickering (no perfect dimming) due to the fact that the dimming frequency is not high enough. Effective dimming is achieved with a PWM frequency > 80 to 100 Hz

Page 67: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

67

0

1

Rate 1

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: Exercise B: PCA95311. Power sequence the board Board OFF then ON

2. a) Open the PCA9531 GUI: Device LED Blinkers and Dimmers PCA9531 8-bit LED Dimmer

b) Open the PCA9543A GUI: Device Multiplexers/Switches PCA9543A 2-channel switch with Interrupt Logic

Reminder – Architecture (see slide PCA9531 schematic):a) The 2 PCA9531 have the same I2C address and the PCA9543A allows to select one or the other

(or both)b) The RGB LED is connected as following:– Red: LED4 of PCA9531 Device 1 (PCA9543A Channel 0)– Green: LED5 of PCA9531 Device 1 (PCA9543A Channel 0)– Blue: LED4 of PCA9531 Device 2 (PCA9543A Channel 1)

3. Use the PCA9543A and PCA9531 GUIs to control individually the 3 LEDs

PCA9531 (1)

PCA9531 (2)

Rate 0

Rate 0PCA9543A

4

5

4

Page 68: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

68

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: Exercise B (cont.): PCA9531

4. When it is understood how the RGB LEDs are controlled, program the two PCA9531 devices to display a “not too bright purple color” using the right amount of Red, Green and Blue(Hint: Use the PCA9543A (Switch) and PCA9531 GUIs to control individually the 3 LEDs)

5. Blink the LEDs displaying purple color

6. Now, program the two PCA9531 devices to display a “not too bright yellow color”

7. Blink the LEDs displaying Yellow color

Page 69: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

69

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: Exercise C: PCA9531, PCA9551; using the expert mode

Write the following I2C sequences (Red) using the Expert Mode and execute it step by step:

1. Connect Jumpers SDA and SCL to Master 0 (Higher position) and enable Jumper JP15 (INT_IN) LED INT_IN should be ON

2. Power sequence the board Board OFF then ON

3. Write to the PCA9551 to have LED0 / LED3 blinking at 1 Hz, 50% duty cycle and LED1/LED2 blinking at 2 Hz, 50 % duty cycle

4. Write to the 2 PCA9531 to have the 8 discrete blinking at 1 Hz, 50% duty cycle and the RGB LED displaying a white color

5. Run the sequence above during 2s

6. Reset the 2 PCA9531 and the PCA9551 during 2s

7. Clear the reset conditions and loop back to the 1st instruction

Hints, methodology and Technical Information:– Use the GUI’s to define the register values (easier than calculating with the

formulas)– Resets are active low– PCA9551 Reset line controlled by I/O0 ; PCA9531 Reset line controlled by I/O4– Control register definition: see next slide

Page 70: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

70

I2C - LED Drivers, Blinkers and DimmersDemoboard I2C 2005-1: Exercise C (cont.): PCA9531, PCA9551; Control register

Control register definition:

Auto Increment feature– Allows more than one register to be programmed (or read) with the same command– Bit 4 in the Control Register (2nd byte - contains the # of the register to be addressed)– INPUT PSC0 PWM0 PSC1 PSC2 LS0 LS1 LS2 LS3

Page 71: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

71

I2C - EEPROM DIP switches

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 72: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

72

DIP switchSetting

I2C - EEPROM DIP switchesApplication

1. Customers manufacturing / Test Unit tells which calibration or device configuration value has to be stored

VCC I2C bus

µC

Test Unit

Printed Circuit Board

µC

GND

3. E.g. fix the mux switch voltage when you don’t need the the external inputs

4.Product specific settings are sent to local µC

2. By using the EEPROM DIP switches the device doesn’t have to be powered down and the cabinet can stay closed reduced manufacturing cost

Page 73: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

73

I2C - EEPROM DIP switchesProduct overview

DIP switchI2C Bus

MU

X_O

UT

EEPROM 1 .. n

MUX_IN

MUX_SELECT

DIP switchI2C Bus

MU

X_O

UT

EEPROM 1 .. n

MUX_IN

MUX_SELECT

GPIO256 byteEEPROM IO

Page 74: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

74

I2C - EEPROM DIP switchesPCA8550 / PCA9559

PCA8550 / PCA9559I2C Bus

MU

X_O

UT

EEPROM

MUX_IN

latch

MUX_SELECT

I2Ccontrol

NO

N_M

UX_

OU

T

PCA85504-bit 2-to-1 multiplexer, 1-bit latch DIP switch

5-bit internal non-volatile register

2.5 V multiplexed outputs; 3.3 V non-multiplexed output (latched)

GeneralUseful for ‘jumperless’ configuration of PC motherboards

PCA95595-bit 2-to-1 multiplexer, 1-bit latch DIP switch

6-bit internal non-volatile register

open drain outputs

2 address pins, allowing up to 4 devices on the I2C-bus

Page 75: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

75

I2C - EEPROM DIP switchesPCA9560 / PCA9561

PCA9560

5-bit 3-to-1 multiplexer, 1-bit latch DIP switch

5-bit external hardware pins

Two 6-bit internal non-volatile registers, fully pin-to-pin compatible with PCA9559

I2C/SMBus interface logic

Open drain outputs

PCA95616-bit 5-to-1 multiplexer DIP switch

6-bit external hardware pins

Quad 6-bit internal non-volatile registers`

PCA9560 / PCA9561

I2 C B

us

MU

X_O

UTmux

MU

X_IN

latch

MUX_SELECT

NO

N_M

UX_

OU

T

EEPROM 1

mux

selectlogicEEPROM n

I2Ccontrol

NOT in the PCA9561

GeneralUseful for ‘jumperless’ configuration of PC motherboards

2 address pins, allowing up to 4 devices on the I2C-bus

Page 76: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

76

I2C - EEPROM DIP switchesPCA9558 PCA9558

I2 C B

us

MU

X_O

UT

mux

MU

X_IN

latch

MUX_SELECT

NO

N_M

UX_

OU

T

muxI2Ccontrol

GPIO2 kbitEEPROM

8 I/O

EEPROM

ApplicationMulti-card systems in Telecom, Networking and Base Station

Infrastructure Equipment

Application (Continued)

Multi-card systems in Telecom, Networking and Base Station

Infrastructure Equipment

Field recall and trouble-shooting functions for installed boards

General-purpose integrated I/O with DIP switch and memory

5-bit 2-to-1 multiplexer with 1-bit latched from the 6-bit internal

Input hardware pins readable via I2C/SMBus

I2C and SMBus compatible

8-bit GPIO can directly drive LEDs

2 kbit (256 x 8-byte) EEPROM

Hot insertion supported

Page 77: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

77

I2C - EEPROM DIP switchesProduct summary

Type

nr.

# of

Pin

s

# of

Non

-vo

latil

e re

gist

ers

# of

Reg

iste

r bi

ts

# of

Har

dwar

e in

put p

ins

# of

Mux

ed

outp

uts

Non

-mux

ed

outp

ut

PCA8550 16 1 5 4 4 Yes

PCA9559 20 1 6 5 5 Yes

PCA9560 20 2 6 5 5 Yes

PCA9561 20 4 6 6 6 No

PCA9558 28 1 6 5 5 Yes

Page 78: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

78

I2C - Serial EEPROM & RAM

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 79: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

79

I2C - Serial EEPROM & RAMProduct overview

Serial EEPROMWith Access Protection

I2C Bus

EEPROM

controllogic

accessprotection

Serial EEPROM

I2C Bus

EEPROM

controllogic

Serial RAM

I2C Bus RAMcontrollogic

Page 80: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

80

I2C - Serial EEPROM & RAMProduct summary

Serial RAM products

power supply

Address pins

# of blocks(256 bytes) # of bits Data retention

time Temp range Clock frequency

PCF8570 2.5 - 6 V 3 1 2 K N/A -40 to +85°C 100 kHz

Serial EEPROM products

power supply

Address pins

# of blocks(256 bytes) # of bits Data retention

time Temp range Clock frequency

PCA8581 4.5 - 5.5 V 3 0.5 1 K 10 Years -25 to +85°C 100 kHz

PCA8581C 2.5 - 6 V 3 0.5 1 K 10 Years -25 to +85°C 100 kHz

PCF8582C-2 2.5 - 6V 3 1 2 K 10 Years -40 to +85°C 100 kHz

PCF85102C-2 2.5 - 6 V 3 1 2 K 10 Years -40 to +85°C 100 kHz

PCF85103C-2 2.5 - 6 V 3 1 2 K 10 Years -40 to +85°C 100 kHz

PCF8594C-2 2.5 - 6 V 2 2 4 K 10 Years -40 to +85°C 100 kHz

PCF8598C-2 2.5 - 6 V 1 4 8 K 10 Years -40 to +85°C 100 kHz

PCF85116-3 2.7 - 5.5 V 0 8 16 K 20 Years -40 to +85°C 400 kHz

PCA24S08 2.5 - 3.6 V 0 8(128 Bytes) 8 K 10 Years -40 to +85°C 400 kHz

Page 81: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

81

I2C - LCD Drivers

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 82: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

82

I2C - LCD DriversApplication

1. µC sends text

µC

VCCI2C bus

I2C LCD Driver

2. Just 2 wires forconnecting the remote display!!

3. Driver can also be on the LCD glass

4. The large amount of connections to the display are very short

Page 83: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

83

only 1

IC chip

1 2

3

4

5 LCD

PCB

Conventional Chip On Glass

I2C - LCD DriversPrinciple of Chip On Glass (COG)

Page 84: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

84

I2C - LCD DriversIntermezzo: LCD basics

Vdrive

1. Vertical filter film to polarize the light as it enters.

2. Glass substrate with ITO electrodes. The shapes of these electrodes will determine the dark shapes that will appear when the LCD is turned on or off. Vertical ridges etched on the surface are smooth.

3. Twisted nematic liquid crystals4. Glass substrate with common electrode film

(ITO) with horizontal ridges to line up with the horizontal filter (backplane).

5. Horizontal filter film to block/allow through light.

6. Reflective surface to send light back to viewer.

Page 85: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

85

I2C - LCD DriversIntermezzo: driving LCD : static

LCD displays should be driven AC. (Prolonged DC operation will cause reduced life)

Typically drive frequency: between 30 Hz and 100 Hz

Page 86: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

86

I2C - LCD DriversIntermezzo: driving LCD: multiplex 1:2

Multiplex: reduce number of drive pins

Reduction of external connections:– Enhances device reliability– Increases the potential display

density.

Multiple voltage biasing levels are needed

Page 87: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

87

Graphic:column / row driven (pixel)

Character:column / row (pixel) driven; character set in memory of driver

I2C - LCD DriversFamilies

Segment:drive electrode; can be any shape

Page 88: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

88

I2C - LCD DriversLCD segment drivers

LCD segment driver

I2C Bus

sequencer

bias voltage generator

RAM

controllogic

backplanedriver

segmentdriver

Key productsPCF8562 4 x 32 segments 8 μAPCF8576D 4 x 40 segments 8 μAPCF8534 4 x 60 segments 24 μAPCF8533 4 x 80 segments 24 μA

FeaturesWide range of segment outputsOn-chip RAM with auto incremental addressingLow power consumptionNo external componentsWide power supply rangeOn-chip LCD bias voltage generation

Page 89: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

89

I2C - LCD DriversProduct summary - segment drivers

Page 90: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

90

I2C - LCD DriversLCD character drivers

LCD character driver

I2C Buscharacter

RAM

controllogic

characterROM

displayRAM

sequencer

bias voltage generator

rowdriver

columndriver

FeaturesOn-chip character generatorOn-chip temperature compensationOn-chip character ROM and RAM Low power consumptionMinimum of external componentsOn-chip LCD bias voltage generationCursor support

Key productsPCF2113 2 line by 12 characters + 120 iconsPCF2119 2 line by 16 characters + 160 icons

Page 91: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

91

I2C - LCD DriversProduct summary – character drivers

Page 92: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

92

I2C - LCD DriversLCD graphic drivers

Key productsPCF8531 34 x 128 small 4 x 20 chars of text, full graphicPCF8535 65 x 133 medium graphics, 8 lines of textPCF8811 80 x 128 large universal display

FeaturesWide range of mux rates to optimizepower and display sizeOn-chip generation of LCD bias voltagesLow number of external componentsLow power consumptionTemperature compensationPCF8535:

– Temperature read back – Icon mode

LCD graphic driver

Serial /parallel /I2C Interface

controllogic

displayRAM

sequencer

bias voltage generator

rowdriver

columndriver

Page 93: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

93

I2C - LCD DriversProduct summary – graphic drivers

Page 94: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

94

I2C - LCD DriversDemoboard - OM6290

Page 95: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

95

I2C - Temperature and Voltage Sensors

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 96: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

96

I2C - Temperature and Voltage SensorsApplication

4. Internal temp sensor

1. µC sets the high / low alarm levels

µC

VCCI2C bus

2. When the temperature becomes too high in e.g. a cabinet an Alarm is generated

3. Fan is turned on to lower the temperature

Interrupt

Page 97: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

97

Local / internal AND remote temp sensorLocal / internal temp sensor

Internal temp sensor

remote temp sensor

Internaltemp sensor

I2C - Temperature and Voltage SensorsFamilies

Page 98: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

98

I2C - Temperature and Voltage SensorsProduct overview

Local temperature sensorsI2C Bus

Local and remotetemperature sensorsI2C Bus

Local and remote temperature sensors with voltage monitorI2C Bus

Vcc

Local and remotetemperature sensors + outputI2C Bus

FanControlcircuit

Page 99: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

99

I2C - Temperature and Voltage SensorsProduct overview

Local temperature sensorsI2C Bus

Local and remotetemperature sensorsI2C Bus

Page 100: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

100

I2C - Temperature and Voltage SensorsIntermezzo: Accuracy versus Resolution

Temperature Accuracy

Accuracy and error are used synonymously, and is the measure of how precisely the temperature sensor reading matches the ambient temperature

Example: ± 2 °C accuracy

Temperature Resolution

Is the measure of temperature sensor’s smallest measuring step

Example: 0.125 °C resolution

77 oC

73 oC

Ambienttemperature

Measured Temperature

75 oC 77 oC

73 oC

Actual measuredTemperature 75.125 oC

75 oC

Page 101: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

101

I2C - Temperature and Voltage SensorsIntermezzo: Comparator versus Interrupt mode

Comparator mode: EVENT output is cleared by itself once the temperature drops below the set points

Interrupt mode: EVENT output is latched and only cleared by writing to the clear event bit

Page 102: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

102

Application:Trigger interrupts, shut-down, or over-temperature alarmsIndustrial process controlNotebook computersServers

Memory modules

CommunicationsOffice electronics

I2C - Temperature and Voltage SensorsLocal-only temperature sensors

General:Produce highly accurate digital readings of the ambient temperatureRead out via I2C or SMBus

General:Produce highly accurate digital readings of the ambient temperatureRead out via I2C or SMBus

Products:LM75A/LM75B:

– Local temperature sensor and watchdog timer™

– Accuracy of ±2 ºC– Drop-in replacement LM75

SE95:– More accurate version of the LM75A– Delivers superior performance in

power-sensitive applicationsSE98:

– Designed for applications that use DDR3 DIMM memory (not only DIMM applications.)

– Complies with JEDEC JC42.4– Supports SMBus Timeout and Alert– Security lock bits

SE97:– Single device: SE98 + 2-Kbit

EEPROM Serial Presence Detect (SPD)

Page 103: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

103

I2C - Temperature and Voltage SensorsLM75A versus LM75B

LM75B is an improved features and drop-in replacement for LM75A

Features LM75A LM75BSingle byte temperature register read without lockup No Yes

Fault time-out (minimum 75 ms) No YesMinimum I2C-bus hold time (tHD;DAT) 10 ns 0 ns2 mm × 3 mm HUSON8 package No Yes

LM75A and LM75B Comparison

Page 104: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

104

I2C - Temperature and Voltage SensorsRemote and local temperature sensors

General:Produce highly accurate digital readings of the ambient temperatureRemotely monitor the temperature of the thermal diode inside the CPU or the diode connected to PNP or NPN transistorsTo save power in laptop applications, the standby pin (STBY) can be tied to the battery’s “suspend” output.

Application:Trigger interrupts, shut-down, or over-temperature alarmsIndustrial process controlNotebook computersServersOffice electronics

Products:NE1617A:

– Up to nine slave devices on same bus– Drop-in replacement NE1617,

AD1021 or AD1021ANE1619:

– Integrated voltage monitor: track five input supply voltages in the range of 0 to 12 V with accuracy of ±2%

SA56004:– Handheld and portable applications– Includes offset register for system

calibration– Dual outputs for fan control– Interrupt– Built-in diode fault detection– One-shot conversion with power

optimization in shutdown mode– Eight possible pre-configured slave

device addresses– Small, 8-pin package

Page 105: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

105

I2C - Temperature and Voltage SensorsProduct summary

Type

nr.

Loca

l cha

nnel

s

Rem

ote

chan

nels

Ther

mal

Ala

rm

Out

put

Fan

cont

rol o

utpu

t

0 ..

12 V

vol

tage

in

put m

onito

r

Acc

urac

y Lo

cal

Sens

ing

Acc

urac

y R

emot

e Se

nsin

g

A/D

reso

lutio

n (°

C/

# bi

ts)

Supp

ly ra

nge

Ope

ratin

g cu

rren

t (μ

A)

Pow

er d

own

curr

ent (μ A

)

LM75A 1 1 ±2°C 0.125/11 2.8-5.5 1000 3.5

NE1617A 1 1 1 ±2°C ±3°C 1.0/8 3.0-5.5 70 3

NE1619 1 1 5 ±3°C ±5°C 1.0/8 2.8-5.5 500 100

SA56004 1 1 1 1 ±2°C ±1°C 0.125/11 3.0-3.6 500 10

SE95 1 1 ±1°C 0.03125/13 2.8-5.5 1000 7.5

SE97/97A 1 1 ±1°C 0.125/11 3.0-3.6 250 15

SE98 1 1 ±2°C 0.125/11 3.0-3.6 250 15

SE98A 1 1 ±1°C 0.125/11 1.7-3.6 250 15

Page 106: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

106

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: SE98 schematic

Visual status: Interrupt input and outputs

SE98Address: 0x30

EVENT Output LED

PCA9541/01Address: 0xFE

Page 107: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

107

I2C - Temperature and Voltage SensorsDemoboard 2005-1: SE98 on the board

SE98

Page 108: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

108

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: SE98 GUI

Configuration& StatusRegisters

Device Address

Alarm Status bitsTemperature Reading

Cyclic Read

Auto Write

Alarmset points

Page 109: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

109

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: Exercise A: SE98, Device Initialization

Set upper boundary alarm trip to 27 °CSet critical boundary alarm trip to 80 °C boundary registers

Set hysteresis to 1.5 °C

Auto WriteON

Enable /EVENT output

Page 110: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

110

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: Exercise A: SE98, EVENT output in Comparator vs Interrupt Mode

1. Visually check EVENT LED - it should be OFF.2. Click on the “Cyclic read” for continuous temperature update.3. Heat up or place your finger over the SE98 for a few minutes for temperature to exceed

28 °C - the EVENT LED is ON.4. Cool down the SE98 or remove your finger from the SE98 and wait for a 1 minute or 2

until the temperature drops below 28 °C. What happens to the EVENT LED now? -EVENT LED is OFF.

5. Change the EVENT output to Interrupt mode and repeat steps 1-4. What happens to the EVENT LED now? - EVENT LED is still ON.

6. Clear the EVENT bit. - EVENT LED is OFF.Conclusion:

Comparator mode, the EVENT output de-asserted and LED is OFF when temperature falls within the ALARM window.

Interrupt mode, the EVENT output stays asserted and LED is ON even after the temperature drops back within the ALARM window. The output is cleared by writing to the “event clear bit”.

Page 111: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

111

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: Exercise A (cont.): SE98

1. Read the upper, lower and critical alarm boundary trips registers. What are their values?

2. Upper = 28 °C; Lower = 0 °C; Critical = 85 °C

3. Change the upper, lower and critical alarm boundary trip to 35 °C, -20 °C, and 125 °C and read them back. What are their values?

Upper = 35 °CLower = - 20 °CCritical = 125 °C

4. Check the “lock the Critical” and “lock alarm window” bits

5. Change the upper, lower, and critical alarm boundary trips to 28 °C, 0 °C, and 85 °C, and read them back. What are their values? No change

6. Remove the power will reset remove the lock feature

Conclusion: lock bit protects alarm set point values. Once lock bit is written, you can only clear it by powering off the SE98.

Page 112: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

112

I2C - Temperature and Voltage SensorsDemoboard 2005-1: Exercise B: SE98, Expert mode

Power off and on the board

Use the Expert Mode, write and verify the following codes:1. Set the upper alarm to 27 °C2. Confirm what you wrote is correct3. Set the critical temperature to 70 °C4. Confirm what you wrote is correct5. Write to configuration register to enable the EVENT output6. Read what you’ve just wrote7. Heat up SE98 and read the configuration register8. Read the temperature value

Hint: Next three slides show register definition

Page 113: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

113

I2C - Temperature and Voltage SensorsDemoboard 2005-1: Exercise B (cont.): SE98, Expert mode

Above Critical indicates whether the temperature exceeds the critical temperature0: temp is below critical temperature1: temp exceeds critical temperature

Above ALARM window indicates whether the temperature exceeds the alarm temperature0: temperature is below the upper alarm1: temperature exceeds the upper alarm

Temperature Value = 25.125 oC

Reserved for future use

Sign bit0: positive temperature1: negative temperature

DecimalInteger

1

1 1 1

Below ALARM Window indicates whether the temperature falls below the lower alarm0: temperature is above the lower alarm1: temperature falls below the Lower ALARM

Page 114: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

114

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: Exercise B (cont.): SE98, Register summary

Page 115: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

115

Hysteresis for alarm00: hysteresis disabled01: hysteresis = 1.5 °C10: hysteresis = 3 °C11: hysteresis = 6 °C

0: Temp sensor shutdown mode1: Normal mode

Critical Lock Bit0: alarm register not locked, register value can be changed1: alarm register locked , register value cannot be changed

ALARM Lock Bit0: Alarm not locked, upper and lower alarm can be modified1: Alarm locked, upper and lower alarm cannot be modified

Clear EVENT flag0: no effect1: clear the event flag in interrupt mode

EVENT Status bit0: not asserted1: asserted

EVENT output control bit0: EVENT output disabled1: EVENT output enabled

Critical EVENT Only0: Critical+Alarm1: Critical

EVENT Polarity0: Active low1: Active high

EVENT Mode0: Comparator mode1: Interrupt mode

I2C - Temperature and Voltage SensorsDemoboard 2005-1: Exercise B (cont.): SE98, Configuration register

Page 116: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

116

I2C - Temperature and Voltage SensorsDemoboard I2C 2005-1: Exercise B (cont.): SE98, solution

Page 117: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

117

I2C - Real Time Clocks / Calendars

Page 118: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

118

I2C - Real Time Clocks / Calendars

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 119: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

119

I2C - Real Time Clocks / CalendarsApplication

1. µC sets the date and alarm time and can go in power down

µC

VDDI2C bus

2. When alarm time is reached alarm, interrupt is generated to the application

Interrupt

Page 120: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

120

I2C - Real Time Clocks / CalendarsProduct overview

Real Time ClocksI2C Bus

clock /calendarregistersInterrupt

alarmregisters

Clock

32 kHz crystal

Page 121: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

121

I2C - Real Time Clocks / CalendarsPCA8565 / PCF8563 / PCF8583 / PCF8593

General:Time keepingLarge voltage range 1.0 .. 5.5 VClock from seconds to 99 yearsProgrammable TimerFrequency outputSmall packages (TSSOP8, HVSON10, etc)

Products:PCA8565:

– High temperature (up to 125 °C) PCF8563:

– Low power: < 250 nA

PCF8583:– 240-byte RAM

PCF8593:– 1/100-second resolution

Application:Time keeping, calendarTariff switchingIntegrity check after power-down

Page 122: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

122

I2C - Real Time Clocks / CalendarsProduct summary

Features PCA8565 PCF8563 PCF8583 PCF8593

I2C-bus interface speed 400 kHz 400 kHz 100 kHz 100 kHz

Scratch pad RAM 0 0 248 Bytes 0

Years and leap year tracking yes yes yes yes

Year counter 2 digit +1 bit 2 digit +1 bit 2 bit 2 bit

1/10, 1/100 s counter no no 10 ms 10 ms

Programmable alarm yes yes yes yes

Low voltage detector yes yes no no

Supply voltage for I2C-bus 1.8 - 5.5 V 1.8 - 5.5 V 2.5 - 6.0 V 2.5 - 6.0 V

Supply voltage for clock 1.8 - 5.5 V 1.0 - 5.5 V 1.1 - 6.0 V 1.1 - 6.0 V

Typical power consumption 700 nA @ 2 V 250 nA @ 1 V 2 μA @ 1.0 V10 μA@ 5 V

1 μA @ 2.0 V4 μA @ 5 V

Packages -40 - 125°C -40 - 85°C -40 - 85°C -40 - 85°C

Page 123: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

123

I2C - Real Time Clocks / CalendarsDemoboard I2C 2005-1: PCF8563 Schematic

PCF8563Address = A2h

Interrupt LED

PCA9543AAddress = E0h

Channel 0

Page 124: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

124

I2C - Real Time Clocks / CalendarsDemoboard I2C 2005-1: PCF8563 on the board

PCF8563

Page 125: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

125

I2C - Real Time Clocks / CalendarsDemoboard I2C 2005-1: PCF8563 GUI

CalendarClock

AlarmClock

Timer Clock output controlReset

Timer & AlarmControl/Status

Page 126: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

126

I2C - Real Time Clocks / CalendarsDemoboard I2C 2005-1: Exercise A: PCF8563 Alarm Mode

1. Click on the reset push button to reset alarm, timer, clock and calendar

2. Alarm mode: Minute, hour, day, or week

3. Click on the cyclic read push button

4. Select the alarm minute enable checkbox

5. Select the alarm interrupt enable (AIE) checkbox

6. Set alarm to 1 minute

7. Do a “write all” on the screen to update the register

8. What do you see when the clock time reaches 1 minute?

9. Interrupt is asserted and interrupt LED is on

10. Alarm flag (AF) status bit is set

11. Clear AF (by uncheck the box and do a “Write All”)

Page 127: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

127

I2C - Real Time Clocks / CalendarsDemoboard I2C 2005-1: Exercise B: PCF8563 Timer Mode

1. The timer has a selectable count down frequency ranging from 1/64 Hz to 4096 Hz, and an 8-bit or 256 count down value

2. Chose 1 Hz (1 sec) timer count down frequency

3. Program a count down value of 12

4. Select timer interrupt enable (TIE) checkbox

5. Enable timer

6. Perform a “Write All“ command

7. Wait for 12 seconds, read the status register, and observe the Interrupt LED light

8. What happens to TF and LED?

9. TF is set

10. LED is ON

Page 128: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

128

I2C - Portfolio: bus architecture devices

Page 129: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

129

I2C - Bus Enablers

I²C bus controllers

I²C master selector / demux

I²C multiplexers & switches

I²C bus expander, hub or repeater

Bridges (with I²C)

Page 130: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

130

I2C - Bus controllers

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 131: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

131

Adding an I2C bus port

I2C - Bus controllersApplication

Adding additional I2C bus ports

Converting 8 Bits of Parallel Data into I2C Serial Data Stream

Page 132: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

132

I2C - Bus controllersProduct overview

Bus controller

I2C Buslogic8-bit

parallel bus

control signals

Bus controllerwith memory

I2C Buslogic8-bit

parallel bus

control signals

memory

Page 133: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

133

I2C - Bus controllersProduct summary

Voltage Range Max I2C Freq. Clock Source Parallel Interface

PCF8584 4.5V - 5.5V 90kHz External Slow

PCA9564 2.3V - 3.6V; with 5V Tolerance 360kHz Internal Fast

PCA9665 2.3V - 3.6V; with 5V Tolerance 1000kHz Internal (Trimmed) Fast with 68 Byte Buffer

Page 134: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

134

I2C - Master selector / demux

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 135: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

135

I2C - Master selector / demuxProduct overview

2-to-1 I2C-busmaster selector

Master0I2C Bus

Master1I2C Bus

Slave devicesI2C Bus

logic

INTERRUPT_OUT INTERRUPT_INI2C controller

off

Page 136: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

136

I2C - Master selector / demuxPCA9541 - 2-to-1 I2C-bus master selector

FeaturesChannel selection via I2C -busDownstream bus initialization/recovery function before changing channelBus traffic sensorNo glitch on power-up and supports hot insertionSoftware identical for both mastersVoltage translation between 1.8 V, 2.5 V, 3.3 V and 5 V busesOperating power supply voltage range of 2.3 V to 5.5 V4 address pins allowing up to 16 devices on the I2C-bus0 to 400 kHz I2C clock frequency

ApplicationsHigh-End Servers, Base Stations and Mass Storage systems with high maintenance requirementsTwo independent masters to a single I2C slave device

VersionsPCA9541/01 - Master Channel 0 selected after power-up/resetPCA9541/03 - No master channel (off) selected after power-up/reset and either master can take control of the bus

Page 137: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

137

I2C - Master selector / demuxPCA9541 - application

High Reliability Backplane UseIn a typical multi-point application:

– Two masters (e.g. primary and back-up) are located on separate I2C buses that connect to multiple downstream I2C bus slave cards/devices.

– PCA9541/01: for non-hot swap applications PCA9541/03: for hot swap applications

If a master fails or the master card is removed for repair or service, the back-up master can take over

Either master can take command of the I2Cbus and, at any time, can gain control of the slave devices if the other master is unable to communicate.The failed master is isolated from the system and will not affect communication between the active master and the slave devices located on the cards.

Page 138: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

138

I2C - Master selector / demuxPCA9541 – application (2)

Masters with Shared Resources UseSome masters may not be multi-master capable or some masters may not work well together and continually lock up the bus. The PCA9541 can be used to separate the masters but still allow shared access to slave devices such as Field Replaceable Unit (FRU) EEPROM or temperature sensors. If the /01 version is used, at power up:

– Master A will control Slave A0 and Master B will control Slave B0

– Main Master will be disconnected from both Assembly A and B

If the /01 version is used, at power up:– Master 0 will control Slave 1 and

Slave 2 (but not Slave 3)– Master 1 will be disconnected from

the entire system Master 2 will control Slave 3

Page 139: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

139

I2C - Master selector / demuxPCA9541 - application (3)

Gatekeeper Multiplexer UseThe PCA9541/03 can act as a gatekeeper multiplexer in applications where there are multiple I2C devices with the same fixed address (e.g., EEPROM with an address of "Z" as shown in the figure) connected in a multi-point arrangement to the same I2C bus.Up to 16 hot swappable cards/devices can be multiplexed to the same bus master by using one PCA9541/03 per card/device. Since each PCA9541/03 has its own unique address (e.g., "A", "B", "C", etc.), the EEPROM can be connected to the master, one at a time, by connecting one PCA9541/03 (Master 0 position) while keeping the rest of the cards/devices isolated (off position).Alternative: use PCA9548 1-to-8 channel switch on the master card and run 8 I2C buses

Page 140: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

140

I2C - Master selector / demuxPCA9541 - application (4)

Bus Initialization/Recovery UseIf the I2C bus is hung, I2C devices without a hardware reset pin (e.g. Slave 1 and Slave 2 in the diagram) can be isolated from the master by the PCA9541/03.The PCA9541/03 disconnects the downstream bus when it is reset via the hardware reset line, restoring the master's control of the upstream bus (e.g. Slave 0). The bus master can then command the PCA9541/03 to send 9 clock pulses/stop condition to reset the downstream I2C devices before they are reconnected to the master.

Page 141: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

141

I2C - Multiplexers & switches

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 142: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

142

I2C MultiplexingResolve address conflicts: multiplexers and switches split the I2C bus into several sub-branches and allow the I2C master to select and address one of multiple identical devices

I2C - Multiplexers & switchesApplication

Voltage Level ShiftingVDD pin can be used to limit the maximum high voltage passed by the device:

– Allows different bus voltages on each pair

– 2.3V or 3.3V devices can communicate with 5V devices without any additional protection. All I/O pins are 5V tolerant.

Switches are best for voltage level shifting: multiple downstream channels can be active at the same time.Capacitive Load Sharing

Reduce capacitive bus loading by isolating the not needed bus segmentsWhen active, the channels act as a wire and the cumulative capacitive loading of the upstream channel and all active downstream channels must be considered.

Page 143: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

143

Mux/Switches Family

Mux/Switches Family

2:1 Mux/Switches2:1 Mux/Switches 4:1 Mux/Switches4:1 Mux/Switches 8:1 Mux/Switch8:1 Mux/Switch

MuxPCA9540B

MuxPCA9540B Mux Interrupt

PCA9544AMux Interrupt

PCA9544A

Mux InterruptPCA942A

Mux InterruptPCA942A

Switch Interrupt & ResetPCA9543A/B/C*

Switch Interrupt & ResetPCA9543A/B/C*

Mux & ResetPCA9547

Mux & ResetPCA9547

Switch & ResetPCA9548A

Switch & ResetPCA9548A

Octal CBT SwitchPCA9549

Octal CBT SwitchPCA9549

Switch Interrupt & ResetPCA9545A/B/C*

Switch Interrupt & ResetPCA9545A/B/C*

Switch Interrupt & ResetPCA9546A

Switch Interrupt & ResetPCA9546A

*Note: A, B, and C have different I2C fixed address

Master Selector Interrupt & ResetPCA9541/01, /03

Master Selector Interrupt & ResetPCA9541/01, /03

NEW

NEW

NEW

I2C - Multiplexers & switchesProduct overview

Page 144: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

144

I2C - Multiplexers & switchesProduct summary

Device Multiplexer (in/out)Switch (in/out) # of Addresses Interrupt (in/out)Hardware reset

PCA9540B 1-2 1

PCA9541 2-1 16 1-2

PCA9542A 1-2 8 2-1

PCA9543A 1-2 4 2-1

PCA9544A 1-4 8 4-1

PCA9545A 1-4 4 4-1

PCA9546A 1-4 8

PCA9547 1-8 8

PCA9548A 1-8 8

PCA9549 1-8 8

Page 145: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

145

I2C - Bus expander, hub or repeater

µC

I2C General Purpose I/O Expanders

I2C LED Blinkers / Dimmers

I2C DIP Switches

I2CAD or DA

Converters

I2C Serial EEPROM & RAM

LCD Drivers

(with I2C)

I2C Real Time Clock /

Calendar

I2C Temperature

Sensors

Other I²C Slaves / Masters

I²CBus Expander,

Hub or Repeater

I²C in hardware or software emulation

µCI²C Bus Controllers

PCA9541I2C Master Selector /

Demux

I2C Multiplexers & Switches 8

Bridges(with I²C)

VCC4

SPIUART

VCC5

VCC3

VCC2

VCC0

VCC1

Functions with I2C

I2C bus architecturedevices

Custom I2C hardware or software emulated

Other hardware

Page 146: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

146

I2C - Bus expander, hub or repeaterWhen to use?

Bus expander, hub or repeater

More I2C devices than the 400 pF maximum allowed by the I2C specification

Long bus wiring in point-to-point or multi-point applications

Different operating supply voltages or logic voltage levels within one system

Opto-isolation for safety or due to difference in ground plane

Isolating a section of a system that has lost its power supply

Insertion of unpowered cards into an active I2C bus on multi-point backplanes like those found in CompactPCI, VME, or AdvancedTCA systems

Page 147: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

147

Bus Buffers/Translator Family

Bus Buffers/Translator Family

RepeaterRepeater Hot-SwapHot-Swap ExtenderExtender

5-channel HubPCA9516/16A

5-channel HubPCA9516/16A

5-channel Hub ExpanderPCA9518A

5-channel Hub ExpanderPCA9518A

Voltage TranslatorPCA9509/17

Voltage TranslatorPCA9509/17

Voltage TranslatorPCA9512A

Voltage TranslatorPCA9512A

Quad Voltage TranslatorPCA9519

Quad Voltage TranslatorPCA9519

Offset-Free Hot-SwapPCA9508

Offset-Free Hot-SwapPCA9508

Long cableP82B96, PCA9600

Long cableP82B96, PCA9600

1 MHz speedPCA9600

1 MHz speedPCA9600

AdvancedTCAP82B715

AdvancedTCAP82B715

Opto-isolationP82B96

Opto-isolationP82B96

0.6 V thresholdPCA9511A

0.6 V thresholdPCA9511A

92μA Current SourcePCA9513A

92μA Current SourcePCA9513A

No acceleratorPCA9510A

No acceleratorPCA9510A

12 V Supply CapableP82B96, P82B715, PCA9600

12 V Supply CapableP82B96, P82B715, PCA9600

Voltage Translator OnlyPCA9306

Voltage Translator OnlyPCA9306

NEW

NEW

NEW

0.8 V thresholdPCA9514A

0.8 V thresholdPCA9514A

PCA9515/15APCA9515/15A

I2C - Bus expander, hub or repeaterProduct Overview

Page 148: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

148

I2C - Bus expander, hub or repeaterPCA9507 versus PCA9517/17A

PCA9507 is an upgrade replacement over PCA9517/17A with rise time accelerator for longer cable HDMI DDC application

Features PCA9507 PCA9517A PCA9517A-side with “rise time accelerator” for heavy load or long cable (up to 18 meters)*

Yes

2.7V to 5.5V

5 kV

No No

A-side supply voltage range 0.9V to 5.5V 0.9V to 5.5V

ESD HBM 5kV 2kV

PCA9507 and PCA9517/17A Comparison

* Note: Longer cable stretches clock low time and requires less than 400 kHz speed operation

Page 149: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

149

HDMI Cable

TMDS signals (HS Differential)

DDC Signals (I2C 100kHz)

CEC Signal (OD 10kHz)

HPD Signal (DC)

+5 VGND

PCA9517APCA9512APCA9517AGTL2002

Features• 2-wire bidirectional DDC Buffer• Dual supply rail for DDC level shift• Normal I/O swing on A-side• 5kV ESD HBM

LCD TV

Benefits• Isolates capacitance and noiseand level shift

• Incurs no offset voltage

I2C - Bus expander, hub or repeaterPCA9517A - HDMI DDC Buffer for LCDTV

Page 150: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

150

I2C - Bus expander, hub or repeaterPCA9507 HDMI DDC Buffer/Extender

Features BenefitsBidirectional bus buffer Isolate capacitance & noise on DDC line

Rise time accelerator on A-side Extend DDC line > 18 m

Strong A-side driver Increase noise margin on DDC line

5 kV ESD HBM Require no external discrete components

Dual Supplies Permit 5V DDC level shift

DVDR/STB Digital TV

PCA9507

Page 151: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

151

PCA9517A cable

PCA9517A

PCA9517A

PCA9517A

PCA9517A

PCA9517A

PCA9517A

:

PCA9517A

PCA9517A

Redundant Power Supply

Redundant Power Supply Ethernet SwitchPCA9517A buffers each end of the cable

Ethernet Switch

. .

I2C - Bus expander, hub or repeaterPCA9517A – High ESD I2C Bus Buffer

Features:

I2C bidirectional buffer

Dual supply rails– Voltage translation

Normal I/O voltage swing with high drive on A-side

5 kV ESD HBM

Benefits:

Isolates capacitance and noise for cable application

Incurs no offset voltage

Page 152: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

152

I2C Demo Boards

Page 153: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

153

I2C - Demo BoardsPCA9633 LED dimmer / blinker

Complete, ready-to-run test environment for dimming and blinking LEDsPreprogrammed with six operating modes, including color wash and random color, and can be reprogrammed to create custom color patternsThe board is configured with four LEDs, one each for red, green, blue, and amber.

http://www.standardics.nxp.com/support/boards/pca9633

OM6276

Page 154: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

154

I2C - Demo BoardsSC18IS602 I2C slave to SPI master

The demo board interfaces to the host processor with an I2C-bus interfaceAny combination of a total of four SPI devices or GPIOs can be controlled.The demo board supports up to 8 selectable I2C device addresses via jumpers. Can be used for demonstrating:

– SC18IS602: SPI master with speeds up to 1.8 Mbps using an internal oscillatorI2C-bus slave interfaces with speeds up to 400KHz.

– SC18IS603: SPI master with speeds up to 4Mbps using an external oscillator. I2C-bus slave interfaces with speeds up to 400KHz.

http://www.standardics.nxp.com/support/boards/sc18is602

OM6274

Page 155: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

155

I2C - Demo BoardsSC18IM700 UART to I2C master / GPIO bridge

The demo board contains:– SC18IM700 UART-to-I2C

master/GPIO bridge: controls the operation of the on-board I2C components

– PCA9533 I2C 4-bit LED dimmer: LEDs connected to it

– PCF8570 I2C RAM: storing data on demo board

– Additional LEDs are connected to the GPIO pins of the SC18IM700.

http://www.standardics.nxp.com/support/boards/sc18im700

OM6272

Page 156: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

156

I2C - Demo BoardsSC18IS600 SPI slave to I2C master / GPIO bridge

Connects to a host processor via an SPI-bus interface and connects to an I2C slave device via header pinsThe demoboard contains on-board LEDs, which can be controlled by the bridge's programmable GPIO. In addition, the demoboard allows the SPI host to operate an on-board I2C LED dimmer and an on-board I2C EEPROM via the SPI bus interface. Board contains:

– SC18IS600: features SPI speeds up to 1.2 Mbps using an internal oscillator.

The SC18IS600 on the board can be replaced by:

– SC18IS601: features SPI speeds up to 3 Mbps using an external oscillator using an external oscillator.

http://www.standardics.nxp.com/support/boards/sc18is600

OM6271

Page 157: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

157

I2C - Demo BoardsI2C 2005-1 kit: easy programming and evaluation of I2C devices

Board 2005-1 - I2C functions:– PCF8574 - GPIO– PCA9536 - GPIO– PCA9540B - I2C multiplexer– PCF85116-3 - EEPROM– PCF8563 - real time clock/calendar– PCA9538 - GPIO– PCA9551 - LED blinker– SA56004E - temperature sensor– PCA9543A - I2C switch– Two PCA9531 - LED dimmer– PCA9541/01 - 2-to-1 I2C master selector– SE98 - temperature sensor

Allows easy training / experimenting / testing / demonstration:

– Field application engineers– Designers– Educators

Software control via PC (USB)

http://www.standardics.nxp.com/support/boards/i2c20051

OM6275

Page 158: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

158

I2C - Demo BoardsPCA9564: I2C bus controller

Board demonstrates the I2C bus controller's ability to interface between a master and any master and slave devices connected to its I2C bus.Board contains:

– P89LV51RD2 - microcontroller (connected to PCA9564)

– PCA9564 - I2C bus controller– PCA9531 - 8-bit LED dimmer used as an I2C

target slave device– P89LPC932 - microcontroller (connected to

the I2C bus)– PCF85116 - EEPROM– PCA9554A - 8-bit GPIO (keyboard readout)– Sipex SP3223 - RS-232 transceiver: allows uP

devices to be in-system programmed

http://www.standardics.nxp.com/support/boards/pca9564

OM6277

Page 159: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

159

I2C - Demo BoardsLED dimmer board: demonstrates LED lighting and mixing operations

Two directly connected control cards:The LED Control Card contains:

– LEDs (red, green, blue, white, RGB)– Devices used to control LEDs

The keypad control card contains:– NXP P89LV51RD2 microcontroller:

interfacing with a NXP PCA9564 I2C-bus controller to generate the I2C commands

– 16-key keypad: inputs to the microcontroller which allows to control the RGB color mixing, generate fun light patterns, and emulate battery status monitoring

– Power is supplied by an external 9 V power supply or by a 9 V battery

http://www.standardics.nxp.com/support/boards/leddemo

OM6279

Page 160: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

160

I2C Support Information

Page 161: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

161

I2C - Support Information

Internet support (i.e. data sheets, application notes etc.)– General: http://www.nxp.com

– Standard ICs: http://www.standardics.nxp.com

– I2C logic devices ICs: http://www.standardics.nxp.com/i2c

– Demo boards: http://www.standardics.nxp.com/support/boards

Technical Support: [email protected]

Page 162: NXP PowerPoint template Guidelines for presentations · during the HIGH period of this clock pulse. Scenarios with a NOT-acknowledge (NACK) (SDA staying HIGH): 1. A receiver with

162