原创 工控主板支持铁电存储器的简易方案

2009-10-19 13:23 1089 4 4 分类: 工业电子

文章来源:http://www.emtronix.com/article/article2009328.html


    英创公司的ARM9 系列工控主板产品,对数据的记录均采用了基于NandFlash的文件系统,但在实际应用中,客户经常需要频繁的记录一些小块的重要数据,同时要求数据在掉电情况下不丢失,这时如果采用文件系统就不能完全满足需求。通常的解决办法是将数据直接存储在非易性存储器中(NVRAM)。NVRAM有两种基本类型,一是基于SRAM的传统NVRAM,另一种是近些年广泛使用的铁电存储器,与传统的基于SRAM技术的存储器相比,铁电存储器在信号接口、操作功耗方面有无可比拟的优势。目前在市场流行的有4Kb-256Kb铁电存储器产品,并有多种接口类型可供选择,包括I2C、SPI接口等,本文以Ramtron公司的FM24L256为例,介绍英创主板EM9160操作FM24L256的方法。

FM24L256非易失铁电存储器结构容量为32,768 x 8位,读/写次数无限制,掉电数据保存10年,无延时写入操作,采用I2C总线接口,总线频率可高达1MHz。同时具有工业级温度范围,低功耗操作等特点。EM9160 是英创公司的一款预装Windows CE 实时操作系统的高性价比ARM9 工控主板产品。EM9160 最多可支持16 位方向可独立设置的GPIO,这些GPIO 均可被用来仿真作为I2C的信号。

FM24L256为SOP8封装芯片,只需把2位I2C总线信号与EM9160的GPIO相连,即完成扩展硬件的连接。

EM9160工控主板对铁电存储器FM24L256的驱动程序描述如下:

#include 'EM9160_DIO_EX.h'

#define GPIO0 0x01
#define GPIO1 0x02
#define GPIO2 0x04
#define GPIO3 0x08
#define GPIO4 0x10
#define GPIO5 0x20
#define GPIO6 0x40
#define GPIO7 0x80
#define GPIO8 0x100
#define GPIO9 0x200
#define GPIO10 0x400
#define GPIO11 0x800
#define GPIO12 0x1000
#define GPIO13 0x2000
#define GPIO14 0x4000
#define GPIO15 0x8000
#define SCK GPIO6 // I2C时钟信号,可根据实际情况更改
#define SDA GPIO7 // I2C数据信号,可根据实际情况更改

实现SCK和SDA信号的操作函数:
......


[查看全文]


[论坛精华]


[常见问题]

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
4
关闭 站长推荐上一条 /1 下一条