打印
[Kinetis]

帮忙分析KL16 flash 擦除不成功原因

[复制链接]
1595|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
peihua12344|  楼主 | 2014-12-26 14:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我使用的是KL16Z64的芯片型号,我的代码如下:
unsigned char Flash_SectorErase(uint32_t FlashPtr)
{

    /* Allocate space on stack to run flash command out of SRAM */
    /* wait till CCIF is set*/
    while (!(FTFA_FSTAT & FTFA_FSTAT_CCIF_MASK)){};
    /* Write command to FCCOB registers */
    FTFA_FCCOB0 = FlashCmd_SectorErase;
    FTFA_FCCOB1 = ( uint8_t)(FlashPtr >> 16);
    FTFA_FCCOB2 = (uint8_t)((FlashPtr >> 8) & 0xFF);
    FTFA_FCCOB3 = (uint8_t)(FlashPtr & 0xFF);
    /* function return */
    return  Command_Lanuch();
} /* EndBody */

unsigned char Command_Lanuch( void )
{
    unsigned char Return = Flash_OK;
    // turn off interrupt
    DisableInterrupts;
     /* Launch command */
    FTFA_FSTAT |= FTFA_FSTAT_CCIF_MASK;   
  
    /* wait for command completion */
    while (!(FTFA_FSTAT & FTFA_FSTAT_CCIF_MASK)) {};
    /* checking access error */
    if (FTFA_FSTAT & FTFA_FSTAT_ACCERR_MASK)
    {
        /* clear error flag */
        FTFA_FSTAT |= FTFA_FSTAT_ACCERR_MASK;

        /* update return value*/
        Return |= Flash_FACCERR;
    }
    /* checking protection error */
    else if (FTFA_FSTAT & FTFA_FSTAT_FPVIOL_MASK)
    {
        /* clear error flag */
        FTFA_FSTAT |= FTFA_FSTAT_FPVIOL_MASK;

        /* update return value*/
        Return |= Flash_FPVIOL;
    }
    else if (FTFA_FSTAT & FTFA_FSTAT_RDCOLERR_MASK)
    {
        /* clear error flag */
        FTFA_FSTAT |= FTFA_FSTAT_RDCOLERR_MASK;

       /* update return value*/
       Return |= Flash_RDCOLERR;
    }
    /* checking MGSTAT0 non-correctable error */
    else if (FTFA_FSTAT & FTFA_FSTAT_MGSTAT0_MASK)
    {
        Return |= Flash_MGSTAT0;
    } /* EndIf */
    // enable interrupt
    EnableInterrupts;
    return Return;
}

运行的时候总是会出现 No source available for "0xFFFFFFFE (0xFFFFFFFE)() " 的错误,查了几天了仍然不知道是什么原因造成,请各位高手帮帮忙!! 感激不尽·

相关帖子

沙发
FSL_TICS_Robin| | 2014-12-29 10:06 | 只看该作者
楼主你好
建议先参考【经验分享】CW10.x编译环境查找HardFault异常原因帖子方法查一下程序运行到哪步出错的。

使用特权

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

本版积分规则

6

主题

36

帖子

0

粉丝