易截截图软件、单文件、免安装、纯绿色、仅160KB

MSP430读写片内FLASH保存数据

本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处!
     FLASH型的MSP430单片机都带有信息存储器SegmengA及SegmentB,SegmengA及SegmentB各有128字,SegmentB的地址是:0x01000h到0x107F,SegmentA的地址是:0x01080h到0x010FFh。程序被写入MSP430之后,程序通过SegmengA及SegmentB就可以保存不掉电数据。注意:每次程序烧写到MSP430时,SegmengA及SegmentB都会被擦除!
      接下来贴出本文的程序代码,以及程序写入信息存储器之后的FLASH数据:
#include <msp430xG43x.h>
void WriteSegment_256 (char index,char *value,char size);
char ReadSegment_256(char index);
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
FCTL2 = FWKEY + FSSEL0 + FN0; // MCLK/2 for Flash Timing Generator

char str1[3]={0xAA,0xBB,0xCC};

WriteSegment_256(0,str1,3);

for(char i=0;i<255;i++)
_NOP();

char str2[3]={0xBB,0xAA,0xCC};
WriteSegment_256(0,str2,3);

}
#define SegmentStart 0x01000 //Segment = 0x01000~0x010FF
#define SegmentSize 255 //SegmentA + SegmentB = 256
//*********************************************************
//读取片内存储的数据
//*********************************************************
char ReadSegment_256(char index)
{
char *flash_ptr = ((char *) SegmentStart) + index;
return *flash_ptr;
}
// *****************************************************
//把数组写入数据到片内FLASH,必须先全部擦除再写入
//参数index:保存数组的位置
//参数value:数组的指针
//参数size:数组的大小
// *****************************************************
void WriteSegment_256 (char index,char *value,char size)
{
char buffer[SegmentSize],i=0;
char *flash_ptr = (char *) SegmentStart;

//先读取原FLASH数组
for(i=0;i<SegmentSize;i++)
buffer[i]=ReadSegment_256(i);

//擦除FLASH,必须
FCTL1 = FWKEY + ERASE; // Set Erase bit
FCTL3 = FWKEY; // Clear Lock bit
*f


相关文档:

Flash中步入Matrix函数

在字典中的说明不够充分让大家去理解,所以开始还是要重复说明一下。Matrix矩阵就像个数组,排列方式是以列与行组
成。在flash 8中所提供的是3 x 3矩阵,3x3的矩阵可以定义出一个3D计算,但在Flash 8中只供2D的计算,即 x 和 y
的计算,那么我们来看看这个矩阵的定义
 


以上的每个字母都有各自 ......

NAND flash文件系统JFFS2和YAFFS比较

NAND flash文件系统JFFS2和YAFFS比较
ARM9 2009-12-07 21:29:50 阅读98 评论0 字号:大中小
JFFS是由瑞典的Axis Communications Ab公司开发的(1999,以GNU发布),针对flash设备的特性为嵌入式设备开发的
JFFS1和JFFS2的设计中都考虑到了FLASH的特性特别是满足了上述3个条件,包括了垃圾回收,坏块管理等功能. 这两种文件系 ......

A星算法,flash版

A星算法,flash 演示版
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;

[SWF(width="550",height="550",backgroundColor="#999999")]
public class astart extends Sprite
{
// 常数定义
private static const size:int = 50;

private var points:Array = new Array ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号