下图摘自NXP的SAA7144的手册
在写操作中,DATA传送完后slave器件内地址会默认自增,直到master产生stop信号。在读操作中,DATA传送完后若master产生了应答信号,则slave器件内地址自增,master不产生应答信号意味着master不再接收新的数据。
以下请参考附件TI_I2C.zip中的文档
Devices on the I2C bus only drive the bus lines LOW by connecting them to ground; they never drive the
bus lines HIGH. Instead, the bus wires are pulled HIGH by pullup resistors, so the bus wires are HIGH when no
device is driving them LOW.
The I2C bus is bidirectional: the SDA line is used both for transmitting and receiving data. When a master
reads from a slave, the slave drives the data line; when a master sends to a slave, the master drives the data
line.
Under normal circumstances the master drives the clock line.The slave acknowledges the byte by pulling
SDA LOW. The master then sends a clock pulse to clock the acknowledge bit.
SCL线一直由master控制,SDA由数据发送方控制。硬件上,SDA和SCL开漏上拉,因此idle状态是高电平,芯片管脚可以将其拉低,因此,有应答对应数据0,无应答对应数据1。
参考http://hi.baidu.com/gilbertjuly/item/b67ef40a4863c7cd74cd3c09
相关推荐
标题中的"S32K144-I2C-MASTER"表明这是一个基于NXP S32K144微控制器的I2C主控器项目。S32K144是NXP半导体公司生产的一款高性能、低功耗的32位微控制器,广泛应用于汽车电子、工业控制等领域。I2C(Inter-Integrated ...
if(system->i2c.send_frame.mod==1)//说明本次中断之前是从模式,说明这是在从模式下发的起始位; { //EV5 p=I2C->SR1; I2C->DR=system->i2c.send_frame.add__L; //自动清除I2C_...
文件"www.pudn.com.txt"可能是提供资料来源或额外说明的文档,可能包含了I2C协议的详细规范、8051单片机的编程指南或其他相关资源链接。 总的来说,8051单片机实现模拟I2C通信需要对I2C协议有深入理解,同时需要...
DW_APB_I2C驱动还可能包含一些高级功能,比如模拟I2C,它在没有物理I2C总线的情况下,使用GPIO模拟I2C通信,以便于调试和测试。另外,驱动可能提供故障诊断工具,帮助开发者定位I2C通信问题。 总的来说,DW_APB_I2C...
FPGA实现模拟I2C协议的过程,包括三个模块,i2c_master_bit_ctrl.v完成位传输功能、i2c_master_byte_ctrl.v完成字节传输功能,i2c_master_top.v完成整个程序的控制功能,并提供给外部程序的接口。
本文主要讲述STM32F0和STM32F3系列微控制器的I2C定时配置工具使用说明。该工具被设计用于辅助用户根据I2C总线规范配置I2C定时参数,使得在地址匹配时,I2C外设可以作为低功耗模式下的唤醒源。 STM32F0和STM32F3系列...
描述中提到的“I2C的使用和相关说明,适用于海思平台,用于嵌入式linux开发”,意味着文档会详细阐述如何在海思平台的嵌入式Linux环境中集成、配置和使用I2C接口以及与其相关的PMIC。可能涵盖的内容包括I2C协议详解...
"I2C接口进入busy状态不能退出" I2C总线是微控制器STM32F103VDT6中的一种常用的通信接口,但是在实际应用中,I2C总线可能会进入busy状态不能退出,这将导致微控制器无法读写EEPROM,影响系统的可靠性。 问题描述:...
《CH341-I2C-LabVIEW应用说明更新》 在嵌入式系统和物联网技术日益普及的今天,I2C(Inter-Integrated Circuit)通信协议因其简单、高效而被广泛应用。CH341是一种常见的USB转串口/并口/I2C/SPI等接口芯片,它为...
使用说明 : 主程序要配置好I2C总线接口(I2C引脚功能和I2C中断,并已使能I2C主模式) 文件名称 : I2CINT.c 功能说明 : LPC2000硬件I2C中断方式软件包。 使用说明 : 主程序要配置好I2C总线接口(I2C引脚功能和I2C...
USB2I2C芯片在设计时还应考虑硬件规格说明,手册中的数据可能会有二进制(B)、十六进制(H)或者十进制数的区别。此外,所有引脚均为三态。 该芯片的上位机PC端提供了USBIOX.DLL动态库,使得开发人员可以使用VB、...
I2C(Inter-Integrated Circuit)总线是一种多主机串行计算机总线,由荷兰飞利浦半导体公司(现恩智浦半导体公司)于1980年代初设计和提出,主要用于连接低速外围设备到主板、嵌入式系统或者手机等电子设备上。I2C...
这说明会编译 `D:\workspace\visionsife\u-boot-simple\drivers\i2c` 目录下的 `i2c-uclass.c` 文件到U-Boot中。 另一个例子是 `CONFIG_SYS_I2C_DW=y`,这一选项对应的文件为 `D:\workspace\visionsife\u-boot-...
### 中文I2C/IIC技术详解 #### I2C总线规范概述 I2C(Inter-Integrated Circuit)总线是一种由飞利浦公司(现为NXP半导体)开发的两线式串行总线协议,用于轻量级、低成本的微控制器和其他设备之间的通信。I2C总线...
I2C总线上各信号的具体说明: * 开始信号:在时钟线(SCL)为高电平其间,数据线(SDA)由高变低,将产生一个开始信号。 * 停止信号:在时钟线(SCL)为高电平其间,数据线(SDA)由低变高,将产生一个停止信号。 *...
标题中的"Example_2803xI2C_eeprom.rar_28035_28035 i2c_28035的I2C_EEPROM"表明这是一个关于TMS28035微控制器通过I2C接口与外部EEPROM通信的示例程序。TMS28035是德州仪器(TI)公司生产的一款16位微控制器,广泛...
标签进一步明确了这个工具的关键特性,包括“USB转I2C总线”表示的是转换器的功能,“USB读写EEPROM”说明了软件的核心应用,而“USBtoI2C”和“USBTOI2C”是标签中的关键词,它们都指向了USB到I2C的转换过程。...
描述中的“基于ARM/STM32的I2C通信程序,测试可用”说明了这是一个已经过验证的程序,可以实现在基于ARM架构的STM32微控制器上通过I2C协议与EEPROM进行通信。这通常涉及到初始化I2C外设,设置合适的时钟速度,配置从...