MSP430读写片内FLASH保存数据

MSP430读写片内FLASH保存数据

ID:39918507

大小:56.00 KB

页数:3页

时间:2019-07-15

MSP430读写片内FLASH保存数据_第1页
MSP430读写片内FLASH保存数据_第2页
MSP430读写片内FLASH保存数据_第3页
资源描述:

《MSP430读写片内FLASH保存数据》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、FLASH型的MSP430单片机都带有信息存储器SegmengA及SegmentB,SegmengA及SegmentB各有128字,SegmentB的地址是:0x01000h到0x107F,SegmentA的地址是:0x01080h到0x010FFh。程序被写入MSP430之后,程序通过SegmengA及SegmentB就可以保存不掉电数据。注意:每次程序烧写到MSP430时,SegmengA及SegmentB都会被擦除!接下来贴出本文的程序代码,以及程序写入信息存储器之后的FLASH数据:viewplaincopytoclip

2、boardprint?1#include23voidWriteSegment_256(charindex,char*value,charsize);4charReadSegment_256(charindex);56voidmain(void)7{8WDTCTL=WDTPW+WDTHOLD;//Stopwatchdogtimer9FCTL2=FWKEY+FSSEL0+FN0;//MCLK/2forFlashTimingGenerator1011charstr1[3]={0xAA,0xBB,0xCC}

3、;1213WriteSegment_256(0,str1,3);1415for(chari=0;i<255;i++)16_NOP();1718charstr2[3]={0xBB,0xAA,0xCC};19WriteSegment_256(0,str2,3);201}23#defineSegmentStart0x01000//Segment=0x01000~0x010FF4#defineSegmentSize255//SegmentA+SegmentB=25656//********************************

4、*************************7//读取片内存储的数据8//*********************************************************9charReadSegment_256(charindex)10{11char*flash_ptr=((char*)SegmentStart)+index;12return*flash_ptr;13}1415//*****************************************************16//把数组写入数

5、据到片内FLASH,必须先全部擦除再写入17//参数index:保存数组的位置18//参数value:数组的指针19//参数size:数组的大小20//*****************************************************21voidWriteSegment_256(charindex,char*value,charsize)22{23charbuffer[SegmentSize],i=0;24char*flash_ptr=(char*)SegmentStart;2526//先读取原FLASH

6、数组27for(i=0;i

7、;i++)//修改原数组39buffer[index+i]=value[i];40for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。