二线制串行EEPROM应用

合集下载

AT24C04的原理与应用

AT24C04的原理与应用

4.2 I2C器件AT24C04的原理与应用I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。

I2C总线产生于上世纪80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。

I2C总线最主要的优点是其简单性和有效性。

由于接口直接在组件之上,因此I2C 总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。

总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。

I2C总线的另一个优点是,它支持多主控(multimastering),其中任何能够进行发送和接收的设备都可以成为主总线。

一个主控能够控制信号的传输和时钟频率。

当然,在任何时间点上只能有一个主控。

4.2.21 I2C总线的构成和信号类型一、I2C总线的构成I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。

在CPU 与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps,采用7位寻址,但是由于数据传输速率和应用功能的迅速增加,I2C总线也增强为快速模式(400Kbits/s)和10位寻址以满足更高速度和更大寻址空间的需求。

各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址。

在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。

CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。

这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。

二、I2C总线的信号类型I2C总线在传送数据过程中共有三种类型信号,它们分别是:起始信号、终止信号和应答信号。

AT24C32使用方法总结

AT24C32使用方法总结

2011-04-2916:56:58 分类:LINUXAT24C32是2-WireSerialEEPROM,容量为32Kbits(4096*8)。

利用该芯片可以模拟I2C总线,如果采用IO口来进行模拟,可以采用二线制(SCL、SDA),也可以采用三线制(WP、SCL、SDA)。

在编写驱动程序时,要分为两个层次。

第一、针对IIC总线的驱动部分。

第二、针对AT24C32的驱动部分。

DynamicC里面的IO模拟IIC函数库采用的是二线制,针对的芯片是24C02。

如果要用,就需要进行相应的改进。

下面把使用该芯片时注意的地方总结如下:1、各个引脚的含义A0-A2:地址线,用来选择slave器件。

WP:WriteProtect写保护,高电平拒绝写入,低电平可以写入,即低电平有效。

SCL:SerialClock串行时钟,用来指示什么时候数据线上是有效数据。

SDA:SerialData串行数据,用于数据传送2、关于WP脚二线制没有WP,也就是把WP置为低电平,始终写有效。

这样的问题是,在上电或调电的时候,可能会发生异常情况,对EEPROM内数据有所改动。

所以,如果有重要的数据,还是要采用WP引脚比较安全。

对AT24C32来说,WP置高,则只有四分之一受保护,即0x0C00-0x0FFF。

也就是说保护区为1KBytes。

对于低地址的四分之三,则不保护。

所以,如果数据较多时,可以有选择地存储。

不重要的数据则放在低四分之三区域,重要的数据则放在高四分之一区域。

看ICDatasheet,一定要仔细。

初次写测试程序时,发现WP不起作用,常有效。

用万用表测试,确实是高电平。

经过仔细阅读WP引脚说明,发现只有高四分之一区域可以写保护。

改变地址后,测试成功。

整个驱动函数也就修改成功了。

WP:Thewriteprotectinput,whentiedtoGND,,allwriteoperationstotheupperquand rant(8Kbits),WPisinternallypulleddowntoGND.3、关于读写流程AT24C32的数据地址必须要先发高字节地址,再发低字节地址。

I2C总线与EEPROM

I2C总线与EEPROM

