(1)I2c的简介和特性

发布者:以泉换泉最新更新时间:2023-06-19 来源: elecfans关键字:I2c  NXP  微控制器 手机看文章 扫描二维码
随时随地手机看文章

 I2C我是想全面深入的从嵌入式软件工程师的角度做个理解,刚刚还申请了一个专栏,这个好好写.
        学习技术从外文文档看起~~

        要全面了解I2C,可以从《I2C-bus specification and user manual》看起.I2C最初是由Philips提出的,那么这文档就是由NXP维护的.
        I2C总线被全球超过50个公司的1000+个ICs所使用,已然是一个世界标准.另外,I2C总线与多种不同的控制总线是兼容的,比如SMBus(系统管理总线),PMBus(电源管理总线),IPMI(智能平台管理总线),DDC(显示数据通道)以及ATCA(高级电信架构).如果没记错的话,linux中的I2C框架是完全支持SMBus的.
        我们接下来要了解I2C总线是如何工作的,在一个具体应用中如何设计.I2C的数据传输,握手以及总线仲裁机制都需要了解.I2C总线在每种操作模式下的时序和电气特性都需要了解,这里还是从嵌入式软件工程师的角度着重了解时序特性.
        I2C总线的特性:
        在消费电子,通信以及工业电子中,看起来不相关的设计中有很多类似的地方.例如,基本上每个系统都包括:
        1.一些智能控制,通常是单芯片的微控制器
        2.通用的电路:LCD和LED驱动器,远程IO口,RAM,EEPROM,RTC或者DACADC.
        3.面向应用的电路:比如收音机和视频系统的数字调谐和信号处理电路,温度传感器和智能卡.
        为了让这些共同之处对于系统设计者和设备厂商都有用,也为了最大化硬件的有效性和电路的简单性,Philips半导体开发了一个简单的双向2线的总线,实现了IC之间的有效控制.这个总线就被称为I2C总线.所有兼容I2C总线的设备都包含一个片上的接口,允许它们直接通过I2C总线进行通信.这个设计解决了在设计数字控制电路时带来的很多接口问题.
        下面是I2C总线的一些特性:
        1.只需要两根线,一个串行数据线(SDA)额一个串行时钟线(SCL).
        2.可以通过软件方式和一个唯一的地址来寻找到每一个连接到总线的设备,简单的主从关系一直存在.主机可以作为主机发送器或者主机接收器.
        3.它是真正的多主机总线,如果有两个或多个主机初始化数据传输,可以通过冲突检测和仲裁来防止数据被破坏.
        4.串行的8位双向数据传输在标准模式下达到100kb/s,快速模式下是400kb/s,超速模式下是3.4Mb/s.
        5.串行的8位单向数据在快速模式下可以达到5Mb/s.
        6.片上的滤波器可以保护数据完整性.
        7.总线上连接的最大IC数量由总线最大的电容所限制.
        系统设计者的好处:
        由于I2C总线是个是一个标准的总线,不需要额外的接口.所以在系统升级或者修改时,可以简单的换IC.
        厂商的好处:
        符合I2C总线的IC不仅帮助了设计者,同样给设备厂商很多好处,因为:
        1.I2C只有两根线,所以IC的pin脚会少,PCB的面积会小,成本会降.
        2.完整的I2C总线协议不需要地址译码器或其他逻辑电路.
        这只是一些好处.另外,符合I2C总线的IC会增加系统设计的灵活性.IC很容易升级,比如需要一个更大的ROM,只需要选择一个有更大ROM的微控制器就可以了.
        IC设计者的好处:
        微控制器的设计者经常要考虑输出pin脚.I2C协议允许在没有单独寻址信号和芯片使能信号的条件下各种外设的连接.另外,带I2C接口的微控制器在市场上更受欢迎,因为有很多外设可以选.
       
        第一部分就翻译这么多了,英语水平就只能这样了,下次就开始了解I2C总线协议了~

关键字:I2c  NXP  微控制器 引用地址:(1)I2c的简介和特性

上一篇:(2)I2c总线SDA\SCL以及开始终止条件
下一篇:S3C2440触摸屏驱动实例开发讲解

推荐阅读最新更新时间:2024-11-13 11:08

