调用这个函数是只擦除一个字节?

2019-07-18 15:34发布

void Seg_Erase(void){
     _DINT();
     WDTCTL = WDTPW + WDTHOLD;
     char *flase_erase;
     flase_erase = (char *)0x8000;                  //指向要檫写的段地址
     while(FCTL3&BUSY);
     FCTL3 = FWKEY;                                 //清除LOCK
     FCTL1 = FWKEY +ERASE;                         //段檫除
     *flase_erase = 0;                              //空写将0写为1
     FCTL3 = FWKEY + LOCK;                          //LOCK置1
     _EINT();
}
请问在进行FLASH段擦除的时候,调用这个函数是只擦除一个字节?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
wuhany
1楼-- · 2019-07-18 17:44
什么意思?不是很明白你说的什么,能再解释一下这个现象吗
jiajs
2楼-- · 2019-07-18 23:38
要进行整段擦除的时候是用for语句调这个函数128次。
还是调用一次这个函数把128个字节一起擦除。
zhanghqi
3楼-- · 2019-07-19 04:04
falsh擦除一般是一块擦除 不会一个字节一个字节的擦除
zhenykun
4楼-- · 2019-07-19 07:53
LZ知道怎么把一个在FLASH的程序拷贝到RAM中在RAM中运行此程序?
wuhany
5楼-- · 2019-07-19 08:10
flash中擦除的最小单位就是段,不可能一个字节一个字节的擦出
huangchui
6楼-- · 2019-07-19 12:07
这个是整个sector擦除的吧,当然不会只擦写一个字节的了。。

一周热门 更多>