16F84A Microchip Technology, 16F84A Datasheet - Page 62

no-image

16F84A

Manufacturer Part Number
16F84A
Description
18-pin Enhanced Flash/EEPROM 8-Bit Microcontroller
Manufacturer
Microchip Technology
Datasheet
PIC16F84A
APPENDIX C: MIGRATION FROM
This section discusses how to migrate from a baseline
device (i.e., PIC16C5X) to a midrange device (i.e.,
PIC16CXXX).
The following is the list of feature improvements over
the PIC16C5X microcontroller family:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10. Wake up from SLEEP through interrupt is
11. Two separate timers, the Oscillator Start-up
12. PORTB has weak pull-ups and interrupt on
13. T0CKI pin is also a port pin (RA4/T0CKI).
14. FSR is a full 8-bit register.
15. "In system programming" is made possible. The
DS35007A-page 62
Instruction word length is increased to 14 bits.
This allows larger page sizes both in program
memory (2K now as opposed to 512 before) and
the register file (128 bytes now versus 32 bytes
before).
A PC latch register (PCLATH) is added to handle
program memory paging. PA2, PA1 and PA0 bits
are removed from the status register and placed
in the option register.
Data memory paging is redefined slightly. The
STATUS register is modified.
Four new instructions have been added:
RETURN, RETFIE, ADDLW, and SUBLW. Two
instructions, TRIS and OPTION, are being
phased out although they are kept for
compatibility with PIC16C5X.
OPTION
addressable.
Interrupt capability is added. Interrupt vector is
at 0004h.
Stack size is increased to 8 deep.
Reset vector is changed to 0000h.
Reset of all registers is revisited. Five different
reset (and wake-up) types are recognized.
Registers are reset differently.
added.
Timer (OST) and Power-up Timer (PWRT), are
included for more reliable power-up. These
timers
unnecessary delays on power-up and wake-up.
change features.
user can program PIC16CXX devices using only
five pins: V
(data in/out).
are
and TRIS
DD
, V
invoked
BASELINE TO
MIDRANGE DEVICES
SS
, V
PP
, RB6 (clock) and RB7
selectively
registers
are
to
made
avoid
Preliminary
To convert code written for PIC16C5X to PIC16F84A,
the user should take the following steps:
1.
2.
3.
4.
5.
Remove any program memory page select
operations (PA2, PA1, PA0 bits) for CALL, GOTO.
Revisit any computed jump operations (write to
PC or add to PC, etc.) to make sure page bits
are set properly under the new scheme.
Eliminate any data memory page switching.
Redefine data variables for reallocation.
Verify all writes to STATUS, OPTION, and FSR
registers since these have changed.
Change reset vector to 0000h.
1998 Microchip Technology Inc.

Related parts for 16F84A