I2C(Inter-Integrated Circuit)总线是内部整合电路的称呼,I²C的正确读法为"I-squared-C",它是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点。
I2C总线特点 I2C总线最主要的优点是其简单性和有效性。由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。I2C总线的另一个优点是,它支持多主控,其中任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控。
K60芯片的I2C编程基本方法 I2C模块的操作,主要有初始化,发送数据,接收数据等。 初始化的过程一般有以下几个步骤: (1)使能I2C模块时钟,配置I2C引脚; (2)配置I2C通信速率; (3)设置其他工作属性,并使能I2C模块工作;
除活动所发的书上的几个特征之外K60的I2C 模块的还有这些特征: •软件可选择应答位 •调用地址判断中断 •开始和结束信号产生和检测 •重新开始信号产生和检测 •应答位产生和检测 •总线忙检测 •一般调用识别 •范围可支持从机地址
K60 I2C模块的初始化(从机) 步骤1 写: 控制寄存器 2 • 使用或不是用普通通信 • 选择10-bit 或 7-bit 地址模式 步骤2. 写: 地址寄存器 1 设置从机地址 步骤3. 写: 控制寄存器 1 启动 I2C 模块和中断 步骤4. 初始化RAM 变量 (IICEN = 1and IICIE = 1) 发送数据 步骤5. 在下表中初始化RAM 变量接收程序
模块初始化(主机) 步骤1. 写: 频率驱动寄存器设置I2C 波特率 步骤2. 写: 控制寄存器 1 启动 I2C 模块和中断 步骤3. 初始化RAM 变量 (IICEN = 1and IICIE = 1) 发送数据 步骤4. 在下表中初始化RAM 变量接收过程 步骤5. 写: 控制寄存器 1 启动 TX 步骤6. 写:控制寄存器1 启动 MST (主机模块) 步骤7. 写: 有从机目标地址的数据寄存器(LSB 字节决定主机是接收还是发送)
|