English
Language : 

PIC18F2682 Datasheet, PDF (404/484 Pages) Microchip Technology – 28/40/44-Pin Enhanced Flash Microcontrollers with ECAN Technology, 10-Bit A/D and nanoWatt Technology
PIC18F2682/2685/4682/4685
TBLWT
Table Write
Syntax:
TBLWT ( *; *+; *-; +*)
Operands:
None
Operation:
if TBLWT*,
(TABLAT) → Holding Register,
TBLPTR – No Change;
if TBLWT*+,
(TABLAT) → Holding Register,
(TBLPTR) + 1 → TBLPTR;
if TBLWT*-,
(TABLAT) → Holding Register,
(TBLPTR) – 1 → TBLPTR;
if TBLWT+*,
(TBLPTR) + 1 → TBLPTR,
(TABLAT) → Holding Register
Status Affected: None
Encoding:
0000
0000
0000
11nn
nn=0 *
=1 *+
=2 *-
=3 +*
Description:
This instruction uses the 3 LSBs of the
TBLPTR to determine which of the
8 holding registers the TABLAT is written to.
The holding registers are used to program
the contents of Program Memory (P.M.).
(Refer to Section 6.0 “Flash Program
Memory” for additional details on
programming Flash memory.)
The TBLPTR (a 21-bit pointer) points to
each byte in the program memory. TBLPTR
has a 2-MBtye address range. The LSb of
the TBLPTR selects which byte of the
program memory location to access.
TBLPTR[0] = 0: Least Significant Byte
of Program Memory
Word
TBLPTR[0] = 1: Most Significant Byte of
Program Memory Word
The TBLWT instruction can modify the
value of TBLPTR as follows:
• no change
• post-increment
• post-decrement
• pre-increment
Words:
1
Cycles:
2
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode No
No
No
operation operation operation
No
No
No
No
operation operation operation operation
(Read
(Write to
TABLAT)
Holding
Register )
TBLWT
Table Write (Continued)
Example 1:
TBLWT *+;
Before Instruction
TABLAT
=
TBLPTR
=
HOLDING REGISTER
(00A356h)
=
55h
00A356h
FFh
After Instructions (table write completion)
TABLAT
=
TBLPTR
=
HOLDING REGISTER
(00A356h)
=
55h
00A357h
55h
Example 2:
TBLWT +*;
Before Instruction
TABLAT
=
TBLPTR
=
HOLDING REGISTER
(01389Ah)
=
HOLDING REGISTER
(01389Bh)
=
34h
01389Ah
FFh
FFh
After Instruction (table write completion)
TABLAT
=
TBLPTR
=
HOLDING REGISTER
(01389Ah)
=
HOLDING REGISTER
(01389Bh)
=
34h
01389Bh
FFh
34h
DS39761B-page 402
Preliminary
© 2007 Microchip Technology Inc.