![](http://datasheet.mmic.net.cn/370000/P9S12XEP100J1VVLR_datasheet_16728329/P9S12XEP100J1VVLR_888.png)
Chapter 23 1024 KByte Flash Module (S12XFTM1024K5V2)
MC9S12XE-Family Reference Manual , Rev. 1.07
888
Freescale Semiconductor
23.4.2.7
Program Once Command
The Program Once command restricts programming to a reserved 64 byte field (8 phrases) in the
nonvolatile information register located in P-Flash block 0. The Program Once reserved field can be read
using the Read Once command as described in
Section 23.4.2.4
. The Program Once command must only
be issued once since the nonvolatile information register in P-Flash block 0 cannot be erased.
UponclearingCCIFtolaunchtheProgramOncecommand,iftheselectedphraseisverifiedaserasedthen
the phrase will be programmed and will then be verified the data words read back as expected. The CCIF
flag will remain clear, setting only after the Program Once operation has completed. The Program Once
reserved nonvolatile information register cannot be erased and any attempt to program a specific phrase a
second time will not be allowed. Valid phrase index values for the Program Once command range from
0x00 to 0x07. During execution of the Program Once command, any attempt to read addresses within
P-Flash block 0 will return invalid data.
Table 23-44. Program Once Command FCCOB Requirements
CCOBIX[2:0]
FCCOB Parameters
000
0x07
Not Required
001
Program Once phrase index
010
Program Once word 0 value
011
Program Once word 1 value
100
Program Once word 2 value
101
Program Once word 3 value
Table 23-45. Program Once Command Error Handling
Register
Error Bit
Error Condition
FSTAT
ACCERR
Set if CCOBIX[2:0] != 101 at command launch
Set if a Load Data Field command sequence is currently active
Set if command not available in current mode (see
Table 23-29
)
Set if an invalid phrase index is supplied
Set if the requested phrase has already been programmed
1
1
If a Program Once phrase is initially programmed to 0xFFFF_FFFF_FFFF_FFFF, the Program Once command will
be allowed to execute again on that same phrase.
FPVIOL
None
MGSTAT1
Set if any errors have been encountered during the verify operation
MGSTAT0
Set if any non-correctable errors have been encountered during the verify
operation
FERSTAT
EPVIOLIF
None