C8051F006-GQR Silicon Laboratories Inc, C8051F006-GQR Datasheet - Page 87
![no-image](/images/manufacturer_photos/0/6/609/silicon_laboratories_inc_sml.jpg)
C8051F006-GQR
Manufacturer Part Number
C8051F006-GQR
Description
IC 8051 MCU 32K FLASH 48TQFP
Manufacturer
Silicon Laboratories Inc
Series
C8051F00xr
Specifications of C8051F006-GQR
Core Processor
8051
Core Size
8-Bit
Speed
25MHz
Connectivity
SMBus (2-Wire/I²C), SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, Temp Sensor, WDT
Number Of I /o
16
Program Memory Size
32KB (32K x 8)
Program Memory Type
FLASH
Ram Size
2.25K x 8
Voltage - Supply (vcc/vdd)
2.7 V ~ 3.6 V
Data Converters
A/D 8x12b, D/A 2x12b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
48-TQFP, 48-VQFP
For Use With
336-1188 - DEV KIT FOR F005/006/007
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Eeprom Size
-
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
C8051F006-GQR
Manufacturer:
SILICON
Quantity:
1 200
Company:
Part Number:
C8051F006-GQR
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
11. FLASH MEMORY
These devices include 32k + 128 bytes of on-chip, reprogrammable Flash memory for program code and non-
volatile data storage. The Flash memory can be programmed in-system, a single byte at a time, through the JTAG
interface or by software using the MOVX instruction. Once cleared to 0, a Flash bit must be erased to set it back to
1. The bytes would typically be erased (set to 0xFF) before being reprogrammed. The write and erase operations
are automatically timed by hardware for proper execution. Data polling to determine the end of the write/erase
operation is not required. The Flash memory is designed to withstand at least 20,000 write/erase cycles. Refer to
Table 11.1 for the electrical characteristics of the Flash memory.
11.1.
The simplest means of programming the Flash memory is through the JTAG interface using programming tools
provided by Silicon Labs or a third party vendor. This is the only means for programming a non-initialized device.
For details on the JTAG commands to program Flash memory, see Section 21.2.
The Flash memory can be programmed by software using the MOVX instruction with the address and data byte to
be programmed provided as normal operands.
operations must be enabled by setting the PSWE Program Store Write Enable bit (PSCTL.0) to logic 1. Writing to
Flash remains enabled until the PSWE bit is cleared by software.
Writes to Flash memory can clear bits but cannot set them. Only an erase operation can set bits in Flash. Therefore,
the byte location to be programmed must be erased before a new value can be written. The 32kbyte Flash memory
is organized in 512-byte sectors. The erase operation applies to an entire sector (setting all bytes in the sector to
0xFF). Setting the PSEE Program Store Erase Enable bit (PSCTL.1) and PSWE (PSCTL.0) bit to logic 1 and then
using the MOVX command to write a data byte to any byte location within the sector will erase an entire 512-byte
sector. The data byte written can be of any value because it is not actually written to the Flash. Flash erasure
remains enabled until the PSEE bit is cleared by software. The following sequence illustrates the algorithm for
programming the Flash memory by software:
Write/Erase timing is automatically controlled by hardware based on the prescaler value held in the Flash Memory
Timing Prescaler register (FLSCL). The 4-bit prescaler value FLASCL determines the time interval for write/erase
operations. The FLASCL value required for a given system clock is shown in Figure 11.4, along with the formula
used to derive the FLASCL values. When FLASCL is set to 1111b, the write/erase operations are disabled. Note
that code execution in the 8051 is stalled while the Flash is being programmed or erased.
VDD = 2.7 to 3.6V, -40C to +85C unless otherwise specified.
Endurance
Erase Cycle Time
Write Cycle Time
87
C8051F000/1/2/5/6/7
C8051F010/1/2/5/6/7
1. Enable Flash Memory write/erase in FLSCL Register using FLASCL bits.
2. Set PSEE (PSCTL.1) to enable Flash sector erase.
3. Set PSWE (PSCTL.0) to enable Flash writes.
4. Use MOVX to write a data byte to any location within the 512-byte sector to be erased.
5. Clear PSEE to disable Flash sector erase.
6. Use MOVX to write a data byte to the desired byte location within the erased 512-byte sector. Repeat until
7. Clear the PSWE bit to disable Flash writes.
PARAMETER
finished. (Any number of bytes can be written from a single byte to and entire sector.)
Programming The Flash Memory
Table 11.1. FLASH Memory Electrical Characteristics
CONDITIONS
Before writing to Flash memory using MOVX, Flash write
Rev. 1.7
MIN
20k
10
40
TYP
100k
MAX
Erase/Wr
UNITS
ms
s