学习嵌入式的第四十三天——ARM——I2C

1. 简述线与特性是什么

在两个芯片链接的对应引脚上,当一方输出高电平时,则实际的电平高低由另一方决定

2. start信号与stop信号是什么样的

start:在时钟信号为高电平时的一个数据信号线上的下降沿

stop:在时钟信号为高电平时的一个数据信号线上的上升沿

3. 简述IIC通信时序(高地址优先)

根据时钟高电平只能采样数据,低电平只能修改数据的规则,可以很好的保证数据的稳定

主设备进行写:

在总线空闲状态下总线上的SCL和SDA处于高电平,想要通信的设备在SCL高电平时,SDA产生一个下降沿,为start信号,发送方发送从设备的地址与数据流向位(以写为例),接收方发送ACK,发送方接收到ACK后接着发送数据存储在寄存器中的地址,接收方发送ACK,发送方发送具体数据,每发送一个字节,接收方都应该进行一次应答,当发送方想要结束通信时,需要在ACK应答之后,在SCL高电平时产生一个SDA的上升沿,代表stop信号,结束这次通信。

主设备进行读:

在总线空闲状态下总线上的SCL和SDA处于高电平,想要通信的设备在SCL高电平时,SDA产生一个下降沿,为start信号,发送方发送从设备的地址与数据流向位(0:写),接收方发送ACK,发送方接收到ACK后接着发送数据存储在寄存器中的地址,接收方发送ACK,发送方发送stop信号,发送方接着重发start信号,再次发送从设备地址与数据流向位(1:读),从设备应答,从设备发送具体数据,每发送一个字节,主设备都应该进行一次应答,当主设备想要结束通信时,发送NACK应答之后,在SCL高电平时产生一个SDA的上升沿,代表stop信号,结束这次通信。

相关推荐
for_ever_love__16 小时前
python基础语法学习: 变量, 输入输出, 运算符
网络·python·学习
学习和思考16 小时前
非自动化专业如何自学PLC?我的6个月学习路线图
笔记·学习·自动化·学习方法
拾陆楼17 小时前
PT: DMSA辅助调tree报告前后级余量脚本
后端·学习
sbjdhjd18 小时前
大三网安秋招核心学习前言(AI 安全 + Web 漏洞 + 内网渗透全考点)
人工智能·网络协议·学习·安全·网络安全·开源·php
LccKyI19 小时前
C#学习day06(方法/函数及其关键字,附思维导图)
经验分享·学习·c#
xian_wwq20 小时前
【学习笔记】Loop Engineering,从手动提示到目标驱动自动化-13/16
笔记·学习·自动化
殷忆枫20 小时前
K210 BOX学习笔记:环境搭建及模型训练部署
学习
qq_1851986920 小时前
SpingBoot3入门学习-Web开发-三
java·数据库·学习
lifallen21 小时前
Avernet:Agent 的组织网络
人工智能·学习·ai·开源软件·ai编程
我爱cope21 小时前
【计算机网络 | 数据链路层2:差错检测与纠正:奇偶校验、校验和、CRC 分别怎么工作?】
网络·学习·计算机网络