GD32单片机中的flash 的操作

[复制链接]
3497|6
 楼主| firstblood 发表于 2015-12-19 20:07 | 显示全部楼层 |阅读模式
GD32单片机的flash的读写操作是否跟stm32一样呢?
  stm32单片机的写操作前都需要保证该区间是被擦除过了的,,那么GD32是否一样么?
 楼主| firstblood 发表于 2015-12-19 20:10 | 显示全部楼层
这个是stm32的读写操作的,如下:
在进行写操作之前先进行擦除的操作,而擦除跟写操作的都需要先接触区间锁定的,再擦做的。。。
FLASH_Unlock();
FLASH_ClearFlag(FLASH_FLAG_EOP|FLASH_FLAG_PGERR|FLASH_FLAG_WRPRTERR);
FLASH_ErasePage(0x0800a000);
FLASH_ErasePage(0x0800a400);
FLASH_Lock();
 楼主| firstblood 发表于 2015-12-19 20:11 | 显示全部楼层
上边是擦除操作的,擦完后在进行写操作的,不过都需要双字节的写入才可以的:
FLASH_Unlock();                          
for(L_count=0;L_count<1024;L_count++)                               
  FLASH_ProgramHalfWord((0x0800a000+L_count*2),accXYZ[L_count]);
FLASH_Lock();       
angerbird 发表于 2015-12-19 22:14 | 显示全部楼层
这个在擦除、写操作前都需要进行解锁操作的,那么我问下读出数据的时候需不需要呢?
zhangbo1985 发表于 2015-12-20 13:04 | 显示全部楼层
这个要是读取数据的怎么办?
有没有代码分享的?
baimiaocun2015 发表于 2015-12-20 22:45 | 显示全部楼层
这个我用过的,读取数据的
                LOCAL_ID =(*(u16*)0x0800f002);
                T_count =(*(u16*)0x0800f004);
baimiaocun2015 发表于 2015-12-20 22:46 | 显示全部楼层
读取数据额话注意是双字节的读取就可以了。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

86

主题

4492

帖子

9

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