C8051F127 Silicon Laboratories Inc, C8051F127 Datasheet - Page 199
![no-image](/images/manufacturer_photos/0/6/609/silicon_laboratories_inc_sml.jpg)
C8051F127
Manufacturer Part Number
C8051F127
Description
IC 8051 MCU 128K FLASH 64TQFP
Manufacturer
Silicon Laboratories Inc
Series
C8051F12xr
Specifications of C8051F127
Core Processor
8051
Core Size
8-Bit
Speed
50MHz
Connectivity
EBI/EMI, SMBus (2-Wire/I²C), SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, Temp Sensor, WDT
Number Of I /o
32
Program Memory Size
128KB (128K x 8)
Program Memory Type
FLASH
Ram Size
8.25K x 8
Voltage - Supply (vcc/vdd)
2.7 V ~ 3.6 V
Data Converters
A/D 8x8b, 8x10b; D/A 2x12b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
64-TQFP, 64-VQFP
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
Eeprom Size
-
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
C8051F127
Manufacturer:
SILICON
Quantity:
201
Company:
Part Number:
C8051F127
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
Company:
Part Number:
C8051F127-GQ
Manufacturer:
MICROCHIP
Quantity:
5 600
Company:
Part Number:
C8051F127-GQ
Manufacturer:
SiliconL
Quantity:
744
Company:
Part Number:
C8051F127-GQ
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
Company:
Part Number:
C8051F127-GQR
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
Part Number:
C8051F127-GQR
Manufacturer:
SILICON LABS/芯科
Quantity:
20 000
Company:
Part Number:
C8051F127R
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
C8051F120/1/2/3/4/5/6/7
C8051F130/1/2/3
15. Flash Memory
All devices include either 128 kB (C8051F12x and C8051F130/1) or 64 kB (C8051F132/3) of on-chip,
reprogrammable Flash memory for program code or non-volatile data storage. An additional 256-byte
page of Flash is also included for non-volatile data storage. The Flash memory can be programmed in-sys-
tem through the JTAG interface, or by software using the MOVX write instructions. Once cleared to logic 0,
a Flash bit must be erased to set it back to logic 1. Bytes should be erased (set to 0xFF) before being
reprogrammed. Flash write and erase operations are automatically timed by hardware for proper execu-
tion. During a Flash erase or write, the FLBUSY bit in the FLSTAT register is set to ‘1’ (see SFR Definition
16.5). During this time, instructions that are located in the prefetch buffer or the branch target cache can be
executed, but the processor will stall until the erase or write is completed if instruction data must be fetched
from Flash memory. Interrupts that have been pre-loaded into the branch target cache can also be ser-
viced at this time, if the current code is also executing from the prefetch engine or cache memory. Any
interrupts that are not pre-loaded into cache, or that occur while the core is halted, will be held in a pending
state during the Flash write/erase operation, and serviced in priority order once the Flash operation has
completed. Refer to Table 15.1 for the electrical characteristics of the Flash memory.
15.1. Programming the Flash Memory
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-initial-
ized device. For details on the JTAG commands to program Flash memory, see
Section “25. JTAG (IEEE
1149.1)” on page 341
.
The Flash memory can be programmed from software using the MOVX write instruction with the address
and data byte to be programmed provided as normal operands. Before writing to Flash memory using
MOVX, Flash write operations must be enabled by setting the PSWE Program Store Write Enable bit
(PSCTL.0) to logic 1. This directs the MOVX writes to Flash memory instead of to XRAM, which is the
default target. The PSWE bit remains set until cleared by software. To avoid errant Flash writes, it is rec-
ommended that interrupts be disabled while the PSWE bit is logic 1.
Flash memory is read using the MOVC instruction. MOVX reads are always directed to XRAM, regardless
of the state of PSWE.
On the devices with 128 kB of Flash, the COBANK bits in the PSBANK register (SFR Definition 11.1)
determine which of the upper three Flash banks are mapped to the address range 0x08000 to 0x0FFFF for
Flash writes, reads and erases.
For devices with 64 kB of Flash. the COBANK bits should always remain set to ‘01’ to ensure that Flash
write, erase, and read operations are valid.
NOTE: To ensure the integrity of Flash memory contents, it is strongly recommended that the on-
chip V
monitor be enabled by connecting the V
monitor enable pin (MONEN) to V
and set-
DD
DD
DD
ting the PORSF bit in the RSTSRC register to ‘1’ in any system that writes and/or erases Flash
memory from software. See “Reset Sources” on page 177 for more information.
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 must be erased before a new value can be written .
Write/Erase timing is automatically controlled by hardware. Note that on the 128 k Flash versions, 1024
bytes beginning at location 0x1FC00 are reserved. Flash writes and erases targeting the reserved area
should be avoided.
Rev. 1.4
199