下载此文档

MSP430Flash读写操作总结.doc


文档分类:IT计算机 | 页数:约19页 举报非法文档有奖
1/19
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/19 下载此文档
文档列表 文档介绍
MSP430X14XFlash读写操作总结开发平台:IAREmbeddedWorkbench、MSP430F149开发板作者:谭贝贝Flash简介Flash分为主存储区和信息存储区,主存储区有8个512byte的片段,信息存储区有两个128byte的片段。Flash默认为读取模式。在对Flash进行编程或者擦除时不允许读写,如果需要CPU在这期间进行操作,可以把代码段放在RAM中进行。。Flash的可操作时钟频率为~257KHZ---~476KHZ。如果频率不符合要求,则结果不可预测。在擦除先需要关闭中断和看门狗,在擦除的过程中如果产生了中断,则会在重新使能中断后产生一个中断请求。Flash只能从1写为0,不能从从0写为1,所以需要擦除。可以被擦除的最小模块是片段,tAllErase=tMassErase=5297/fFTG,tSegErase=4819/fFTG。FlashERASEMSP430X14X的擦除模式可以从Flash或者RAM中进行。从Flash中擦除从Flash中擦除的过程中所有的定时都会被Flash控制,CPU被挂起。擦除完成后需要一个假写入CPU才能复位。从Flash擦除时有可能把后面CPU需要执行的代码擦除。如果发生这样的情况,在擦除后CPU的执行状况将不可预测。Flash中擦除流程图从RAM中擦除从RAM中擦除时CPU不会被挂起,可以继续执行代码。必须检测BUSY位以判断擦除是否结束,如果在擦除的过程中(即BUSY=1时)访问Flash,这是一个违规的访问,ACCVIFG会置位,而擦除的结果也将不可预测。RAM中擦除流程图FlashWriteMSP430X14X有两种写入模式,分为段写入(byte/wordwrite),和块写入(BlockWrite),块写入要快得多,但是操作麻烦,在擦除的过程中不能有一个Flashword(low+highbyte),则会发生损坏。CPU不能在BUSY=1时访问Flash,FIG将置位写入将不可预测。Byte/WordwriteByte/Word写入可以从Flash或者RAM初始化,当从Flash中初始化时,所有的定时都会被Flash控制,CPU被挂起。写完后CPU将继续执行后面的代码。当从RAM中初始化时,,写入的结果将不可预测。在Byte/Word写模式下写入总时间不能超过4ms,如果超过了,当再想这块任何地址写入数据时必须先擦除。Byte/Word写入流程图从RAM中执行Byte/Word写入块写入块写入时没一小块不能超过t_cpt=4ms,块写入只能从RAM中进行,在块写入的过程中WAIT位要置0,当想Flash中写入数据时,,见下表Flash的寄存器FCTL1,选择擦除和写入模式的寄存器FRKEY/FWKEY高八位为密码读的密码为96h,写的密码为A5h。BLKWRT 块写入模式选择位,可以自动被EMEX置位WRT 字写入模式选择位,可任意自动被EMEX置位MERASE和ERASE,擦除模式选择位FCTL2时钟选择寄存器FWKEYx密码位FSSELx时钟选择位FNx分频比分频值等于FN+1两个例子#include<>#include""voidWrite_A(ucharvalue);voidCopy_A2B(void);voidmain(void){//StopwatchdogtimertopreventtimeoutresetWDTCTL=WDTPW+WDTHOLD;BoardConfig(0xb8);FCTL2=FWKEY+FSSEL0+FN0;//Selectsourceucharvalue=0;for(;;){Write_A(value++);//WritedatatosegmentACopy_A2B();//CopydatafromsegmentAtosegmentB_NOP();}}voidWrite_A(ucharvalue){

MSP430Flash读写操作总结 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数19
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wz_198613
  • 文件大小290 KB
  • 时间2019-11-19