English
Language : 

C8051F321-GMR Datasheet, PDF (107/250 Pages) Silicon Laboratories – Full Speed USB, 16 k ISP FLASH MCU Family
C8051F320/1
11.1.3. Flash Write Procedure
Flash bytes are programmed by software with the following sequence:
Step 1. Disable interrupts (recommended).
Step 2. Erase the 512-byte Flash page containing the target location, as described in Section
11.1.2.
Step 3. Write the first key code to FLKEY: 0xA5.
Step 4. Write the second key code to FLKEY: 0xF1.
Step 5. Set the PSWE bit (register PSCTL).
Step 6. Clear the PSEE bit (register PSCTL).
Step 7. Using the MOVX instruction, write a single data byte to the desired location within the 512-
byte sector.
Step 8. Clear the PSWE bit (register PSCTL).
Steps 3-8 must be repeated for each byte to be written. After Flash writes are complete, PSWE should be
cleared so that MOVX instructions do not target program memory.
Table 11.1. Flash Electrical Characteristics
Parameter
Flash Size
Endurance
Erase Cycle Time
Write Cycle Time
Conditions
C8051F320/1
25 MHz System Clock
25 MHz System Clock
*Note: 512 bytes at location 0x3E00 to 0x3FFF are reserved.
Min
16384*
20k
10
40
Typ
100k
15
55
Max
20
70
Units
bytes
Erase/Write
ms
µs
11.2. Non-volatile Data Storage
The Flash memory can be used for non-volatile data storage as well as program code. This allows data
such as calibration coefficients to be calculated and stored at run time. Data is written using the MOVX
write instruction and read using the MOVC instruction. Note: MOVX read instructions always target XRAM.
Rev. 1.4
107