i2c总线定义i2c(inter-integrated circuit)总线是一种由philips公司开发的两线式串行总线,用于连接微控制器及其外围设备。i2c总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。
i2c总线特点i2c总线最主要的优点是其简单性和有效性。由于接口直接在组件之上,因此i2c总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可高达25英尺,并且能够以10kbps的最大传输速率支持40个组件。i2c总线的另一个优点是,它支持多主控(multimastering), 其中任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控。
i2c总线工作原理总线的构成及信号类型
i2c总线是由数据线sda和时钟scl构成的串行总线,可发送和接收数据。在cpu与被控ic之间、ic与ic之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,i2c总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。cpu发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。
i2c总线在传送数据过程中共有三种类型信号, 它们分别是:开始信号、结束信号和应答信号。
开始信号:scl为高电平时,sda由高电平向低电平跳变,开始传送数据。
结束信号:scl为高电平时,sda由低电平向高电平跳变,结束传送数据。
应答信号:接收数据的ic在接收到8bit数据后,向发送数据的ic发出特定的低电平脉冲,表示已收到数据。cpu向受控单元发出一个信号后,等待受控单元发出一个应答信号,cpu接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。
这些信号中,起始信号是必需的,结束信号和应答信号,都可以不要。
目前有很多半导体集成电路上都集成了i2c接口。带有i2c接口的单片机有:cygnal的 c8051f0xx系列,philipsp87lpc7xx系列,microchip的pic16c6xx系列等。很多外围器件如存储器、监控芯片等也提供i2c接口。
i2c总线操作i2c规程运用主/从双向通讯。器件发送数据到总线上,则定义为发送器,器件接收数据则定义为接收器。主器件和从器件都可以工作于接收和发送状态。 总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(scl)控制总线的传输方向,并产生起始和停止条件。sda线上的数据状态仅在scl为低电平的期间才能改变,scl为高电平的期间,sda状态的改变被用来表示起始和停止条件。
控制字节
在起始条件之后,必须是器件的控制字节,其中高四位为器件类型识别符(不同的芯片类型有不同的定义,eeprom一般应为1010),接着三位为片选,最后一位为读写位,当为1时为读操作,为0时为写操作。
写操作
写操作分为字节写和页面写两种操作,对于页面写根据芯片的一次装载的字节不同有所不同。
读操作
读操作有三种基本操作:当前地址读、随机读和顺序读。图4给出的是顺序读的时序图。应当注意的是:最后一个读操作的第9个时钟周期不是“不关心”。为了结束读操作,主机必须在第9个周期间发出停止条件或者在第9个时钟周期内保持sda为高电平、然后发出停止条件。
i2c总线应用目前有很多半导体集成电路上都集成了i2c接口。带有i2c接口的单片机有:cygnal的 c8051f0xx系列,三星的s3c24xx系列,philipsp87lpc7xx系列,microchip的pic16c6xx系列等。很多外围器件如存储器、监控芯片等也提供i2c接口。
举常i2c器件/i2c device1、存储器类: atmel公司的at24cxx系列eeprom;
2、i2c总线8位并行io口扩展芯片pcf8574/jlc1562;
3、i2c接口实时时钟芯片ds1307/pcf8563/sd2000d/m41t80/me901/isl1208/;
4、i2c数据采集adc芯片mcp3221(12bitadc)/ads1100(16bitadc)/ads1112(16bitadc)/max1238(12bitadc)/max1239(12bitadc);
5、i2c接口数模转换dac芯片dac5574(8bitdac)/dac6573(10bitdac)/dac8571(16bitdac)/;
6、i2c接口温度传感器tmp101/tmp275/ds1621/max6625
usb转i2c专用芯片:usb2i2c
usb转i2c demo演示版
usb2i2c是一个usb总线转i2c总线i2c/iic/twi/smbus的接口芯片,通过usb2i2c芯片可以非常方便地实现pc机usb总线和下位机端i2c接口(即iic或twi总线:scl 线、sda 线)之间的通信。
usb2i2c芯片上位机pc端提供简单易用的usbiox.dll动态库调用,可以方便地被vb,vc,delphi,labview,bcb等上位机开发工具调用。相关例程在usbio公司网站可以找到。
usb2i2c功能特点:
●全速usb设备接口,兼容usb v2.0。
●外围元件简单,只需1个12m晶体和2个电容。
●低成本,可以通过i2c总线直接实现上位机与下位机之间的连接,无需辅助mcu。
●上位机软件能够实现灵活实现i2c/iic/twi总线协议的各种操作。
●作为i2c总线host/master 主机端。
●i2c接口提供scl和sda信号线,支持scl时钟4种不同传输速度:100khz/400khz/750khz。
●采用ssop-20小型封装。
电池连接器的优势有哪些
小米MIX2曝光 继续采用全面屏设计,仍由斯塔克操刀设计
新能源技术布线基座的功效说明
综合管廊通信传输之承载光纤环网解决方案
什么是串口?什么是并口?串口与并口有什么区别?
I2C总线详解
firefly Face-RK3399主板的接口简介
国产5G射频收发芯片研制成功 破风8676乘风破浪而来
显示模组量利双增 芯瑞达上半年扣非净利润增长72%
高精度三维扫描和3D打印在竞品分析中的应用
辊压机轴磨损原因及修复方法
高光谱成像技术在海洋生态监测中的应用
维视智造激光焊视觉解决方案满足工业生产的需求
怎么设计逐次逼近型模数转换器的驱动电路
什么是接地回路?了解一下接地回路
CC2530 ZigBee Light Link开发套件的特点介绍
参与新基建,为下一代城市建设探索全新范式
MRAM缓存可行性比SRAM更高
特斯拉Model X/Model S大涨价!恐人民币与美元的汇率波动
智能插座有什么好处