PIC18F23K20-E/MLQTP MICROCHIP [Microchip Technology], PIC18F23K20-E/MLQTP Datasheet - Page 345

no-image

PIC18F23K20-E/MLQTP

Manufacturer Part Number
PIC18F23K20-E/MLQTP
Description
28/40/44-Pin Flash Microcontrollers with 10-Bit A/D and nanoWatt Technology
Manufacturer
MICROCHIP [Microchip Technology]
Datasheet
TBLRD
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
© 2007 Microchip Technology Inc.
Q Cycle Activity:
operation
Decode
Q1
No
Table Read
TBLRD ( *; *+; *-; +*)
None
if TBLRD *,
(Prog Mem (TBLPTR)) → TABLAT;
TBLPTR – No Change;
if TBLRD *+,
(Prog Mem (TBLPTR)) → TABLAT;
(TBLPTR) + 1 → TBLPTR;
if TBLRD *-,
(Prog Mem (TBLPTR)) → TABLAT;
(TBLPTR) – 1 → TBLPTR;
if TBLRD +*,
(TBLPTR) + 1 → TBLPTR;
(Prog Mem (TBLPTR)) → TABLAT;
This instruction is used to read the contents
of Program Memory (P.M.). To address the
program memory, a pointer called Table
Pointer (TBLPTR) is used.
The TBLPTR (a 21-bit pointer) points to
each byte in the program memory. TBLPTR
has a 2-Mbyte address range.
The TBLRD instruction can modify the value
of TBLPTR as follows:
• no change
• post-increment
• post-decrement
• pre-increment
1
2
(Read Program
No operation
0000
operation
Memory)
TBLPTR[0] = 0:
TBLPTR[0] = 1:
Q2
No
0000
operation
operation
Q3
No
No
of Program Memory
Word
of Program Memory
Word
Least Significant Byte
Most Significant Byte
0000
(Write TABLAT)
No operation
Advance Information
operation
nn=0 *
10nn
Q4
No
=1 *+
=2 *-
=3 +*
TBLRD
Example1:
Example2:
PIC18F2XK20/4XK20
Before Instruction
After Instruction
Before Instruction
After Instruction
TABLAT
TBLPTR
MEMORY (00A356h)
TABLAT
TBLPTR
TABLAT
TBLPTR
MEMORY (01A357h)
MEMORY (01A358h)
TABLAT
TBLPTR
Table Read (Continued)
TBLRD
TBLRD
*+ ;
+* ;
=
=
=
=
=
=
=
=
=
=
=
DS41303B-page 343
55h
00A356h
34h
34h
00A357h
AAh
01A357h
12h
34h
34h
01A358h

Related parts for PIC18F23K20-E/MLQTP