www.pudn.com > newrlb.rar > flash.h


/* 
* copyright (c) 兰州瑞德高科技有限公司电专项目组 
* all rights reserved. 
 
* 文件名称: flash.c 
* 摘    要: flash的读写操作函数 
 
* 当前版本: v1.0 
* 作    者: 杨晓卫 
* 完成日期: 2004.7.29 
*/ 
#ifndef FLASH_H 
#define FLASH_H 
 
#include  
#include "predef.h" 
 
float *segAPoint; 
uchar *segBPoint; 
 
void SegAWrite(float sp1,float sp2,float sp3,float sp4); 
float SegARead(int addr); 
 
void SegBWrite(uchar *buf,uchar len); 
int SegBRead(int addr,uchar *buf,uchar len); 
 
void SegAWrite(float sp1,float sp2,float sp3,float sp4) 
{ 
 
segAPoint=(float *)0x1080; 
 
FCTL1=FWKEY+ERASE; 
FCTL3=FWKEY; 
 
*segAPoint=0; 
 
FCTL1=FWKEY+WRT; 
 
*segAPoint++=0x1234; 
*segAPoint++=sp1; 
*segAPoint++=sp2; 
*segAPoint++=sp3; 
*segAPoint++=sp4; 
 
FCTL1=FWKEY; 
FCTL3=FWKEY+LOCK; 
} 
 
float SegARead(int addr) 
{ 
  segAPoint=(float *)addr; 
  return (*segAPoint); 
} 
 
void SegBWrite(uchar *buf,uchar len) 
{ 
  int i; 
   
  segBPoint=(uchar *)0x1000; 
   
  FCTL1=FWKEY+ERASE; 
  FCTL3=FWKEY; 
   
  *segBPoint=0; 
 
  FCTL1=FWKEY+WRT; 
 
  for(i=0;i