请教DrvFMC_Write函数

[复制链接]
3396|2
 楼主| starowen 发表于 2011-2-24 13:34 | 显示全部楼层 |阅读模式
int32_t DrvFMC_Write(uint32_t u32addr, uint32_t u32data)
{
    FMC->ISPCMD.FCTRL = 1;
FMC->ISPCMD.FCEN = 0;
FMC->ISPCMD.FOEN = 1;
    FMC->ISPADR = u32addr;
FMC->ISPDAT = u32data;
FMC->ISPTRG.ISPGO = 1;
__ISB();
while (FMC->ISPTRG.ISPGO);

if (FMC->ISPCON.ISPFF == 1)
{
  FMC->ISPCON.ISPFF = 1;
  return E_DRVFMC_ERR_ISP_FAIL;
}

return 0;
}

请教__ISB();这个指令在这里起什么作用呢
屏蔽掉这个指令 数据也可以正常写入到DATA FLASH中
6019赵文 发表于 2011-2-24 19:17 | 显示全部楼层
哪来的这个函数?
 楼主| starowen 发表于 2011-2-25 07:36 | 显示全部楼层
本帖最后由 starowen 于 2011-2-25 07:44 编辑

这个函数是在M051SeriesBSP_CMSIS\M051SeriesBSP\NuvotonPlatform_Keil\Src\Driver里面
是写 LDROM和 DataFlash 的函数
M051SeriesBSP_CMSIS 是芯唐上下载的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

10

帖子

1

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