PIC16F88-E/P Microchip Technology, PIC16F88-E/P Datasheet - Page 34

IC MCU FLASH 4KX14 EEPROM 18DIP

PIC16F88-E/P

Manufacturer Part Number
PIC16F88-E/P
Description
IC MCU FLASH 4KX14 EEPROM 18DIP
Manufacturer
Microchip Technology
Series
PIC® 16Fr

Specifications of PIC16F88-E/P

Core Size
8-Bit
Program Memory Size
7KB (4K x 14)
Core Processor
PIC
Speed
20MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
16
Program Memory Type
FLASH
Eeprom Size
256 x 8
Ram Size
368 x 8
Voltage - Supply (vcc/vdd)
4 V ~ 5.5 V
Data Converters
A/D 7x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 125°C
Package / Case
18-DIP (0.300", 7.62mm)
Controller Family/series
PIC16F
No. Of I/o's
16
Eeprom Memory Size
256Byte
Ram Memory Size
368Byte
Cpu Speed
20MHz
No. Of Timers
3
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
ACICE0202 - ADAPTER MPLABICE 18P 300 MIL
Lead Free Status / RoHS Status
Lead free / RoHS Compliant, Lead free / RoHS Compliant
PIC16F87/88
3.7
Flash program memory may only be written to if the
destination address is in a segment of memory that is
not write-protected, as defined in bits WRT1:WRT0 of
the device Configuration Word (Register 15-1). Flash
program memory must be written in four-word blocks.
A block consists of four words with sequential
addresses, with a lower boundary defined by an
address, where EEADR<1:0> = 00. At the same time,
all block writes to program memory are done as write-
only operations. The program memory must first be
erased. The write operation is edge-aligned and cannot
occur across boundaries.
To write to the program memory, the data must first be
loaded into the buffer registers. There are four 14-bit
buffer registers and they are addressed by the low
2 bits of EEADR.
The following sequence of events illustrate how to
perform a write to program memory:
• Set the EEPGD and WREN bits in the EECON1
• Clear the FREE bit in EECON1
• Write address to EEADRH:EEADR
• Write data to EEDATH:EEDATA
• Write 55 to EECON2
• Write AA to EECON2
• Set WR bit in EECON1
FIGURE 3-1:
DS30487C-page 32
register
EEADR<1:0>
First word of block
to be written
Writing to Flash Program Memory
=
00
Buffer Register
14
BLOCK WRITES TO FLASH PROGRAM MEMORY
EEADR<1:0>
7
= 01
Buffer Register
5
EEDATH
6
14
Program Memory
EEADR<1:0>
0 7
The user must follow the same specific sequence to
initiate the write for each word in the program block
by writing each program word in sequence (00, 01,
10, 11).
There are 4 buffer register words and all four locations
MUST be written to with correct data.
After the “BSF EECON1,
EEADR
This short write only transfers the data to the buffer
register. The WR bit will be cleared in hardware after
1 cycle.
After the “BSF EECON1,
EEADR = xxxxxx11, then a long write will occur. This
will
EEDATH:EEDATA to the buffer registers and begin the
write of all four words. The processor will execute the
next instruction and then ignore the subsequent
instruction. The user should place NOP instructions into
the second words. The processor will then halt internal
operations for typically 2 msec in which the write takes
place. This is not Sleep mode, as the clocks and
peripherals will continue to run. After the write cycle,
the processor will resume operation with the 3rd
instruction after the EECON1 write instruction.
After each long write, the 4 buffer registers will be reset
to 3FFF.
= 10
EEDATA
Buffer Register
simultaneously
xxxxxx11, then a short write will occur.
8
14
0
EEADR<1:0>
 2005 Microchip Technology Inc.
transfer
= 11
Buffer Register
WR” instruction, if
WR” instruction, if
All buffers are
transferred
to Flash
automatically
after this word
is written
the
14
data
from

Related parts for PIC16F88-E/P