[DSC] !!!其了怪了 用IDE8.3自带的库 无法擦除DataFlash

[复制链接]
1555|10
 楼主| itelectron 发表于 2015-6-18 21:59 | 显示全部楼层 |阅读模式
本帖最后由 itelectron 于 2015-6-18 22:03 编辑

/* Including used modules for compiling procedure */
#include "Cpu.h"
#include "Events.h"
#include "IFsh1.h"
/* Include shared modules, which are used for whole project */
#include "PE_Types.h"
#include "PE_Error.h"
#include "PE_Const.h"
#include "IO_Map.h"

void main(void)
{
  /* Write your local variable definition here */

  /*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/
  PE_low_level_init();
  /*** End of Processor Expert internal initialization.                    ***/

  /* Write your code here */
  IFsh1_EraseFlash(0);//擦除DATA Flash/

  for(;;)
  {
    asm(nop);
    asm(nop);
    asm(nop);
    asm(nop);
    asm(nop);

    asm(nop);
    asm(nop);
    asm(nop);
    asm(nop);
    asm(nop);
  }
}
 楼主| itelectron 发表于 2015-6-18 22:01 | 显示全部楼层
byte IFsh1_EraseFlash(byte Block)
{
#pragma unused(Block)
  Err = ERR_OK;
  SelectRegBank();                     /* Select Data_Flash register bank */
  Err = procflash(DATA_FLASH_START, 0, MASS_ERASE); /* Erase entire FLASH memory array */
  while (getRegBit(FMUSTAT,CCIF) == 0) {} /* Wait to command complete */
  return Err;
}
 楼主| itelectron 发表于 2015-6-18 22:02 | 显示全部楼层
让费了一整天时间
追逐浪花 发表于 2015-6-19 08:15 | 显示全部楼层
解决了吗,别的IDE有没有同样的问题呢?
 楼主| itelectron 发表于 2015-6-19 11:41 | 显示全部楼层
没有解决     不知道是啥问题  还在找问题   
 楼主| itelectron 发表于 2015-6-19 14:43 | 显示全部楼层
本帖最后由 itelectron 于 2015-6-19 15:08 编辑
  1. <div class="blockcode"><blockquote>;//----------------------------------------------------------
  2.            move.w   #$00, X:FMPROT     ;//FMPROT ;//不保护/
  3.            move.w   #1061,X:FMCLKD     ;//FMCLKD ;//设置时钟
  4.            move.w   #1,   X:FMMCR      ;//FMMCR  ;//选择DataFlash                                                                                                     
  5.            move.w   #$34, X:FMUSTAT    ;//FMUSTAT                  
  6. ;//----------------------------------------------------------                                         
  7. LOOP1:     move.w   X:FMUSTAT,A        ;//读FMUSTAT                  
  8.            brclr    #$80,A1,LOOP1      ;//循环/等待                    
  9. ;//----------------------------------------------------------
  10.            moveu.w  #$1E01,R2          ;//擦除第1页Flash/
  11.            move.w   #0,Y0              ;//写入数据/
  12.            move.w   Y0,X:(R2)+         ;//写入地址/
  13.            move.w   #$40,X:FMCMD       ;//擦除1页Flash/                     
  14.            move.w   #$80,X:FMUSTAT     ;//执行操作/                  
  15. ;//----------------------------------------------------------               
  16. LOOP2:     move.w   X:FMUSTAT,A        ;//读FMUSTAT                  
  17.            brclr    #$80,A1,LOOP2      ;//循环/等待                                    
  18.            nop
  19.            nop
  20. END:       bra      END                ;//死循环/                                    
  21. ;//----------------------------------------------------------

 楼主| itelectron 发表于 2015-6-19 15:08 | 显示全部楼层
 楼主| itelectron 发表于 2015-6-19 15:15 | 显示全部楼层
好久没有用都生疏了 现在是芯片 多如牛毛的时代!  外设太多  太复杂了    更新换代也快  被解密也快
香水橙 发表于 2015-6-19 21:25 | 显示全部楼层
楼主的头像看着眼晕 :dizzy:
FSL_TICS_ZJJ 发表于 2015-6-23 11:06 | 显示全部楼层
非常感谢你的技术问题。我们建议您将此DSC的技术问题提交到飞思卡尔的英文论坛。网址是https://community.freescale.com/welcome 谢谢。


侣行天下 发表于 2015-6-23 14:11 | 显示全部楼层
itelectron 发表于 2015-6-19 15:15
好久没有用都生疏了 现在是芯片 多如牛毛的时代!  外设太多  太复杂了    更新换代也快  被解密也快 ...

所以说开发一款让用户用起来比较简单的工具迫在眉睫啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

274

主题

2761

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部