C8051F52x-53x
13.1.2 。闪存擦除程序
Flash存储器可以通过软件使用的地址MOVX指令进行编程和
数据字节被编程设置为正常的操作数。在使用MOVX写入闪存,
( 1 )设置PSWE程序存储写允许位:闪存的写入操作必须由启用
( PSCTL.0 )为逻辑1(这在MOVX操作指向目标FLASH存储器) ; (2 )写入FLASH关键
按顺序向FLASH锁定寄存器( FLKEY )代码。在PSWE位保持状态直到被软件清除。
写FLASH存储器可以清除数据位,但不能将它们设置;只有擦除操作可以设置位
在Flash中的逻辑1 。
一个新的值写入之前的字节地址进行编程,应该被删除。
Flash存储器组织为512个字节的页面。擦除操作将应用到整个页面(设置
在页面中为0xFF的所有字节) 。擦除一个512字节的页,请执行以下步骤:
第1步。
步骤2 。
步骤3 。
步骤4 。
步骤5 。
步骤6 。
禁止中断(建议) 。
写第一个关键码FLKEY : 0xA5的。
写第二个关键码FLKEY :的0xf1 。
将PSEE位(寄存器PSCTL ) 。
将PSWE位(寄存器PSCTL ) 。
用MOVX指令写入一个数据字节的任何位置, 512字节的页内
被擦除。
第7步:清除PSWE和PSEE位。
第8步:重新允许中断。
13.1.3 。闪存写入程序
在单字节写入闪存建议的步骤是:
禁止中断。
写第一个关键码FLKEY : 0xA5的。
写第二个关键码FLKEY :的0xf1 。
将PSWE位(寄存器PSCTL ) 。
清除PSEE位(寄存器PSCTL ) 。
用MOVX指令,写一个数据字节到所需位置内512-
字节扇区。
第7步:清除PSWE位。
第8步:重新允许中断。
步骤2-7必须重复要被写入的每个字节。
第1步。
步骤2 。
步骤3 。
步骤4 。
步骤5 。
步骤6 。
108
修订版0.3