Техническая Спецификация для Atmel SAM4S Xplained Pro Starter and Evaluation Kit ATSAM4S-XPRO ATSAM4S-XPRO
Модели
ATSAM4S-XPRO
SAM4S Series [DATASHEET]
Atmel-11100G-ATARM-SAM4S-Datasheet_27-May-14
354
20.4.3 Flash Commands
The EEFC offers a set of commands to manage programming the Flash memory, locking and unlocking lock
regions, consecutive programming, locking and full Flash erasing, etc.
In order to perform one of these commands, the Flash Command register (EEFC_FCR) must be written with the
correct command using the FCMD field. As soon as EEFC_FCR is written, the FRDY flag and the FVALUE field in
the Flash Result register (EEFC_FRR) are automatically cleared. Once the current command is achieved, then the
FRDY flag is automatically set. If an interrupt has been enabled by setting the FRDY bit in EEFC_FMR, the
corresponding interrupt line of the interrupt controller is activated. (Note that this is true for all commands except
for the STUI Command. The FRDY flag is not set when the STUI command is achieved.)
All the commands are protected by the same keyword, which must be written in the eight highest bits of
All the commands are protected by the same keyword, which must be written in the eight highest bits of
EEFC_FCR.
Writing EEFC_FCR with data that does not contain the correct key and/or with an invalid command has no effect
Writing EEFC_FCR with data that does not contain the correct key and/or with an invalid command has no effect
on the whole memory plane, but the FCMDE flag is set in the Flash Status register (EEFC_FSR). This flag is
automatically cleared by a read access to EEFC_FSR.
When the current command writes or erases a page in a locked region, the command has no effect on the whole
When the current command writes or erases a page in a locked region, the command has no effect on the whole
memory plane, but the FLOCKE flag is set in EEFC_FSR. This flag is automatically cleared by a read access to
EEFC_FSR.
Table 20-2.
Set of Commands
Command
Value
Mnemonic
Get Flash descriptor
0x00
GETD
Write page
0x01
WP
Write page and lock
0x02
WPL
Erase page and write page
0x03
EWP
Erase page and write page then lock
0x04
EWPL
Erase all
0x05
EA
Erase pages
0x07
EPA
Set lock bit
0x08
SLB
Clear lock bit
0x09
CLB
Get lock bit
0x0A
GLB
Set GPNVM bit
0x0B
SGPB
Clear GPNVM bit
0x0C
CGPB
Get GPNVM bit
0x0D
GGPB
Start read unique identifier
0x0E
STUI
Stop read unique identifier
0x0F
SPUI
Get CALIB bit
0x10
GCALB
Erase sector
0x11
ES
Write user signature
0x12
WUS
Erase user signature
0x13
EUS
Start read user signature
0x14
STUS
Stop read user signature
0x15
SPUS