在单片机的应用中,可以利用串行存储器存储一些配置信息或者运行参数。本文介绍MSP430单片机与串行存储器芯片24LC02B的接口设计。
MSP系列单片机中,某些MSP430单片机(如MSP430F15X、MSP430F16X)带有I2C模块,利用单片机自带的I2C模块不仅很容易与串行存储器(本系统采用24LC02B)进行接口,而且接口非常简单,如下图1为系统框图:
图1(系统框图)
一、硬件电路的设计
系统的硬件系统相对简单,主要有电源电路、复位键控电路、串行存储器电路和单片机电路。由于电源电路和复位键控电路在扫描键盘电路中介绍过,在此不作详细介绍,读者可以参阅扫描键盘电路中的电路设计。
24LC02B芯片介绍
在介绍具体的电路之前,首先介绍24LC02B芯片。本系统介绍的24LC02B芯片是由Microchip公司生产的,该芯片具有以下特点:
采用单电源供电,电压范围为2.5v-5.4v
低功耗,工作时,典型的电流值是1mA,芯片不工作时,典型的电流值是1uA,
以256字节为单位组成一块,
I2C总线接口,
页写缓冲区高达8字节,
具有写保护功能,这样可以作为只读ROM使用,
数据可以保存200年以上,
为了便于硬件电路的设计,下面给出该芯片的管脚图,如图2所示:
图2(24LC02B芯片管脚图)
由图2可以看到,该芯片有8个管脚,这样使用起来比较简单,只需要配以简单的外围电路,下面是具体的管脚功能:
A0:地址线,用来进行器件寻址使用。
A1:地址线,用来进行器件寻址使用。
A2:地址线,用来进行器件寻址使用。
GND:电源地。
SDA:串行数据输入/输出脚,此管脚通常用一个电阻进行上拉。
SCL:串行时钟输入脚,由于在SCL上升/下降沿处理信号,要特别注意SCL信号的上升/下降时间,此管脚通常用一个电阻进行上拉。
WP:写保护管脚,如果该管脚接高电平,则处于写保护状态;如果该管脚接低电平,则可以进行读写。
Vcc:电源管脚。
2、串行存储电路
24LC02B主要通过I2C实现与单片机的链接,具体的电路如图3所示:
图3(串行存储电路)
由图3可以看到。24LC02B的第7管脚(写保护管脚)接地,使该芯片时钟处于可读可写状态。在实际设计的时候,也可以将WP管脚与单片机的1个一般I/O端口进行相接,通过单片机来控制24LC02B的写保护状态。24LC02B的A0、A1和A2都接地,表示该器件的地址是000。由于I2C是总线工作方式,该总线上可以挂有很多器件,所以总线上的每个器件都应该有自己的地址,这样才能实现寻址操作。24LC02B的SCL和SDA管脚分别接单片机(MSP430F169)的P3.3和P3.1进行连接,链接的方式是I2C总线方式。在设计时,需要将SCL和SDA分别通过一个10K的电阻将其电位拉高,以满足I2C的工作条件。此外,为了减小电源的干扰,还需在24LC02B的电源输入端加上一个0.1uF的电容滤波。单片机电路如图4所示:
图4(单片机电路)
二、软件的设计
该系统的软件主要就是24LC02B的读写程序。由于对24LC02B的读/写是通过I2C实现的,因此有必要先熟悉一下I2C协议。
您可以由此下载本系统的所有源程序:
用户377235 2014-12-22 13:23
用户1707737 2012-7-30 23:16
用户424228 2012-7-29 18:38
东莞元宝代理Microchip长电二三极管 2012-7-11 20:59
用户377235 2012-7-7 21:23
很好。。
用户211673 2012-7-6 09:43
用户862116 2012-7-5 22:02
用户1355886 2012-7-5 15:54
用户377235 2012-7-5 15:06