1
关闭中断。在整个烧写期间无法响应中断,但中断申请标志位照常会置 1 。因此,
如果烧写期间来了中断,烧写完成后,打开中断允许位,中断服务程序仍将执行。
2
根据所选扇区设置 XPAGE (地址高位 IB_OFFSET (地址低位)。此项设置需要
根据不同的地址进行设置。
注意:
对于
FLASH 和类 EEPROM XPAGE 和 IB_OFFSET 寄存器设置不同,详见 DATASHEET
中说明。同时对于类 EEPROM 的烧写,应先将 FLASHCON 寄存器的最低位( FAC )置 1 。
并在操作结束后,将 FLASHCON 寄存器的最低位( FAC )清 0 。
3
将准备填充值写入 IB_DATA 。此寄存器中填写的值将被写入到 FLASH 中指定地址。
4
按照顺序设置 IB_CON1~5 ,其中数值如下所列
注意顺序不能有错,数值也必须正确。烧写完成后这5 个寄存器硬件自动清 0 ,
防止误写。 因此下次写操作必须重新填充这 5 个寄存器。
5
软件写入 IB_CON5 后启动硬件写操作, CPU 将进入 IDLE 模式。 烧写完成后自
动唤醒。此步骤由 CPU 自动完成,用户无须干预。
6
软件设置完上述寄存器后插入 4 个 NOP 指令,保证烧写完成后 CPU 从 IDLE 模式
可靠唤醒。
7
如需继续写入数据,跳转至步骤 2 )。
8
将 XPAGE 清除为 0 ,恢复系统分频和中断设置。
|