51单片机在智能时钟控制系统中的应用设计
随着电子技术产业结构调整,生产工艺的飞速发展,人们生活水平的不断提高,家用电器逐渐普及,市场对于智能时钟控制系统的需求也越来越大。本文所述智能时钟控制系统主要指时钟显示、时间设置、闹铃及家用电器定时开关机(可扩展功能)等控制系统。 本文采用进入市场时间早、总线开放、仿真开发设备多、芯片及其开发设备价格低廉、速度较快、电磁兼容性较好的MCS-51型单片机为核心实现智能时钟控制。 硬件系统设计 智能时钟控制系统以MCS-51兼容单片机AT89C51微处理器为核心,由时钟显示模块、定时控制模块、电源模块等电路组成。 AT89C51微处理器 AT89C51是一款采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-
[单片机]
51<font color='red'>单片机</font>在智能时钟控制系统中的应用设计
单片机如何读取0-10V传感器信号
如下图所示,使用两个电阻分压,阻值可取为2:1,分压后得到信号源1/3的电压,这样可以将0-10V之间变化的信号变成0-3.33V之间变化的信号。如下图所示,为最基本的电阻分压采样原理图。我使用了2K和1K电阻分压。 仿真波形如下图所示。 对上图进行完善,使用R3和C1构成低通滤波电路,用于滤除传输过程中的高频干扰信号,在PCB布局时电阻电容应靠近单片机ADC管脚。二极管D1为钳位二极管,用于保证在电路故障时(比如R2虚焊或者R2,R1电阻焊错位置等),或出现尖峰浪涌电压时,VF1可以保持在一个安全电压,不至于损坏单片机。电路中D1应选择导通压降低的肖特基二极管。 下图展示了,故意将R1和R2焊错位置时,二极管D1开始
[单片机]
51单片机结合NRF24L01对舵机进行无线控制
发送端程序如下: #include reg52.h #include intrins.h #include math.h typedef unsigned char uchar; typedef unsigned char uint; sbit MISO=P1^5; sbit MOSI=P1^4; sbit SCK=P1^3; sbit CE=P1^1; sbit CSN=P1^2; sbit IRQ=P3^3; sbit KEY1=P3^4; sbit KEY2=P3^5; sbit KEY3=P3^6; sbit KEY4=P3^7; #define TX_ADR_WIDTH 5 #define RX_AD
[单片机]
stm8s跳出中断程序c语言,STM8S I2C总线中断程序
/*========================================================================================================== 本源程序文件内部使用的一些操作指令的宏定义 ==========================================================================================================*/ /*-----------------------------------------------------------------------------
[单片机]
51单片机+编码器+42步进电机的源程序
前几天帮别做一个51的小东西需要编码器,结果发现网上编码器的程序比较不好找,自己根据别人一个巧妙的思路写了一个读编码器读数的程序,用LCD1602显示出来。里边还有使用L298N驱动42步进电机部分,可以参考一下。 单片机源程序如下: #include reg52.h typedef unsigned char uchar; typedef unsigned int uint; //LCD1602定义 #define LCD1602_DB P0 //LCD1602数据总线 sbit LCD1602_RS = P2^7; //RS端 sbit LCD1602_RW = P2^6; //RW端 sb
[单片机]
HOLTEK新推出BC68F2130/2140 Sub-1GHz射频发射OOK/FSK SoC Flash MCU
Holtek针对Sub-1GHz射频应用领域,推出全新射频发射SoC Flash MCU BC68F2130/2140,适用于315/433/868/915MHz等发射频带,支持OOK/FSK调变方式。发射功率由软件选择,最大可达+13dBm。应用领域包含各式开关遥控、办公室自动化以及智能家居无线控制应用。下面就随单片机小编一起来了解一下相关内容吧。 HOLTEK新推出BC68F2130/2140 Sub-1GHz射频发射OOK/FSK SoC Flash MCU BC68F2130/2140的MCU资源为2K / 4K×16 bits Flash Program ROM、256 Byte Data RAM、10-bit C
[单片机]
单片机嵌入式系统低功耗设计
  在嵌入式应用中,系统的功耗越来越受到人们的重视,这一点对于需要电池供电的便携式系统尤其明显。降低系统功耗,延长电池的寿命,就是降低系统的运行成本。   选用具有低功耗特性的单片机可以大大降低系统功耗。可以从供电电压、单片机内部结构设计、系统时钟设计和低功耗模式等几方面考察一款单片机的低功耗特性。   1.选用尽量简单的CPU内核   在选择CPU内核时切忌一味追求性能。8位机够用,就没有必要选用16位机,选择的原则应该是 够用就好 。现在单片机的运行速度越来越快,但性能的提升往往带来功耗的增加。一个复杂的CPU集成度高、功能强,但片内晶体管多,总漏电流大,即使进入STOP状态,漏电流也变得不可忽视;而简单的CPU内核不仅功耗
[单片机]
【GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(1)使用Keil开发GD32
目前市面通用的MDK for ARM版本有Keil 4和Keil 5:使用Keil 4建议安装4.74及以上;使用Keil 5建议安装5.20以上版本(注意:GD32E23x系列必须使用Keil5开发)。 1.1 在Keil4中添加GD32 MCU Device 1.1.1 从GD32官网下载相关系列插件。 下面以GD32F30x为例,在官网上下载MDK-ARM_AddOn_GD32F30x_V1.0.0.rar,如图所示: 1.1.2 双击解压安装至Keil 4的目录,一般都会默认选择,如若同时安装了Keil 4和Keil 5才需要手动选择。 1.1.3 安装成功后,重新打开Keil 4,则可以在File- Device
[单片机]
【GD32 <font color='red'>MCU</font> 入门教程】一、GD32 <font color='red'>MCU</font> 开发环境搭建(1)使用Keil开发GD32
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved