S5P6818内部集成了3个独立的I2C控制器
问题:mma8653芯片挂在了哪个I2C控制器上?
答:根据mma8653芯片连接的cpu管脚来推断 对应了CPU内部的I2C 2控制器
关于I2C总线 (谈谈对I2C的理解)
1 I2C总线定义
飞利浦开放的两线式串行同步总线
SCL: CLOCK 时钟线
SDA: DATA 数据线
2 I2C总线的特点
1)通信时只需要两条线 硬件互联成本低
2)I2C总线上可以存在多个主设备 多个从设备
3)总线上的通信的发起和终止都由主设备控制
4)每个从设备都有一个唯一的从设备地址(一般为7bit)
5) 支持总线冲突仲裁
I2C控制器通信的速率100Kb/s
I2C总线通信协议 (一定要会画图)
空闲状态时 SCL SDA默认为高电平
通信开始时 首先是主设备发送一个start信号
start信号,当SCL为高电平是 SDA出现一个下降沿
从高bit开始发送数据 发送数据时“低送高取”
低送高取, 当SCL为低电平是 SDA根据要发送的是0还是1 进行跳变,跳变位低电平或者高电平
接收方收到8bit数据后,要给发送方回应答信号(ACK)
ACK, 在第九个周期 SCL为高电平时, SDA为低电平(一定是被接收方拉低)
如果还有下一个字节数据要发送 从高bit开始发送数据, 发送数据时 “低送高取”
接收方接收方收到8bit数据后,要给发送方回应答信号(ACK)
。。。
发送方无数据发送是,主设备需要产生一个stop信号
stop, 当SCL为高电平时 SDA出现一个上升沿
问题:软件如何控制GPIOD6 GPIOD7形成相应的I2C通信时序?

本文深入解析S5P6818芯片内部集成的I2C控制器,重点讨论mma8653芯片与I2C2控制器的连接方式。阐述了I2C总线的工作原理,包括时序控制、通信协议及软件控制方法。同时,介绍了通过GPIOD6和GPIOD7实现I2C通信的具体配置。
最低0.47元/天 解锁文章
808

被折叠的 条评论
为什么被折叠?



