C8051F302 Silicon Laboratories Inc, C8051F302 Datasheet - Page 83

IC 8051 MCU 8K FLASH 11MLP

C8051F302

Manufacturer Part Number
C8051F302
Description
IC 8051 MCU 8K FLASH 11MLP
Manufacturer
Silicon Laboratories Inc
Series
C8051F30xr
Datasheets

Specifications of C8051F302

Core Processor
8051
Core Size
8-Bit
Speed
25MHz
Connectivity
SMBus (2-Wire/I²C), UART/USART
Peripherals
POR, PWM, Temp Sensor, WDT
Number Of I /o
8
Program Memory Size
8KB (8K x 8)
Program Memory Type
FLASH
Ram Size
256 x 8
Voltage - Supply (vcc/vdd)
2.7 V ~ 3.6 V
Data Converters
A/D 8x8b
Oscillator Type
External
Operating Temperature
-40°C ~ 85°C
Package / Case
11-VQFN
Data Bus Width
8 bit
Data Ram Size
256 B
Interface Type
I2C, SMBus, UART
Maximum Clock Frequency
25 MHz
Number Of Programmable I/os
8
Number Of Timers
16 bit
Operating Supply Voltage
2.7 V to 3.6 V
Maximum Operating Temperature
+ 85 C
Mounting Style
SMD/SMT
Minimum Operating Temperature
- 40 C
On-chip Adc
8 bit
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
Eeprom Size
-
Lead Free Status / Rohs Status
No

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
C8051F302-GMR
Manufacturer:
SiliconL
Quantity:
3 000
Part Number:
C8051F302-GMR
Manufacturer:
SILICON
Quantity:
5 000
Part Number:
C8051F302-GMR
Manufacturer:
SILICONLABS/芯科
Quantity:
20 000
10.
On-chip, re-programmable FLASH memory is included for program code and non-volatile data storage. The FLASH
memory can be programmed in-system, a single byte at a time, through the C2 interface or by software using the
MOVX instruction. Once cleared to logic 0, a FLASH bit must be erased to set it back to logic 1. FLASH 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. Code
execution is stalled during a FLASH write/erase operation. Refer to Table 10.1 for complete FLASH memory electri-
cal characteristics.
10.1. Programming The FLASH Memory
The simplest means of programming the FLASH memory is through the C2 interface using programming tools pro-
vided by Silicon Labs or a third party vendor. This is the only means for programming a non-initialized device. For
details on the C2 commands to program FLASH memory, see
To ensure the integrity of FLASH contents, it is strongly recommended that the on-chip VDD Monitor be
enabled in any system that includes code that writes and/or erases FLASH memory from software.
10.1.1. FLASH Lock and Key Functions
FLASH writes and erases by user software are protected with a lock and key function; FLASH reads by user software
are unrestricted. The FLASH Lock and Key Register (FLKEY) must be written with the correct key codes, in
sequence, before FLASH operations may be performed. The key codes are: 0xA5, 0xF1. The timing does not matter,
but the codes must be written in order. If the key codes are written out of order, or the wrong codes are written,
FLASH writes and erases will be disabled until the next system reset. FLASH writes and erases will also be disabled
if a FLASH write or erase is attempted before the key codes have been written properly. The FLASH lock resets after
each write or erase; the key codes must be written again before a following FLASH operation can be performed. The
FLKEY register is detailed in Figure 10.3.
10.1.2. FLASH Erase Procedure
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. Before writing to FLASH memory using MOVX, FLASH write opera-
tions must be enabled by: (1) setting the PSWE Program Store Write Enable bit (PSCTL.0) to logic 1 (this directs the
MOVX writes to target FLASH memory); and (2) Writing the FLASH key codes in sequence to the FLASH Lock
register (FLKEY). The PSWE bit remains set until cleared by software.
A write to FLASH memory can clear bits but cannot set them; only an erase operation can set bits in FLASH. A byte
location to be programmed should be erased before a new value is written. The 8k byte FLASH memory is orga-
nized in 512-byte pages. The erase operation applies to an entire page (setting all bytes in the page to 0xFF). To erase
an entire 512-byte page, perform the following steps:
FLASH MEMORY
Step 5. Disable interrupts (recommended).
Step 6. Set the Program Store Erase Enable bit (PSEE in the PSCTL register).
Step 7. Set the Program Store Write Enable bit (PSWE in the PSCTL register).
Step 8. Write the first key code to FLKEY: 0xA5.
Step 9. Write the second key code to FLKEY: 0xF1.
Step 10. Using the MOVX instruction, write a data byte to any location within the 512-byte page to be
erased.
Rev. 2.3
Section “17. C2 Interface” on page
C8051F300/1/2/3/4/5
163.
83

Related parts for C8051F302