I2C通信时序
• I2C总线规定了严格的数据通信格式,所有具有I2C总线 接口的器件都必须遵守。
• I2C总线上主机与从机之间一次传送的数据称为一帧, 由起始信号、数据传输部分和停止信号组成。数据传送 的基本单元为一位数据。对比UART的数据帧格式。
空闲状态:I2C总线的SDA和SCL两条信号线同时处于高 电平时,规定为总线的空闲状态。此时各个器件的输出级 场效应管均处在截止状态,即释放总线,由两条信号线各 自的上拉电阻把电平拉高。 起始信号:I2C 通信的起始信号的定义是 SCL 为高电平期 间, SDA 由高电平向低电平变化产生一个下降沿。
/* I2C 总线写操作, dat-待写入字节,返回值-从机应答位的值 *
bit I2CWrite(unsigned char dat) { bit ack; //用于暂存应答位的值 unsigned char mask; //用于探测字节内某一位值的掩码变量 for (mask=0x80; mask!=0; mask>>=1) //从高位到低位依次 { if ((mask&dat) == 0) //该位的值输出到 SDA 上 I2C_SDA = 0; else I2C_SDA = 1; I2CDelay.1 SCL/P1.0
>4.7μ s >4.0μ s
SDA/P1.1 SCL/P1.0
>4.0μ s
>4.7μ s
(a)启动
SDA/P1.1 SDA/P1.1 SCL/P1.0
>4.0μ s
(b)终止
SCL/P1.0
>4.0μ s
(c)发送0/发送应答位
(d)发送1/发送非应答位
I2C简介
• I2C总线支持多主(multi-mastering)和主从(master-slave)两 种工作方式。 • 多主方式下,I2C总线上可以有多个主机。I2C总线需通 过硬件和软件仲裁来确定主机对总线的控制权。 • 主从工作方式时,系统中只有一个主机,总线上的其它 器件均为从机(具有I2C总线接口),只有主机能对从机 进行读写访问,因此,不存在总线的竞争等问题。在主 从方式下,I2C总线的时序可以模拟 ,I2C总线的使用不 受主机是否具有I2C总线接口的制约。80C51 单片机本身 不具有I2C总线接口,可以用其I/O口线模拟I2C总线 。

EEPROM---AT24Cxx应用介绍

EEPROM---AT24Cxx应用介绍

EEPROM---AT24Cxx应⽤介绍结论:1、读写AT24CXX芯⽚,根据容量有多种⽅式:⼀、容量为AT24C01~AT24C16,⾸先发送设备地址(8位地址),再发送数据地址(8位地址),再发送或者接受数据。

⼆、AT24C32/AT24C64~AT24C512,⾸先发送设备地址(8位地址),再发送⾼位数据地址,再发送地位数据地址,再发送或者接受数据。

三、容量AT24C1024的芯⽚,是把容量⼀和容量⼆的⽅法结合,设备地址中要⽤⼀位作为数据地址位,存储地址长度是17位。

2、它的设备地址根据容量不同有区别: 1)、AT24C01~AT24C16:这⼀类⼜分为两类,分别为AT24C01/AT24C02和AT24C04~AT24C16;他们的设备地址为⾼7位,低1位⽤来作为读写标⽰位,1为读,0为写。

*1*、AT24C01/AT24C02。

AT24C01/AT24C02的A0、A1、A2引脚作为7位设备地址的低三位,⾼4为固定为1010B,低三位A0、A1、A2确定了AT24CXX的设备地址,所以⼀根I2C线上最⼤可以接8个AT24CXX,地址为1010000B~1010111B。

*2*、AT24C04~AT24C16的 A0、A1、A2只使⽤⼀部分,不⽤的悬空或者接地(数据⼿册中写的是悬空不接)。

举例:AT24C04只⽤A2、A1引脚作为设备地址,另外⼀位A0不⽤悬空,发送地址中对应的这位(A0)⽤来写⼊页寻址的页⾯号,⼀根I2C线上最⼤可以接4个,地址为101000xB~101011xB 2)、AT24C32/AT24C64:和AT24C01/AT24C02⼀样,区别是,发送数据地址变成16位。

注意事项:对AT24C32来说,WP置⾼,则只有四分之⼀受保护,即0x0C00-0x0FFF。

也就是说保护区为1KBytes。

对于低地址的四分之三,则不保护。

所以,如果数据较多时,可以有选择地存储。

常用串行EEPROM的编程应用

常用串行EEPROM的编程应用

常⽤串⾏EEPROM的编程应⽤常⽤串⾏EEPROM的编程应⽤(⼀)作者:温正伟原载:⽆线电本⽂所提供的实例程序:cdle070002.rarEEPROM是"Electrically Erasable Programmable Read-only"(电可擦写可编程只读存储器)的缩写,EEPROM 在正常情况下和EPROM⼀样,可以在掉电的情况下保存数据,所不同的是它可以在特定引脚上施加特定电压或使⽤特定的总线擦写命令就可以在在线的情况下⽅便完成数据的擦除和写⼊,这使EEPROM被⽤于⼴阔的的消费者范围,如:汽车、电信、医疗、⼯业和个⼈计算机相关的市场,主要⽤于存储个⼈数据和配置/调整数据。

EEPROM⼜分并⾏EEPROM和串⾏EEPROM,并⾏EEPROM器件虽然有很快的读写的速度,但要使⽤很多的电路引脚。

串⾏EEPROM器件功能上和并⾏EEPROM基本相同,提供更少的引脚数、更⼩的封装、更低的电压和更低的功耗,是现在使⽤的⾮易失性存储器中灵活性最⾼的类型。

串⾏EEPROM按总线分,常⽤的有I2C,SPI,Microwire总线。

本⽂将介绍这三种总线连接单⽚机的编程⽅法。

I2C总线I2C总线(Inter Integrated Circuit内部集成电路总线)是两线式串⾏总线,仅需要时钟和数据两根线就可以进⾏数据传输,仅需要占⽤微处理器的2个IO引脚,使⽤时⼗分⽅便。

I2C总线还可以在同⼀总线上挂多个器件,每个器件可以有⾃⼰的器件地址,读写操作时需要先发送器件地址,该地址的器件得到确认后便执⾏相应的操作,⽽在同⼀总线上的其它器件不做响应,称之为器件寻址,这个原理就像我们打电话的原理相当。

I2C总线产⽣80年代,由PHLIPS公司开发,早期多⽤于⾳频和视频设备,如今I2C总线的器件和设备已多不胜数。

最常见的采⽤I2C总线的EEPROM也已被⼴泛使⽤于各种家电、⼯业及通信设备中,主要⽤于保存设备所需要的配置数据、采集数据及程序等。

EEPROM 串口通信iic

EEPROM 串口通信iic

1、单片机控制功能2、UART通信的字符显示3、UART通信的波特率设置常见的存储器件的介绍常见存储器件:铁电,E2PROM,FLASH。

共同特点:掉电后数据不丢失各自特点:铁电:理论上可以无限次擦写,操作简单,但是容量小。

E2PROM:理论上擦写次数在30w到100w的不等,操作简单,容量中等。

FLASH:理论上擦写次数在10w到100w不等,容量很大,但操作较复杂,若要改变一个字节就要改变整个扇区。

I2C总线简介(1)1、I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备(特别是外部存储器件)。

2、I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。

3、I2C总线在传送数据过程中共有三种特殊类型信号,它们分别是:开始信号、结束信号和应答信号。

I2C总线简介(2)1、I2C总线最主要的优点是其简单性和有效性。

由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。

I2C总线的另一个优点是,它支持多主机,其中任何能够进行发送和接收的设备都可以成为主机。

一个主控能够控制信号的传输和时钟频率。

当然,在任何时间点上只能有一个主机。

2、I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。

各种I2C均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址。

EEPROM的硬件连接SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。

I2C的数据传送SCL为高电平期间,数据线上的数据必须保持稳定,只有SCL信号为低电平期间,SDA状态才允许变化。

void I2CStart(void){SDA = 1;Delay(); // 延时子程序SCL = 1;Delay();SDA = 0;Delay();SCL = 0;}I2C的结束程序:void I2CStop(void){SCL = 0;Delay();SDA = 0;Delay();SCL = 1;Delay();SDA = 1;Delay();}I2C的数据读写和应答I2C与UART不同的地方首先在于先传高位,后传送低位。

EEPROM

EEPROM

24XXXXX
VCC
8 Vcc 7 WP 6 SCL 5 SDA
(2) 至主器件
注 1: 在某些器件中,引脚 A0、A1 和 A2 在内部未连接。 2: 应使用一个去耦合电容(通常为 0.1 µF)来帮助滤除 VCC 上的小纹波。
2006 Microchip Technology Inc.
DS01028A_CN 第 1 页
检查应答
I2C 通信的众多优点之一,是在接收到每个字节后发送 应答位。除了正在进行写周期之外, Microchip 串行 EEPROM 在接收到每个字节后总是会发送该位低电 平,表明已收到有效的起始位和控制字节。因此,主器 件可以在整个运行期间监视接收到的 ACK 位,检测可 能发生的任何错误。在发送期间检查是否接收到 ACK 为 逻辑 1 (表明 EEPROM 没有响应)始终是一种好的做 法。此时,需要执行一个错误处理程序来确定器件为何 没有响应,并根据需要执行软件复位序列。
TTOTAL = (TLOAD + TWC) ⋅ #写w操rit作e o数perations
表 1: 器件
写入时间比较
页面大小 (字节)
写入的 字节数
写 模式 (1)
时钟速度 每次操作的装载 最坏情况 (2) 下的
(kHz)
时间 (ms) 总时间 (ms)
24LC01B
8
1字节Biblioteka 1000.285.28
每个器件都有规定的最坏情况写周期时间,通常列为 TWC。确保遵守写周期时间的一种简单方法是:在再次 访问 EEPROM 之前执行规定时长的延时。但是,器件 在短于最大规定时间内完成写周期是很寻常的事。因 而,用前面所述的延时方法会使 EEPROM 完成写操作 后的一段时间内主器件仍在等待。

串行EEPROM接口方法讲解

串行EEPROM接口方法讲解

串行EEPROM接口方法讲解串行EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种非易失性存储器,它可以通过串行接口与微控制器或其他设备进行通信。

串行EEPROM常用于存储配置信息、校准数据和日志记录等功能。

本文将对串行EEPROM的接口方法进行讲解。

串行EEPROM主要有两种接口方式:I2C和SPI。

I2C(Inter-Integrated Circuit)是一种串行通信协议,可以通过两根线进行通信;SPI(Serial Peripheral Interface)是一种串行通信协议,通信需要使用4根线。

下面将依次介绍两种接口的方法。

一、I2C接口方法I2C接口是一种简单、快速和可靠的通信协议,由两根线组成:SCL (串行时钟线)和SDA(串行数据线)。

I2C通信需要一个主设备(如微控制器)和一个或多个从设备(如串行EEPROM)。

1.初始化:首先,需要将SCL和SDA引脚配置为I2C模式,并设置串行EEPROM 的设备地址。

通常,每个串行EEPROM都有一个唯一的7位设备地址。

通过设置地址位上的电平(0或1),可以配置不同的从设备。

2.启动通信:为了开始I2C通信,主设备需要发出一个起始信号。

起始信号是由将SDA从高电平转换为低电平,然后将SCL从高电平转换为低电平形成的。

3.发送设备地址:主设备在发送起始信号之后,将需要访问的设备地址与通信位(读或写)发送到SDA线上。

这个8位的地址包括7位的设备地址和1位的读/写位。

4.等待应答:接下来,主设备需要等待来自串行EEPROM的应答信号。

在等待期间,主设备需要释放SDA线,并将SCL线保持在低电平。

5.发送数据:如果收到了来自串行EEPROM的应答信号,主设备可以继续通过I2C通信发送数据。

可以发送一个或多个字节的数据到串行EEPROM。

6.停止通信:当所有数据都发送完毕后,主设备发出停止信号,即将SDA线从低电平转换为高电平,然后将SCL线从低电平转换为高电平。

24C64资料说明

24C64资料说明

写保护功能说明
写保护引脚状态 WP=VBCCB WP=GND
存储器中被写保护的部分
S
S
FM24C32A
FM 24C64A
全地址(32K)
全地址(64K)
正常读写
存储器结构
FM24C32A,32K 串行电可擦除存储器:内部分为 128 FM24C64A,64K 串行电可擦除存储器:内部分为 256
页,每页 32 字节,以 12 位地址寻址。
B
ISB1 B
B
ISB2 B
B
ILIB
B
ILO B
B
V1
ILB
PB
V1
BIH
VOL2 B
B
VOL1 B
B
电源电压 电源电流 电源电流 等待态电流 等待态电流 输入漏电流 输出漏电流 输入低电平
PP
输入高电平 输出低电平 2 输出低电平 1
VBCC
=
B
5.0V,
在 400KHz工作频率下读
VBCC
=
B
注:1. 该参数由特性测试确定,产品未经 100%测试。
最大值 8 6
单位 pF pF
条件
VBI/O
=
B
0V
VBIN
=
B
0V
直流参数
推荐参数的适用工作条件:TAB B
=
B
-40°C
~
+85°C,VCB CB
=
B
+1.7V
~
+5.5V,(除非另有说明)。
符号
参数
测试条件
VCC B
B
ICC1 B
B
ICC2 B

基于LPC2106的IIC总线E2PROM的应用

基于LPC2106的IIC总线E2PROM的应用

基于LPC2106的IIC总线E2PROM的应用作者:袁易君来源:《中小企业管理与科技·中旬版》2008年第12期摘要:本文利用Proteus软件仿真的特点,提出在此平台上仿真设计IIC总线E2PROM芯片AT24C02在Arm7内核LPC2106中的应用,用实例说明了LPC21XX系列单片机的标准IIC 接口的使用。

关键词:Proteus 软件仿真 Arm7内核0 引言Proteus软件是一款主要面向8位及32位单片机软硬件设计的仿真平台,能实时仿真多种单片机芯片,如51单片机系列、AVR单片机系列、PIC单片机系列及Arm单片机系列等,可减少学习单片机的成本,又可达到良好的学习效果。

LPC2106是一款基于Arm7内核的32位单片机,具有非常小的尺寸和极低的功耗,片内具有128KB的Flash ROM,64KB的静态RAM,芯片本身具有标准的IIC串行接口,不需要像51单片机一样进行软件模拟,同时还具有其他一些8位单片机所不具备的功能,其应用前景将会越来越广泛。

1 LPC2106 I2C接口及24C E2PROM介绍LPC2106 I2C接口可配置为主机或从机,总线时钟频率可调整,最高支持400KHz总线频率,LPC2106在使用I2C总线的时候,要将P0.2、P0.3功能设置选择为SCL、SDA,并且总线上要接两个上拉电阻,阻值大小为几K左右,同时需要设置一些相关寄存器的内容选择工作方式。

24C系列串行EEPROM具有体积小、功耗低、工作电压允许范围宽等特点外,还具有型号多、容量大、二总线协议、占用I/O口线少、容量扩展配置极其灵活方便、读写操作相对简单等特点。

本系统中使用的是24C02(2kb),采用CMOS工艺,工作电压在1.8~5.5V之间,24C系列采用最多的封装形式是8脚PDIP封装,8 脚封装中A0、A1、A2为器件地址选择位,这3个引脚配置成不同的编码值,在同一串行总线上最多可扩展8片同一容量或不同容量的24C系列串行EEPROM芯片。

单片机课程设计-IIC总线式EEPROM存储器应用设计

单片机课程设计-IIC总线式EEPROM存储器应用设计

目录1 设计要求 (2)2 设计目的 (2)3 器件EEPROM的介绍 (2)3.1 EEPROM简介 (2)3.2 EEPROM24XX系列功能概述 (3)4 IIC协议的介绍 (3)4.1 IIC协议总线特征 (3)4.2 IIC协议工作原理 (3)4.3 IIC协议总线基本状态 (3)4.4 寻址约定 (5)5 EEPROM读写功能实现 (5)5.1写操作 (5)5.1.1 字节写操作 (6)5.1.2 页写入操作 (6)5.2 确认查询 (7)5.3 读操作 (7)5.3.1 当前地址的读操作 (8)5.3.2 随机读操作 (8)5.3.3 连续读操作 (9)6 具体设计过程 (10)6.1 程序流程设计 (10)6.2执行结果 (13)6.3 系统组成模块结构及功能 (15)6.3.1 函数定义 (15)6.3.2 主函数设计 (17)6.3.3 源程序 (19)7 设计心得体会 (27)8 参考文献 (28)IIC总线式EEPROM存储器应用设计1 设计要求利用51单片机和IIC总线式EEPROM芯片24C02进行存储器设计。

按下KEYWRITE1键,向24C02存储器写入数据1和2;按下KEYWRITE2键,向24C02存储器写入数据3和4;按下KEYREAD键,从24C02存储器读出刚写入的数据数据;写入数据显示在左两位,读出数据显示在右两位。

如图1.1所示。

图1.1 系统仿真运行图2 设计目的通过设计,了解IIC协议的基本原理,并对EEPROM读写功能的实现有个系统的概念,对其实现过程比较清楚。

同时,在设计中,巩固我们所学的理论知识。

3 器件EEPROM的介绍3.1 EEPROM简介EEPROM (Electrically Erasable Programmable Read-Only Memory),电可擦可编程只读存储器--一种掉电后数据不丢失的存储芯片。

EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。

IIC接口EEPROM的控制

IIC接口EEPROM的控制

I 2C 接口EEPROM 的控制AT24Cxx 是Atmel 公司生产的串行电可擦的可编程存储器EEPROM ,它采用8引脚双排直插式封装,具有结构紧凑、存储容量大等特点,可以在I 2C 总线上并接4片该芯片,特别适用于具有大容量数据存储要求的数据采集系统。

本设计以AT24C512为例,介绍该芯片的工作原理和与单片机的软硬件接口。

一.AT24C512简要介绍AT24C512是Atmel 公司生产的64KByte 串行电可擦的可编程存储器,内部有512页,每一页为128Byte ,任一单元的地址为16位,地址范围为0000~0FFFFH 。

它采用8引脚封装,具有结构紧凑、存储容量大等特点,可以在I 2C 总线上并接4片芯片,特别适用于具有大容量数据存储要求的数据采集系统。

因此在测控系统中被大量采用。

1、AT24C512的主要特性具有如下3种工作电压:5.0 (VCC = 4.5V to 5.5V)。

2.7 (VCC = 2.7V to 5.5V)。

1.8 (VCC = 1.8V to 3.6V)。

存储容量为65,536Byte 即512Kbit( 64Kx 8bit)。

与100kHz 、400kHz 、1MHz I 2C 总线兼容。

ESD 保护电压>4kV 。

数据可保存40年。

CMOS 低功耗技术,最大写入电流为3mA 。

采用施密特触发,可抑制输入噪声。

符合双向数据传送协议。

具有硬件写保护和软件数据保护功能。

具有128Byte 页写入缓存器。

自动定时的写周期。

具有8引脚DIP 及20引脚SOIC 封装等多种。

2、管脚说明AT24C512的管脚如图 所示各引脚的功能如下:A0、A1:地址选择输入端。

在串行总线结构中,如需连接4个AT24C512芯片,则可用A0、A1来区分各芯片。

A0、A1悬空时为0。

SDA :双向串行数据输入输出口。

用于存储器与单片机之间的数据交换。

SCL :串行时钟输入。

AT24C02中文手册

AT24C02中文手册

主要特性
� � � 工作电压:1.8V~5.5V 输入/输出引脚兼容 5V 应用在内部结构: 128x8(1K),256x8(2K),512x8(4K),1024x8(8K),2048x8(16K) � � � � � � 二线串行接口 输入引脚经施密特触发器滤波抑制噪声 双向数据传输协议 兼容 400KHz(1.8V,2.5V,2.7V,3.6V ) 支持硬件写保护 高可靠性:读写次数:1,000,000 次 – 数据保存:100 年
(WP) 引脚: 24C01/02/04/08/16 具有用于硬件数据写保护功能的引脚。当该引脚接 GND 时,允许正常 写保护 写保护(WP) (WP)引脚: 引脚:24C01/02/04/08/16 的读/写操作。当该引脚接 VCC 时,芯片启动写保护功能。
器件操作
时钟及数据传输:SDA 引脚通常被外围器件拉高。SDA 引脚的数据应在 SCL 为低时变化;当数据在 SCL 为高 时变化,将视为下文所述的一个起始或停止命令。 起始命令:当 SCL 为高,SDA 由高到低的变化被视为起始命令,必须以起始命令作为任何一次读/写操作命令 的开始(参见图 5)。 停止命令:当 SCL 为高,SDA 由低到高的变化被视为停止命令,在一个读操作后,停止命令会使 EEPROM 进 入等待态低功耗模式(参见图 5)。 应答:所有的地址和数据字节都是以 8 位为一组串行输入和输出的。每收到一组 8 位的数据后,EEPROM 都 会在第 9 个时钟周期时返回应答信号。每当主控器件接收到一组 8 位的数据后,应当在第 9 个时钟周期向 EEPROM 返回一个应答信号。收到该应答信号后,EEPROM 会继续输出下一组 8 位的数据。若此时没有得到主 控器件的应答信号,EEPROM 会停止读出数据,直到主控器件返回一个停止命令来结束读周期。 24C01/02/04/08/16 特有一个低功耗的等待模式。可以通过以下方法进入该模式:(a)上电 ()收 等待模式: 等待模式:24C01/02/04/08/16 到停止位并且结束所有的内部操作后。 在 器件复位:在协议中断、下电或系统复位后,器件可通过以下步骤复位:(1)连续输入 9 个时钟;(2) 每个时钟周期中确保当 SCL 为高时 SDA 也为高;(3)建立一个起始条件。

串行接口及应用3(TWI)资料

串行接口及应用3(TWI)资料

1、数据传输模式 TWI 可工作于4个不同的模式:主机发送器(MT)、 主机接收器 (MR)、从机发送器 (ST)及从机接收器 (SR)。 同一应用程序可以使用几种模式。 2、主机发送模式 为进入主机模式,必须发送START 信号。紧接着 的地址包格式决定进入 MT 或MR 模式。 如果发 送 SLA+W 进入MT 模式;如果发送SLA+R 则进入 MR 模式。 本节所提到的状态字均假设其预分频位为“0”。

位的话 ) 出现在主机寻址地址当中,并且数据方向位为
“1”(读)。然后TWI 中断标志置位,TWSR 则包含了相应 的状态码。
如果在传输过程中TWEA 复位,TWI 接口发送完数 据之后进入状态0xC0 或0xC8。接口也切换到未 寻址从机模式,忽略任何后续总线传输。从而主 机接收到的数据全为“ 1”。如果主机需要附加数 据位( 通过发送ACK),即使从机已经传送结束, 也进入状态0xC8。 TWEA复位时TWI接口不再响应自己的从机地址, 但是会继续监视总线。一旦 TWEA 置位就可以恢 复地址识别和响应。也就是说,可以利用 TWEA 暂时将TWI 接口从总线中隔离出来。
(3)TWI 状态寄存器(TWSR) Bits 7..3 – TWS: TWI 状态 Bit 2 – Res: 保留 Bits 1..0 – TWPS: TWI 预分频位
(4)TWI 数据寄存器(TWDR)
Bits 7..0 – TWD: TWI 数据寄存器
(5)TWI(从机)地址寄存器(TWAR)
1、两线串行接口总线定义
TWI 协议允许系统设计者只用两根双向传输线就可 以将128个不同的设备互连到一起。这两根线一是 时钟SCL,一是数据SDA。外部硬件只需要两个上 拉电阻,每根线上一个。所有连接到总线上的设 备都有自己的地址。TWI 协议解决了总线仲裁的问 题。 Vcc

FM24C128A FM24C256A

FM24C128A FM24C256A
引脚名称 A0~A2 SDA
SCL WP VCC GND NC
FM24C128A/256A 二线制串行 EEPROM
版本 1.6
引脚功能 器件地址输入 串行数据输入输出 串行时钟输入 写保护 电源 地 不连接
技术手册 3
图 1.结构框图
FM24C128A/256A 二线制串行 EEPROM
版本 1.6
上最多可寻址 8 个 128K/256K 的器件(器件寻址详 见器件寻址章节内容)。如果这些引脚浮空并且对电 路板上电源 VCC 端的耦合电容小于 3pF,则 A2、A1 和 A0 引脚在内部被拉低接地。如果对电源 VCC 端的 耦合电容大于 3pF,建议将地址引脚直接接地。
写保护(WP)引脚:FM24C128A/256A 具有用于硬件 数据写保护功能的引脚。当该引脚接 GND 时,允许正 常的读/写操作。当该引脚接 VCC 时,芯片启动写保护 功能。
B
SS B
B
V = V / V OUT B
B
CC SS B
B
PP
B
B
VBCC
=
B
3.0V,
IBOL
=
B
2.1
mA
VBCC
=1.7V,
B
IBOL
=
B
0.15
mA
1.7
-0.6 VBCCBx0.7
注:1.
V ILB
B
最小值和VBIHB最大值未经测试,仅供参考。
典型值
0.4 2.0
0.10 0.05
最大值
tRB
B
tFB
B
tBSU.STOB
tDH B
B
tWR B
B

串行EEPROM在单片机系统中的应用

串行EEPROM在单片机系统中的应用

Key word :1 c; sed己EEPROM 24Cxx; M 一l M olithiCInt 脚ted Cir uit syst m s , ; CS s o n e c e
I2C lnte: I ) 是Ph l p 公司开 ( c i is 发的双向 两线总 目 线,
前已经成为一项国际标准。全球有超过5 家以上的I 0 C 生产厂商提供超过10 种以上的符合 IZ 总线规范的不 0 C
Hale Waihona Puke 目 前许多新型的单片机已经内含 IZc 总线接口, 可 直接简单地控制IZ C器件。 但传统的M 一 单片机没 cs 5 1 有IZ 总线 c 接口, 绝大多数有关单片机的教材里也没有 如何应用串行EEPROM的内容。因此, 作为单片机应用
教学内容的补充, 笔者以A me 公司的A犯4C 1 为例, t l 0 编 制了基于 M 一 单片机对串行 EEP OM 的数据存取 CS 5 1 R
cePt, e oPer t ng P功 e O 24Cxx ser al pr cedur monol t ic integ ted cir uit EEPR0 M,t e content h t ai cedur f i o e ih a r c h concise pr ct ca , t e supplement content o 即plication cour e about monolit ic integ aIed cir uit 盯 a i l as h f s h r c stem p a plicat o . It is cer in pr tica s ,if can e f st mula ng student ,stu勿 inter st,d vel叩in th ug t, in a t c a l i i c o i r i t s e e g o h dr ing cf se t t e ma ket r quir men . w a o o h r e e t
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设计 应用
APPLICATION DESIGN
二线制串行EEPROM应用
滕云 大连东显电子有限公司
摘 要: 本文介绍了AT24C01系列二线制串行EEPROM的使用方法及串行EEPROM与单片机的软件接口,简要说明其在电机控制中 保存控制参数的应用
关键词: 串行EEPROM,二线制总线,参数保存
nop
setb SCL
nop Biblioteka nop nop nop
mov c, SDA
clr
SCL
pop b
ret
读一个字节:shin: setb SDA
push b
mov b, #8
; release SDA for ACK ; enforce SCL low and tAA ; ; raise ACK clock ; enforce SCL high ; ; ; ; get ACK bit ; drop ACK clock
2 二线制总线
二线制串行EEPROM通常为8脚器件,其管脚如下: SCL:串行时钟端。这个信号用于对输入和输出数据 的同步,写入串行EEPROM的数据用其上升沿同步,输出 数据用其下降沿同步。 SDA:串行数据(/地址)输入/输出端。这是串行双向 数据输入/输出线,这个引脚是漏极开路驱动,可以与任何 数目的其他漏极开路或集电极开路的器件"线或"连接。 WP:写保护。这个引脚用于硬件数据保护功能,当 其接地时,可以对整个存储器进行正常的读/写操作;当
图1 串行总线状态定义
① 总线非忙状态(A段) 数据线SDA和时钟线SCL都保持高电平。 ② 启动数据传输(B段) 当时钟线(SCL)为高电平状态时,数据线(SDA) 由高电平变为低电平的下降沿被认为是“启动”信号。只 有出现“启动”信号以后,其他的命令才有效。 ③ 停止数据传输(C段) 当时钟线(SCL)为高电平状态时,数据线(SDA) 由低电平变为高电平的上升沿被认为是“停止”信号。随
; make SDA an input
; bit count
70 SEMICONDUCTOR COMPONENTS APPLICATION 2008年03月
应用 APPLICATION DESIGN
设计
x43: nop
nop
nop
setb SCL
nop
3.3 应答信号查询检测 因为在内部定时写周期期间EEPROM的输入无效,这 就可以被用来决定写周期何时完成(这个特性可以被用 来提高总线传输率以达到最大化)。一旦写命令的“停 止”信号从微处理器发出,EEPROM就开始内部定时的写 周期。应答信号的查询检测可以立即开始,微处理器发出 “启动”信号后,紧跟着是含有写命令(R/W=0)的控制 字节(即EEPROM芯片地址)。如果EEPROM写周期仍然 在忙状态,那么就不会有应答信号。如果写周期结束,那 么EEPROM将给出应答信号,并且微处理器可以发送下一 个读或写命令。 各种读写格式如图2、图3、图4、图5、图6所示。
作的程序,晶振频率12MHz。
写一个字节:shout: push b
mov b, #8 ; bit counter
x42:rlc

; move bit into CY
mov SDA, c ; output bit
nop
; enforce SCL low and
其接电源时,芯片就具有数据写保护功能。被保护部分的 读操作不受影响,实际上这时被保护部分就可以作为串行 只读存储器使用。
A0,A1,A2:片选或页面选择地址输入。 SCL和SDA是基本的总线操作端,操作要根据串行总 线协议进行,启动位和停止位控制总线是否激活,操作总 是从启动位开始,在停止位结束。串行总线协议定义只有 在总线处于“非忙”状态时,数据传输才能被初始化。在 数据传输期间,只要时钟线为高电平,数据线都必须保持 稳定,否则数据线上的任何变化都被当作“启动”或“停 止”信号。 串行总线状态定义如下图:
3 串行EEPROM读写操作
EEPROM读写操作有多种方式,下面说明几个主要操作。
3.1 字节编程方式 在这种方式下,微处理器发送EEPROM存储单元地址 和一个字节数据至EEPROM。微处理器发出“启动”信号 后,紧跟着送4位总线器件恃征编码l010和3位EEPROM芯 片地址/页地址XXX以及写状态的R/W位(=0)到总线上。 这表示在接收到被寻址的EEPROM产生的一个应答位后, 微处理器将跟着送1个字节的EEPROM存储单元地址和要 写入的l个字节数据。所以由微处理器发送的下1个字节是 EEPROM存储单元的地址,并将被写入EEPROM片内的地 址指针。微处理器在接收到EEPROM收到存储单元地址后 又一次产生的应答位之后,微处理器才发送数据字节,并 把数据写入被寻址的存储单元。EEPROM再一次发出应答 信号,微处理器收到此应答信号后,便产生“停止”信
号。这个“停止”信号就激活内部定时编程周期,把接收 到的8位数据写入指定的EEPROM存储单元。在内部定时 写入期间所有的输入都无效,一直到写入操作完成以后才 能再进入新的编程周期。
3.2 读指定地址存储单元的数据
这种方式需要通过用“哑”字节写操作形式对要寻址 的EEPROM存储单元进行定位。微处理器先发送EEPROM 芯片地址(其中R/W=0)和EEPROM存储单元地址,并得 到EEPROM的应答信号后,微处理器就应该再发送一个 “启动”信号,通过发送带有R/W=l的EEPROM芯片地址 进入“读当前地址存储单元数据”的方式,EEPROM产生 相应的应答信号,并串行输出数据。同样在读完一帧数据 后,发送非应答信号,即输入逻辑1,接着需要发送一个 “停止”信号。
data setup
setb SCL ; raise clock
nop
; enforce SCL high
nop

nop

nop

clr
SCL ; drop clock
djnz b, x42 ; next bit
setb SDA
nop
⑤ 应答信号 每个正在接收数据的EEPROM在接到一个字节的数据 后,通常需要发出一个应答信号。微处理器必须产生一个 与这个应答位相联系的额外的时钟脉冲。在应答时钟脉冲 周期内,时钟脉冲为高电平、数据线是稳定的低电平时, 数据线必须被下拉。微处理器对EEPROM完成的最后一个 字节不产生应答位,但是应该给EEPROM一个结束信号。 在这种情况下,EEPROM应该结束数据线的高电平状态, 而使微处理器能够产生“停止”信号。注意,如果正在进 行内部定时编程周期,那么将不产生应答位。
71 SEMICONDUCTOR COMPONENTS APPLICATION 2008年03月
nop
mov c, SDA
rlc

clr
SCL
djnz b, x43
pop b
ret
; enforce SCL low and data setup ; ; ; raise clock ; enforce SCL high ; ; input bit ; move bit into byte ; drop clock ; next bit
5. 结语
二线制串行EEPROM操作简单,可以方便的在线写入 或读出。而它又有占用资源少,保存数据可靠的特点。我 们在电机速度控制中EEPROM的应用极大地方便了控制操 作,减少了控制难度。而用它在线保存测试参数,可以消 除产品初装时系统参数差异的影响,也可以消除因产品使 用一段时间后系统参数变化可能带来的控制性能下降。
图2 字节写入格式
69 SEMICONDUCTOR COMPONENTS APPLICATION 2008年03月
设计 应用
APPLICATION DESIGN
图3 页写入格式
图4 读当前地址单元数据格式 图5 读指定单元数据格式
图6 读连续单元数据格式
面是用MCS-51单片机汇编语言编写的几个对EEPROM操
68 SEMICONDUCTOR COMPONENTS APPLICATION 2008年03月
应用 APPLICATION DESIGN
设计
着“停止”信号的出现,所有的外部操作都结束。 ④ 数据有效(D段) 在出现“启动”信号以后,在时钟线为高电平状态
时数据线是稳定的,这时数据线的状态就表示要传送的数 据。数据线上数据的改变必须在时钟线为低电平期间完 成,每位数据占一个时钟脉冲。每个数据的传输都是由 “启动”信号开始,结束于“停止”信号。在“启动”与 “停止”信号之间传输的数据字节数由微处理器确定,并 且从理论上说字节数没有限制。
参考文献 [1] 窦振中.单片机外围器件手册.北京航空航天出版社,1998
(上接P67)
3. 结论
与其它低功率(1W和3W)LED方案相比,大功率、 5WMR16 LED参考设计能够显著提高亮度。因此,该设计 省去了为了满足MR16需求,在10W卤素灯方案中所需的 多个辐射源。
图7. 在5W MR16 LED灯驱动器的PCB丝网印刷层(顶层)上可以 看到直流电源的连接焊盘LED+和LED-。
4 EEPROM与单片机的连接
可以将串行EEPROM的控制线通过上拉电阻直接与单 片机双向I/O口线相连,仅占用两个口线。我们在一个电 机速度控制中使用AT24C02保存控制参数,包括不同速度 对应的PWM脉冲宽度、电机的比例调节系数等。这样这 些参数在断电时也不会丢失。而且也可以对参数进行在线 测试修正后保存到EEPROM中,来适应电机参数差异。下
1 引言
EEPROM是一种可以用电气方法在线擦除和在线编程 的只读存储器,写入的数据在常温下可以保持十年,一般 其擦写周期可达1万次以上。EEPROM芯片有两类接口: 并行接口和串行接口。并行EEPROM相对容量大、速度 快、功耗大、价格贵,但读写方法简单;串行EEPROM体 积小、功耗低、价格便宜,使用中占用系统信号线少,但 相对工作速度慢,读写方法稍复杂一些。对于那些需要存 放有时需要改变特征代码或参数的系统,通常所需要的字 节数和写入的次数不会很多,写入速度也没有太高要求, 这种情况下采用串行EEPROM是非常合适的。因此串行 EEPROM作为性价比比较理想的非易失存储器,在很多领 域得到应用,如消费类电子产品、汽车类电子产品、办公 自动化产品、通讯类电子产品、工业类电子产品等。下面 以AT24C01系列为例介绍二线制串行EEPROM的使用方法。
相关文档
最新文档