本帖最后由 FSL_TICS_ZJJ 于 2014-1-27 14:39 编辑
U8 Flash_erase_sector(U16 sectorNo)
{
union
{
U32 word;
U8 byte[4];
} dest;
dest.word = (U32)(sectorNo*(1<<11));
FTFL_FCCOB0 = 0x09; //擦除扇区
// 设置目标地址
FTFL_FCCOB1 = dest.byte[2];
FTFL_FCCOB2 = dest.byte[1];
FTFL_FCCOB3 = dest.byte[0];
// 执行命令序列
if(1 == Flash_cmd_launch()) //若执行命令出现错误
return 1; //擦除命令错误
// 若擦除sector0时,则解锁设备
if(dest.word <= 0x800)
{
FTFL_FCCOB0 = 0x06; // 写入4字节
// 设置目标地址
FTFL_FCCOB1 = 0x00;
FTFL_FCCOB2 = 0x04;
FTFL_FCCOB3 = 0x0C;
// 数据
FTFL_FCCOB4 = 0xFF;
FTFL_FCCOB5 = 0xFF;
FTFL_FCCOB6 = 0xFF;
FTFL_FCCOB7 = 0xFE;
// 执行命令序列
if(1 == Flash_cmd_launch()) //若执行命令出现错误
return 2; //解锁命令错误
}
return 0; //成功返回
}
在网上搜到的例程,红 {MOD}部分的代码不是很懂,不知道写入这个序列到底什么意义,查了下手册,也没找到相关的说明,希望知道的可以帮忙解惑一下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
太谢谢您了,我仅仅根据手册知道了该怎么往里面写数据,但是不知道在这个地址写入这个数据是什么意思,经您讲解之后明白了,谢谢!
感谢版主的热心回复~~
一周热门 更多>