正在加载图片...
10.2 ColdFire Flash存储器编程方法 10.2.2 ColdFire Flash存储器擦除与写入的步骤 3.Flash的写入 注意,应该向干净的区域(即没有被写过的区域)写入。 (1)设置时钟分频,清相关错误标志位,这些操作已作为擦除和写入 流程开始部分的公共操作被封装成子程序Flash_Init,直接调用即可。 (2)向指定地址写若干字数据。 首先,将源地址的一个字写入目标地址。 其次,向命令寄存器CFMCMD载入命令0x20。 第三,向状态寄存器CFMUSTATI的命令缓冲区空中断标志位CBEIF.写 1,以清零该位来启动命令执行。 第四,等待直到上一条命令执行完毕,即状态寄存器CFMUSTATI的 CBIF位为1,这时就可以接收下一条命令。 最后,如果尚未写完数据,递增源地址和目标地址,转(2)。 uint8 Flash_Page_Write(uint8 page,uint16 pstart,uint32 *addr_source,uint16 N); /从地址addr_source.写入N个字节到第page页的地址pstart*4处 9 10.2.2 ColdFire Flash存储器擦除与写入的步骤 3.Flash的写入 注意,应该向干净的区域(即没有被写过的区域)写入。 (1)设置时钟分频,清相关错误标志位,这些操作已作为擦除和写入 流程开始部分的公共操作被封装成子程序Flash_Init,直接调用即可。 (2)向指定地址写若干字数据。 首先,将源地址的一个字写入目标地址。 其次,向命令寄存器CFMCMD载入命令0x20。 第三,向状态寄存器CFMUSTAT的命令缓冲区空中断标志位CBEIF写 1,以清零该位来启动命令执行。 第四,等待直到上一条命令执行完毕,即状态寄存器CFMUSTAT的 CBEIF位为1,这时就可以接收下一条命令。 最后,如果尚未写完数据,递增源地址和目标地址,转(2)。 uint8 Flash_Page_Write(uint8 page,uint16 pstart,uint32 *addr_source,uint16 N); //从地址addr_source写入N个字节到第page页的地址pstart*4处 10.2 ColdFire Flash存储器编程方法 9
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有