MCP23017 由用于输入、输出和极性选择的多个 8 位配置寄存器组成。系统主器件可通过写入 I/O 配置位 (IODIRA/B)将 I/O 使能为输入或输出。每个输入或输出的数据都保存在对应的输入或输出寄存器中。输入端口寄存器的极性可用极性反转寄存器反转。所有寄存器都可由主系统读取。
16位I/O端口功能由两个8位端口(PORTA和PORTB) 组成。可配置为在 8 位或 16 位模式下工作。
有两个中断引脚 INTA 和 INTB,它们可以和各自的端口关联,也可以一起进行逻辑或运算,这样任一端口引起中断时,两个引脚都将激活。
功能框图
74HC595是一个8位串行输入、并行输出的位移缓存器。并行输出为三态输出。
PCF8574是CMOS电路,它通过两条双向总线(I2C)可使大多数MCU实现远程I/O口扩展。