一句话总结IIC协议

起始信号

在SCL为高的时候把SDA从高拉低

结束信号

反过来

等待ACK

发送完一个Byte的时候要等待从机发送的ACK,此时主机把SDA置为输入状态(高阻态),等待SDA被从机拉高

发送ACK/NACK

主机每读取完一个字节都要发送,如果读取的不是最后一个字节就发送ACK,如果是最后一个字节就发送NACK;ACK就是拉低SDA,NACK就是拉高SDA;

发送时序

拉低->写bit->拉高,最后拉低

读取时序

拉高->读bit->拉低,最后拉高

注:关于ACK

无论是等待ACK还是发送ACK,本质上都是发送方需要知道接收方是否收到了我发送的数据,所以主机发送完需要等待从机给ACK,从机发送完需要等主机给ACK

相关推荐
水利行业RTU手艺人2 小时前
RTU固件中的“数据保险箱”——离线数据补发系统设计
c++·stm32·单片机·物联网
2301_793121044 小时前
基于单片机的水平角度仪系统设计
单片机·嵌入式硬件
KaifuZeng4 小时前
通信与接口协议面试十、PCIe
单片机·嵌入式硬件·面试·通信与接口协议
lzx186488437024 小时前
【AH8966】可替代 KP3211 非隔离 AC110220V转12V 0.5A 降压转换芯片
人工智能·单片机·嵌入式硬件·集成测试·硬件工程·ic
csg11075 小时前
PIC单片机防破解:从硬件到软件的全面防护
单片机·嵌入式硬件·物联网·自动化
电化学仪器白超6 小时前
低阻域 ADC 与参考源选型理论分析
人工智能·python·单片机·嵌入式硬件·自动化
小小的代码里面挖呀挖呀挖6 小时前
杰理蓝牙耳机开发--LE Audio与游戏耳机应用
笔记·单片机·物联网·学习
张海森-1688207 小时前
怎么算进程 总共运行时间
单片机
bu_shuo7 小时前
STM32-BOOT的三种启动方式
stm32·单片机·嵌入式硬件
sramdram9 小时前
低功耗MCU芯片电机控制专用
单片机·嵌入式硬件·mcu·低功耗mcu·mcu芯片