前言
在I2C虚拟项目中,只对DUT的master模式进行了验证,由于涉及不同模式/不同地址格式的读写传输,很容易混淆,故将master模式下的不同地址下的传输协议进行梳理。
1.基本概念
在描述传输协议之前,我们需要先知道transmitter和receiver,master和slave两组概念的区别。
Transmitter:指向总线发送数据的设备,它可以是向总线发起数据传输(称之为 master-transmitter),也可以是对master发送数据到总线后的响应(slave-transmitter);
Receiver:指从总线接收数据的设备,它可以是根据自身请求从总线上接收数据(master-receiver)或者是响应其他master的请求去接收数据(slave-receiver);
Master:指发起传输(START命令)、产生时钟信号和终止传输(STOP命令)的组件;
Slave:指被master寻址的设备。
比如DW_APB_I2C(DUT)想通过I2C总线发送一组数据并通过寻址找到设备A,A给出了ACK信号表明可以接收,那么这里DUT就是master transmitter,A就是slave receiver;比如DUT想要通过I2C总线读取一组数据,并传输了对应地址,B设备给出了ACK信号,这里DUT就是master-receiver,B设备就是slave-transmitter。
2.Master-Transmitter Protocol(写操作)
8bit字节格式传输,数据传输的字节数量没有限制。在master发送完地址位和读写位

本文详细介绍了I2C总线协议中的Master-Transmitter和Master-Receiver两种模式下的7bit与10bit地址传输协议。阐述了传输过程中START、STOP、RESTART信号的作用,以及数据传输中ACK/NACK信号的产生方式。
最低0.47元/天 解锁文章
783

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



