第十章i2c接口一般应用

第十章i2c接口一般应用

ID:19388170

大小:610.50 KB

页数:26页

时间:2018-09-28

第十章i2c接口一般应用_第1页
第十章i2c接口一般应用_第2页
第十章i2c接口一般应用_第3页
第十章i2c接口一般应用_第4页
第十章i2c接口一般应用_第5页
资源描述:

《第十章i2c接口一般应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第十章I2C接口的一般应用10.1I2C简介I2C(芯片间)总线接口连接微控制器和串行I2C总线。它提供多主机功能,控制所有I2C总线特定的时序、协议、仲裁和定时。支持标准和快速两种模式,同时与SMBus2.0兼容。I2C模块有多种用途,包括CRC码的生成和校验、SMBus(系统管理总线—SystemManagementBus)和PMBus(电源管理总线—PowerManagementBus)。根据特定设备的需要,可以使用DMA以减轻CPU的负担。I2C主要特点1》并行总线/I2C总线协议转换器。2》多主机功能:该模块既可做主设备也可做从设备。3》I2C主

2、设备功能:产生时钟;产生起始和停止信号。4》I2C从设备功能:可编程的I2C地址检测;可响应2个从地址的双地址能力;停止位检测。5》产生和检测7位/10位地址和广播呼叫。6》支持不同的通讯速度:标准速度(高达100kHz);快速(高达400kHz)。7》状态标志:发送器/接收器模式标志;字节发送结束标志;I2C总线忙标志。8》错误标志:主模式时的仲裁丢失;地址/数据传输后的应答(ACK)错误;检测到错位的起始或停止条件;禁止拉长时钟功能时的上溢或下溢。9》2个中断向量:1个中断用于地址/数据通讯成功;1个中断用于错误。10》可选的拉长时钟功能。11》具单字

3、节缓冲器的DMA。12》可配置的PEC(信息包错误检测)的产生或校验:用于最后一个接收字节的PEC错误校验。13》兼容SMBus2.0:25ms时钟低超时延时;10ms主设备累积时钟低扩展时间;25ms从设备累积时钟低扩展时间;带ACK控制的硬件PEC产生/校验;支持地址分辨协议(ARP)。14》兼容SMBus。10.2I2C功能描述I2C模块接收和发送数据,并将数据从串行转换成并行,或并行转换成串行。可以开启或禁止中断。接口通过数据引脚(SDA)和时钟引脚(SCL)连接到I2C总线。允许连接到标准(高达100kHz)或快速(高达400kHz)的I2C总线

4、。10.2.1模式选择I2C接口有四种模式选择,接口可以下述4种模式中的一种运行:1》从发送器模式2》从接收器模式3》主发送器模式4》主接收器模式该模块默认地工作于从模式。接口在生成起始条件后自动地从从模式切换到主模式;当仲裁丢失或产生停止信号时,则从主模式切换到从模式。允许多主机功能。10.2.2通信流主模式时,I2C接口启动数据传输并产生时钟信号。串行数据传输总是以起始条件开始并以停止条件结束。起始条件和停止条件都是在主模式下由软件控制产生。从模式时,I2C接口能识别它自己的地址(7位或10位)和广播呼叫地址。软件能够控制开启或禁止广播呼叫地址的识别。

5、数据和地址按8位/字节进行传输,高位在前。跟在起始条件后的1或2个字节是地址(7位模式为1个字节,10位模式为2个字节)。地址只在主模式发送。在一个字节传输的8个时钟后的第9个时钟期间,接收器必须回送一个应答位(ACK)给发送器。参考图10-1-1I2C总线协议图。图10-1-1I2C总线协议软件可以开启或禁止应答(ACK),并可以设置I2C接口的地址(7位、10位地址或广播呼叫地址)。I2C接口的功能框图如图10-1-2所示。图10-1-2I2C功能框图注:在SMBus模式下,SMBALERT是可选信号。如果禁止了SMBus,则不能使用该信号。10.2.

6、3I2C从模式默认情况下,I2C接口总是工作在从模式。从默认的从模式切换到主模式,需要产生一个起始条件。为了产生正确的时序,必须在I2C_CR2寄存器中设定该模块的输入时钟。输入时钟的频率必须至少是:1》标准模式下为:2MHz2》快速模式下为:4MHz一旦检测到起始条件,在SDA线上接收到的地址被送到移位寄存器。然后与芯片自己的地址OAR1和OAR2(当ENDUAL=1)或者广播呼叫地址(如果ENGC=1)相比较。注:在10位地址模式时,比较包括头段序列(11110xx0),其中的xx是地址的两个最高有效位。头段或地址不匹配:I2C接口将其忽略并等待另一个

7、起始条件。头段匹配(仅10位模式):如果ACK位被置’1’,I2C接口产生一个应答脉冲并等待8位从地址。地址匹配:I2C接口产生以下时序:1》如果ACK被置’1’,则产生一个应答脉冲2》硬件设置ADDR位;如果设置了ITEVFEN位,则产生一个中断3》如果ENDUAL=1,软件必须读DUALF位,以确认响应了哪个从地址。在10位模式,接收到地址序列后,从设备总是处于接收器模式。在收到与地址匹配的头序列并且最低位为’1’(即11110xx1)后,当接收到重复的起始条件时,将进入发送器模式。在从模式下TRA位指示当前是处于接收器模式还是发送器模式。从发送器在接

8、收到地址和清除ADDR位后,从发送器将字节从DR寄存器经由内部移位

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。