接前一篇文章:TCA9555芯片手册解读(4)
二、详述
6. 控制寄存器和命令字节
在成功确认地址字节后,总线主设备发送一个命令字节,该命令字节存储在TCA9555的控制寄存器中。此数据字节的三位表示将受影响的操作(读取或写入)和内部寄存器(输入、输出、极性反转或配置)。该寄存器可以通过I2C总线进行写入或读取。命令字节仅在写入传输期间发送。
一旦发送了命令字节,被寻址的寄存器将继续被读取访问,直到发送了新的命令字节。
7. 寄存器描述
- Registers 0 and 1 (Input Port Registers)
输入端口寄存器(寄存器0和1)反映引脚的输入逻辑电平,无论引脚是由配置寄存器定义为输入还是输出。其只对读取操作起作用。对这些寄存器的写入无效。默认值X由外部应用的逻辑电平决定。
在读操作之前,写传输与命令字节一起发送,以向I2C设备指示接下来将访问输入端口寄存器。
- Registers 2 and 3 (Output Port Registers)
输出端口寄存器(寄存器2和3)显示了被配置寄存器定义为输出的引脚的输出逻辑电平。此寄存器中的位值对定义为输入的引脚没有影响。反过来,从该寄存器读取的值反映了控制输出选择的触发器中的值,而不是实际的引脚值。
- Registers 4 and 5 (Polarity Inversion Registers)
极性反转寄存器(寄存器4和5)允许配置寄存器定义为输入的引脚的极性反转。如果此寄存器中的某个位被设置(用1写入),则相应端口引脚的极性将反转。如果此寄存器中的某个位被清除(用0写入),则相应端口引脚的原始极性将保留。
- Registers 6 and 7 (Configuration Registers)
配置寄存器(寄存器6和7)配置I/O引脚的方向。如果此寄存器中的某个位设置为1,则相应的端口引脚将作为高阻抗输出驱动器的输入启用。如果此寄存器中的某个位被清除为0,则相应的端口引脚将作为输出启用。
更多内容请看下回。