R8C/13 Group
17.4 CPU Rewrite Mode
• Program Command
This command writes data to the flash memory in one byte units.
Write ‘4016’ in the first bus cycle and write data to the write address in the second bus cycle, and an
auto program operation (data program and verify) will start. Make sure the address value specified in
the first bus cycle is the same address as the write address specified in the second bus cycle.
Check the FMR00 bit in the FMR0 register to see if auto programming has finished. The FMR00 bit
is “0” during auto programming and set to “1” when auto programming is completed.
Check the FMR06 bit in the FMR0 register after auto programming has finished, and the result of
auto programming can be known. (Refer to Section 17.4.5, “Full Status Check.”)
Writing over already programmed addresses is inhibited.
When the FMR02 bit in the FMR0 register is set to “0” (rewrite disabled), or the FMR02 bit is set to “1”
(rewrite enabled) and the FMR15 bit in the FMR1 register is set to “1” (rewrite disabled), the program
command on the Block0 is not accepted. When the FMR16 bit is set to “1” (rewrite disabled), the
program command on the Block1 is not accepted.
In EW1 mode, do not execute this command on any address at which the rewrite control program is
located.
In EW0 mode, the microcomputer goes to read status register mode at the same time auto program-
ming starts, making it possible to read the status register. The status register bit 7 (SR7) is set to “0”
at the same time auto programming starts, and set back to “1” when auto programming finishes. In
this case, the microcomputer remains in read status register mode until a read array command is
written next. The result of auto programming can be known by reading the status register after auto
programming has finished.
Start
Write the command code ‘4016’ to
the write address
Write data to the write address
NO
FMR00=1?
YES
Full status check
Program
completed
Figure 17.9 Program Command
Rev.1.20 Jan 27, 2006 page 176 of 205
REJ09B0111-0120