|
|
| | -文章搜索 - 最新文章 - | |
单片机大容量FLASHRAM的扩展 |
| 发布时间:2006年5月19日 点击次数:469 |
| 来源:电子产品世界 作者:北方交换大学 史红梅 余祖俊 |
微机监控设备常常需要对监控的数据进行实时记录,以便于事后分析处理,为事故分析、设备故障诊断和维修提供准确可靠的信息,如飞机“黑匣子”、列车“运行记录器”等。数据信息的记录需要大数据容量和实时快速的读写速度,以及在掉电和复位等干扰下的可靠的数据保护。现在一般采用非易失性RAM(NVRAM)为存储介质,其缺点是没有硬件和软件写保护,在强干扰下,程序误写的概率大。 新型闪速存储器(FLASHRAM)由于同时具有EPROM的可编程能力和EEPROM的电可擦写功能,又能像SRAM一样进行随机快速访问,因而越来越多的受到国内外的广泛关注和应用。28F040是一个容量为512K×8Bit可块擦除、字节编程的EEPROM,其擦除、编程电压均为5V。 美国SST公司FLASHRAM28S040的性能特点及技术参数 (1)单电源5V供电 (2)容量512×8Bit (3)数据保存时间大于10年 (4)重复擦写次数典型值100,000次 (5)可分块擦除每块256字节 (6)可进行硬件及软件定写保护 (7)快速读取时间(150~200)ns 其引脚功能如下:A0~A18为地址线,A0~A7选择一块数据中的某个字节,A8~A18是块地址。DQ7~DQ0为数据I/O总线,读周期输出数据,在写周期接收数据。CE为片先线,低电平时芯片被选中。OE为输出使能端。WE为写信号使能端。VCC为电源,接+5V;VSS接地。 28SF040是一个容量为512Kbyte的CMOS快速闪存,可块擦除、字节编程的EEPROM,与现存的EPROM、EEPROM兼容。它非常适合用程序和数据重复写入的场合。对这种系统的应用来说,28SF040可提高性能和稳定性。 FLASHRAM与80C196单片机接口实例 28SF040是容量并行存储器共计512Kbyte,而80C196全部寻址空间仅为64Kbyte,因此直接寻址大于64Kbyte的存储器是不行的,需要采用分而扩展技术,即CPU只提供大容量存储器的低位地址线,如A0~A12,而高位地址线A13~A18则通过扩展的CPU的I/O口来分页寻址。 1.分页扩展28SF040原理框图 图1中单片机采用Intel垢80C196,其P1口的P1.0~P1.5来控制分页码*(0~63)。74HC138译码给28SF040的片选,其地址空间为8000H~9FFFH(也可以是4000~5FFFH等其他CPU 8K的地址空间),图中74HC373为地址锁存器。 [A15,A14,A13]通过138译码后形成8Kbyte空间的译码线对28SF040进行片选。 28SF040共512Kbyte的空间,可分为64个8Kbyte,即64页,每页8Kbyte的空间。其中,28SF040的[A12,A11,…,A0]地址线直接与CPU的[A12,A11,…,A0]相接,高位地址线[A18,A17,A16,A15,A14,A13]通过CPU P1口的[P1.5,P1.4,P1.3,P1.2,P1.1,P1.0]进行页选。 2.FLASHRAM指定空间的寻址 在数据记录和转储过程中,有时需要对FLASHRAM特定的地址单元进行读写操作,如FLASHRAM的软件写保护等。下面以对FLASHRAM的红外线对地址15555H单元寻址为例,介绍对特定地址寻址。 15555H是FLASHRAM28SF040的绝对地址,对于CPU来说,其寻址包括两部分,一是CPU的直接寻址区,即地址线A0~A12,直接和FLASHRAM的地址线A0~A12相接,其值为[1010101010101],另一部分是CPU的译码地址,即地址线A13''~A15'',没有和FLASHRAM相接,用于系统译码片选FLASHRAM,其值为[100],因此CPU的地址为[1001010101010101]=9555H。 P1口直接和FLASHRAM的A13~A18相接,等于[001010]=0AH。 FLASHRAM的软件操作 FLASHRAM的读写包括块擦除(Sector_Erase)、芯片擦除(Chip_Erase)、字节编程、复位、读ID号、软件数据写保护、软件数据写保护打开。其命令字如下表:
(1)进行块擦除操作首先要写一个特征字,然后再发送块擦除命令。特征字为20H,表明以下将擦除一块数据区中256个字节的内容。块擦除命令为20H,其操作在写信号的上升沿开始。 (2)芯片擦除操作的特片字和命令字均为30H,其操作将擦除28SF040全部内容。 (3)字节编程操作的特征字为10H。 例如,对某一字节的写入,应首先判断芯片是否处于写保护打开状态(Unprotected),然后判断是否到了新的一页即下一页,如果是,先把此页全部内容擦除。然后写特征字10H,写数据DATA,之后进行两次读操作,若读出内容相同,则认为该字节已写入数据完成;若D7状态跳变,则说明写过程还未完成。 (4)复位命令能够安全地终止擦除或编程命令。在擦除或编程命令后执行复位命令字FFH即能安全终止擦除或编程操作,存储器的内容不会被改变。执行复位命令后,芯片返回读状态。 (5)读ID号操作的特征字为90H。地址0000H的输出厂商代码BFH,地址0001H输出芯片代码04H,任何其它有效的命令均会终止这一操作。 (6)软件数据保护是为了防止对存储器意外的写入数据或擦除数据,每一操作都包含两个命令字,一个为特片字,跟随一个执行命令字。软件数据写保护是一个整体的命令字,对芯片的整个存储阵列有效。 结论 由于FLASHRAM 28SF040具有与单片机接口简单、容量大以及非易失的特点,所以非常适合于作为便携式数据记录产品。本文介绍的技术已经成功地用于机车随车质量状态诊断记录仪,其中扩展了两片28F040的FLASHRAM,共计8Mbit,对32路机车运行质量状态参数每隔5S记录一次,记录时间长达5~6天,在一年半的实际运行中状态稳定,具有体积小,性能价格比高的特点。 |
|||||||||||||
|
|
|
[自动控制] 相关文章: SmartLock并口单片机软件狗加密技术简介:
摘要: 介绍一套单片机软件狗加密系统——SmartLock。它安装在微机并行口上,通过并口与加密软件进行通信,主要使用代码移植的方法实现软件加密。该系统具有加密可靠、使用方便、兼容性好等特点。 关键词: 软件加密 并行口 单片机 代码移值 ...... 在应用可编程测控网络设计
ASM5无参数化调用C51函数的实现
MCS96系列单片机的一种大容量的外部RAM扩展技术
强电磁脉冲对单片机系统的辐照效应实验研究
基于C504单片机的变频调速系统
C504单片机在步进电机控制方面的应用
用单片机实现数字相位变换器的设计方法
SPI串行Flash在数据
用单片机实现通用存贮器IC卡的读写 |
|
|
|