Other Parts Discussed in Thread: TCAL6416, TXE8124, TXE8116
Tool/software:
FAQ: Logic and Voltage Translation > IxC and SPI >> What is the Difference Between I2C and SPI IO Expansion?
Both I2C and SPI I/O expansion solve the fundamental problem of I/O shortages. An MCU may run out of usable I/O's and therefore needs I/O expansion by using either the I2C bus or SPI protocol. The main differences between the two come down to the peripheral's features. We can analyze two devices in the market today that describe the main differences between using I2C vs. SPI I/O expansion when it comes to TCAL6416 and TXE81xx (TXE8116 / TXE8124 / TXE8148).
Spec | I2C - TCAL6416 | SPI - TXE8116/24/48 |
Voltage Range | 1.08 V to 3.6 V | 1.65 V to 5.5 V |
Data Rate | 1 MHz | up to 10 MHz |
# of wires required for communication? | 2 | 4 |
IO Count | 16 | 16 / 24 / 48 |
Dual Supply? | Yes | No |
/RESET? | Yes | Yes |
/INT? | Yes | Yes |
Requires Addressing? | Yes, ADDR pin gives 2 unique addresses | No, requires separate CS line for each IO expander (one CS for daisy chaining) |
Ambient Temperature? | -40C to 125C | -40C to 125C |
ICC (Standby Current) | 14 uA | 26 uA |
5V Tolerant I/O's? | Yes | Yes |
Fail-safe features? | No | Yes |
Daisy Chain? | n/a | Yes |
VOL and IOL |
VOL = 0.2V IOL = 8 mA |
VOL = 0.15 V IOL = 8 mA |
Multi-Port Set Feature? | No | Yes |
Device ID Register? | No | Yes |
Push-Pull / Open-Drain Register? | Port-wise | Individual Pin |
Bus Holding? | No | Yes |
Smart Interrupts / Latchable Inputs? | Yes | Yes |
Interrupt Masking | Yes | Yes |
Input Glitch Filter | No | Yes |
Software Reset | Yes | Yes |
HBM / CDM |
4000V HBM 1000V CDM |
2000 HBM 1000V CDM |
Package Types |
TSSOP (24): 7.8 mm x 6.4 mm VSSOP (24): 6.1 mm x 4.9 mm WQFN (24): 4 mm x 4 mm |
VSSOP (32): 8 mm x 5 mm VQFN (32): 5 mm x 5 mm VSSOP (24): 6 mm x 5 mm VQFN (24): 4 mm x 4 mm |
These are some of the spec differences between the current I2C I/O expanders and newly released SPI I/O expanders.
The TXE81xx devices offer more overall functionality on the I/O pins over the agile I/O capabilities of I2C. TXE devices can operate at much higher speeds, and can operate up to 48 I/O's depending on the variant chosen.