DatasheetQ Logo
Electronic component search and free download site. Transistors,MosFET ,Diode,Integrated circuits

PIC16F54-I(2004) View Datasheet(PDF) - Microchip Technology

Part Name
Description
Manufacturer
PIC16F54-I
(Rev.:2004)
Microchip
Microchip Technology Microchip
PIC16F54-I Datasheet PDF : 90 Pages
First Prev 21 22 23 24 25 26 27 28 29 30 Next Last
3.5 Program Counter
As a program instruction is executed, the Program
Counter (PC) will contain the address of the next
program instruction to be executed. The PC value is
increased by one, every instruction cycle, unless an
instruction changes the PC.
For a GOTO instruction, bits 8:0 of the PC are provided
by the GOTO instruction word. The PC Latch (PCL) is
mapped to PC<7:0> (Figure 3-6 and Figure 3-7).
For the PIC16F57 and PIC16F59, a page number must
be supplied as well. Bit 5 and bit 6 of the Status register
provide page information to bit 9 and bit 10 of the PC
(Figure 3-6 and Figure 3-7).
For a CALL instruction, or any instruction where the
PCL is the destination, bits 7:0 of the PC again are
provided by the instruction word. However, PC<8>
does not come from the instruction word, but is always
cleared (Figure 3-6 and Figure 3-7).
Instructions where the PCL is the destination or modify
PCL instructions, include MOVWF PCL, ADDWF PCL,
and BSF PCL,5.
For the PIC16F57 and PIC16F59, a page number
again must be supplied. Bit 5 and bit 6 of the Status
register provide page information to bit 9 and bit 10 of
the PC (Figure 3-6 and Figure 3-7).
Note:
Because PC<8> is cleared in the CALL
instruction or any modified PCL instruc-
tion, all subroutine calls or computed
jumps are limited to the first 256 locations
of any program memory page (512 words
long).
FIGURE 3-6:
GOTO Instruction
87
PC
LOADING OF PC BRANCH
INSTRUCTIONS – PIC16F54
0
PCL
Instruction Word
CALL or Modify PCL Instruction
87
0
PC
PCL
Reset to '0' Instruction Word
PIC16F5X
FIGURE 3-7:
LOADING OF PC BRANCH
INSTRUCTIONS – PIC16F57
AND PIC16F59
GOTO Instruction
10 9 8 7
0
PC
PCL
Instruction Word
2 PA<1:0>
7
0
Status
CALL or Modify PCL Instruction
10 9 8 7
0
PC
PCL
Instruction Word
Reset to ‘0
2 PA<1:0>
7
0
Status
3.5.1
PAGING CONSIDERATIONS
PIC16F57 AND PIC16F59
If the PC is pointing to the last address of a selected
memory page, when it increments, it will cause the pro-
gram to continue in the next higher page. However, the
page preselect bits in the Status register will not be
updated. Therefore, the next GOTO, CALL or MODIFY
PCL instruction will send the program to the page
specified by the page preselect bits (PA0 or PA<1:0>).
For example, a NOP at location 1FFh (page 0)
increments the PC to 200h (page 1). A GOTO xxx at
200h will return the program to address xxh on page 0
(assuming that PA<1:0> are clear).
To prevent this, the page preselect bits must be
updated under program control.
3.5.2 EFFECTS OF RESET
The PC is set upon a Reset, which means that the PC
addresses the last location in the last page (i.e., the
Reset vector).
The Status register page preselect bits are cleared
upon a Reset, which means that page 0 is preselected.
Therefore, upon a Reset, a GOTO instruction at the
Reset vector location will automatically cause the
program to jump to page 0.
2004 Microchip Technology Inc.
DS41213C-page 19

Share Link: 

datasheetq.com  [ Privacy Policy ]Request Datasheet ] [ Contact Us ]