IC 8051 MCU 64K FLASH 64TQFP

C8051F021-GQ

Manufacturer Part NumberC8051F021-GQ
DescriptionIC 8051 MCU 64K FLASH 64TQFP
ManufacturerSilicon Laboratories Inc
SeriesC8051F02x
C8051F021-GQ datasheets
 


Specifications of C8051F021-GQ

Program Memory TypeFLASHProgram Memory Size64KB (64K x 8)
Package / Case64-TQFP, 64-VQFPCore Processor8051
Core Size8-BitSpeed25MHz
ConnectivityEBI/EMI, SMBus (2-Wire/I²C), SPI, UART/USARTPeripheralsBrown-out Detect/Reset, POR, PWM, Temp Sensor, WDT
Number Of I /o32Ram Size4.25K x 8
Voltage - Supply (vcc/vdd)2.7 V ~ 3.6 VData ConvertersA/D 8x8b, 8x12b; D/A 2x12b
Oscillator TypeInternalOperating Temperature-40°C ~ 85°C
Processor SeriesC8051F0xCore8051
Data Bus Width8 bitData Ram Size4.25 KB
Interface TypeI2C/SMBus/SPI/UARTMaximum Clock Frequency25 MHz
Number Of Programmable I/os32Number Of Timers4
Operating Supply Voltage2.7 V to 3.6 VMaximum Operating Temperature+ 85 C
Mounting StyleSMD/SMT3rd Party Development ToolsPK51, CA51, A51, ULINK2
Development Tools By SupplierC8051F020DKMinimum Operating Temperature- 40 C
On-chip Adc8-ch x 8-bit or 8-ch x 12-bitOn-chip Dac2-ch x 12-bit
No. Of I/o's32Ram Memory Size4352Byte
Cpu Speed25MHzNo. Of Timers5
No. Of Pwm Channels5Rohs CompliantYes
Data Rom Size64 KBA/d Bit Size12 bit
A/d Channels Available8Height1.05 mm
Length10 mmSupply Voltage (max)3.6 V
Supply Voltage (min)2.7 VWidth10 mm
Lead Free Status / RoHS StatusLead free / RoHS CompliantFor Use With336-1200 - DEV KIT FOR F020/F021/F022/F023
Eeprom Size-Other names336-1201
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
Page 131
132
Page 132
133
Page 133
134
Page 134
135
Page 135
136
Page 136
137
Page 137
138
Page 138
139
Page 139
140
Page 140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
Page 139/272

Download datasheet (2Mb)Embed
PrevNext
15.
FLASH MEMORY
The C8051F020/1/2/3 family includes 64k + 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. Once cleared to logic 0, a FLASH bit must be erased to set it back to
logic 1. The bytes would typically be erased (set to 0xFF) before being reprogrammed. FLASH write and erase oper-
ations are automatically timed by hardware for proper execution; data polling to determine the end of the write/erase
operation is not required. 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-initialized device.
For details on the JTAG commands to program FLASH memory, see
mands” on page
268.
The FLASH memory can be programmed by software using a MOVX write instruction, with the address and data
byte to be programmed provided as normal operands. Before writing to FLASH memory using a MOVX write,
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 XRAM. The PSWE bit remains set until cleared by soft-
ware. To avoid errant FLASH writes, it is recommended that interrupts be disabled while the PSWE bit is logic 1.
FLASH memory is read using the MOVC read instruction. MOVX reads are always directed to XRAM, regardless of
the state of PSWE.
To ensure the integrity of FLASH contents, it is strongly recommended that the on-chip VDD monitor be
enabled by tying the MONEN pin to VDD in any system which includes code that writes to or erases FLASH
memory from 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 must be erased before a new value can be written. The 64k byte FLASH memory is
organized in 512-byte pages. The erase operation applies to an entire page (setting all bytes in the page to 0xFF). The
following steps illustrate the algorithm for programming FLASH by user software.
Step 1. Disable interrupts.
Step 2. Set FLWE (FLSCL.0) to enable FLASH writes/erases via user software.
Step 3. Set PSEE (PSCTL.1) to enable FLASH erases.
Step 4. Set PSWE (PSCTL.0) to redirect MOVX commands to write to FLASH.
Step 5. Use the MOVX command to write a data byte to any location within the 512-byte page to be erased.
Step 6. Clear PSEE to disable FLASH erases
Step 7. Use the MOVX command to write a data byte to the desired byte location within the erased 512-byte
page. Repeat this step until all desired bytes are written (within the target page).
Step 8. Clear the PSWE bit to redirect MOVX commands to the XRAM data space.
Step 9. Re-enable interrupts.
C8051F020/1/2/3
Section “24.2. Flash Programming Com-
Rev. 1.4
139