PCA9555详细学习

2022.01.27

控制寄存器和命令寄存器,及英文理解

一般8位作为地址,其中前四位时固定的,中间三位为地址配置,最后一位是读写位,即读是1,写是0

当地址位,正确应答之后,主机会发送一个控制字节,控制字节将会存在PCA9555的控制寄存器中,其中三个字节,将会定义操作以及内部的寄存器,控制寄存器能被读以及写,控制字节只有写的时候才发送

command其实就相当于相应的控制寄存器地址,比如00就是访问input port0的寄存器

0和1寄存器地址,仅仅反应了输入到pin的逻辑电平,不管其余寄存器配置如何,只要写0或者1,就代编要读取这些端口的输入的值

仅仅是读寄存器,写的化是没有效果的

输出端口寄存器,当配置为输出的时候,需要输出的逻辑电平,当配置为输入的时候,是当前已经锁存的逻辑状态,而不是当前输入的逻辑值

极性相反寄存器,输入端口的寄存器是否取反的配置 

端口输入输出配置寄存器

从上面简单的理解下来,可以很清楚的理解了这个器件的功能,结合I2C协议,举例如下:

1、主机发送从设备地址,从设备地址匹配,从设备发送ack,主机发送控制寄存器,比如发送01,再次理解成对出现的必要性,发送01,从机收到,且主机的控制器应该为读,此时,从机就会向主句发送input端口的状态

比如想将I2C的数据转换为并行输出的操作应该是什么样的?

2、主机发送从设备地址,从设备地址匹配,从设备发送ack,主机发送控制寄存器,发送07,配置寄存器,写数据全部写为0,配置为输出,然后重新起始,发送,02,并作为写,此时往PCA9555写内容就是往并口写数据,具体的输出可以见之前写的时序部分

 

 

 

 

 

版权声明:本文为CSDN博主「TheOneZn」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/TheOneZn/article/details/122723644

生成海报
点赞 0

TheOneZn

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

HT66F2390/STM32——AM2320温湿度传感器

1、说明 AM2320 数字温湿度传感器采用单总线、标准 I²C 两种通信方式。本文主要基于HT66F2390单片机,采用单总线通讯,实现AM2320传感器数据获取。关于AM2320传感器的使用,可参

正点原子 例程学习记录 实验四 串口实验

断断续续地看了一阵子 ,一度被工程下无数的文件劝退,今又看了开发指南,发现其实没有编译的工程包含的文件并不多,绝大部分文件都是编译后才出现的。其中还有很多是系统文件,不需要自

STM32开发笔记04---配置系统时间

架构图 思考重点 本文的目的是使用HSE外部晶振来配置系统时钟参考手册中的时钟树如何理解理解开发版初始化过程中对系统时钟的操作如何自行变更系统时钟 配置时钟源 在开发版STM32F429,以HSE, HSI, PLL作为主要