打印
[Kinetis]

请教KE02的flash擦除问题

[复制链接]
1506|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
秋叶|  楼主 | 2014-2-18 17:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在程序中擦除一片空余的flash没有问题,但想要擦除一片有程序的空间就不行,不知为什么,如果是什么地方锁住了,请问如何解除锁定?谢谢!

相关帖子

沙发
yunkai_2007| | 2014-2-22 22:44 | 只看该作者
C:\Program Files\IAR Systems\Embedded Workbench 6.5\arm\bin  目录下打开jlink.exe, 输入unlock kinetis 即可mass  erase

使用特权

评论回复
板凳
秋叶|  楼主 | 2014-3-6 14:54 | 只看该作者
我可能没有说清楚,我是指在程序中对flash空间的一片操作

使用特权

评论回复
地板
FSL_TICS_Robin| | 2014-3-6 15:25 | 只看该作者
秋叶 发表于 2014-3-6 14:54
我可能没有说清楚,我是指在程序中对flash空间的一片操作

在进行sector擦除时,内核是可以继续执行代码和响应中断的,前提条件是所执行代码和中断服务程序必须要放在RAM中。

使用特权

评论回复
5
秋叶|  楼主 | 2014-3-11 11:21 | 只看该作者
我在程序中用
FLASH_Init(20000000);
   //--------------------------------------------------------------

   FLASH_Program( 0xfe00,&HOST_RX_BUFF[0],512 );
   FLASH_EraseSector(0xfe00);      
   FLASH_Program( 0xfe00,&HOST_RX_BUFF[0],512 );
   FLASH_EraseSector(0xfe00);  
  进行测试是可以写0xfe00区,也可以擦除0xfe00区,我现在的问题是,如果我将一个一次性用的程序,编译到0xfe00开始的地址,在这个地方用上面的程序就不可以擦除0xfe00区了,或在调试仿真时,在Memory窗口手工改0xfe00区的一个值,就不可以用上面的程序擦除这个区了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

91

帖子

1

粉丝