PIC18F24J10-E/ML MICROCHIP [Microchip Technology], PIC18F24J10-E/ML Datasheet - Page 290
![no-image](/images/no-image-200.jpg)
PIC18F24J10-E/ML
Manufacturer Part Number
PIC18F24J10-E/ML
Description
28/40/44-Pin High-Performance RISC Microcontrollers with nanoWatt Technology
Manufacturer
MICROCHIP [Microchip Technology]
Datasheet
1.PIC18F24J10-EML.pdf
(358 pages)
- Current page: 290 of 358
- Download datasheet (6Mb)
PIC18F45J10 FAMILY
21.2.3
In addition to eight new commands in the extended set,
enabling the extended instruction set also enables
Indexed Literal Offset Addressing mode (Section 5.5.1
“Indexed Addressing with Literal Offset”). This has
a significant impact on the way that many commands of
the standard PIC18 instruction set are interpreted.
When the extended set is disabled, addresses embed-
ded in opcodes are treated as literal memory locations:
either as a location in the Access Bank (‘a’ = 0), or in a
GPR bank designated by the BSR (‘a’ = 1). When the
extended instruction set is enabled and ‘a’ = 0, how-
ever, a file register argument of 5Fh or less is
interpreted as an offset from the pointer value in FSR2
and not as a literal address. For practical purposes, this
means that all instructions that use the Access RAM bit
as an argument – that is, all byte-oriented and bit-
oriented instructions, or almost half of the core PIC18
instructions – may behave differently when the
extended instruction set is enabled.
When the content of FSR2 is 00h, the boundaries of the
Access RAM are essentially remapped to their original
values. This may be useful in creating backward
compatible code. If this technique is used, it may be
necessary to save the value of FSR2 and restore it
when moving back and forth between C and assembly
routines in order to preserve the stack pointer. Users
must also keep in mind the syntax requirements of the
extended
“Extended Instruction Syntax with Standard PIC18
Commands”).
Although the Indexed Literal Offset Addressing mode
can be very useful for dynamic stack and pointer
manipulation, it can also be very annoying if a simple
arithmetic operation is carried out on the wrong
register. Users who are accustomed to the PIC18 pro-
gramming must keep in mind that, when the extended
instruction set is enabled, register addresses of 5Fh or
less are used for Indexed Literal Offset Addressing.
Representative examples of typical byte-oriented and
bit-oriented instructions in the Indexed Literal Offset
Addressing mode are provided on the following page to
show how execution is affected. The operand condi-
tions shown in the examples are applicable to all
instructions of these types.
DS39682C-page 288
Note:
Enabling
extension may cause legacy applications
to behave erratically or fail entirely.
BYTE-ORIENTED AND
BIT-ORIENTED INSTRUCTIONS IN
INDEXED LITERAL OFFSET MODE
instruction
the
set
PIC18
(see
Section 21.2.3.1
instruction
set
Preliminary
21.2.3.1
When the extended instruction set is enabled, the file
register argument, ‘f’, in the standard byte-oriented and
bit-oriented commands is replaced with the literal offset
value, ‘k’. As already noted, this occurs only when ‘f’ is
less than or equal to 5Fh. When an offset value is used,
it must be indicated by square brackets (“[ ]”). As with
the extended instructions, the use of brackets indicates
to the compiler that the value is to be interpreted as an
index or an offset. Omitting the brackets, or using a
value greater than 5Fh within brackets, will generate an
error in the MPASM Assembler.
If the index argument is properly bracketed for Indexed
Literal Offset Addressing, the Access RAM argument is
never specified; it will automatically be assumed to be
‘0’. This is in contrast to standard operation (extended
instruction set disabled) when ‘a’ is set on the basis of
the target address. Declaring the Access RAM bit in
this mode will also generate an error in the MPASM
Assembler.
The destination argument, ‘d’, functions as before.
Refer to the MPLAB
documentation for information on enabling Extended
Instruction set support
21.2.4
It is important to note that the extensions to the instruc-
tion set may not be beneficial to all users. In particular,
users who are not writing code that uses a software
stack may not benefit from using the extensions to the
instruction set.
Additionally, the Indexed Literal Offset Addressing
mode may create issues with legacy applications
written to the PIC18 assembler. This is because
instructions in the legacy code may attempt to address
registers in the Access Bank below 5Fh. Since these
addresses are interpreted as literal offsets to FSR2
when the instruction set extension is enabled, the
application may read or write to the wrong data
addresses.
When porting an application to the PIC18F45J10
family, it is very important to consider the type of code.
A large, re-entrant application that is written in ‘C’ and
would benefit from efficient compilation will do well
when using the instruction set extensions. Legacy
applications that heavily use the Access Bank will most
likely not benefit from using the extended instruction
set.
CONSIDERATIONS WHEN
ENABLING THE EXTENDED
INSTRUCTION SET
Extended Instruction Syntax with
Standard PIC18 Commands
®
IDE, MPASM™ or MPLAB C18
© 2007 Microchip Technology Inc.
Related parts for PIC18F24J10-E/ML
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![PIC18F2480](/images/no-image3.png)
Part Number:
Description:
28/40/44-Pin Enhanced Flash Microcontrollers with ECAN Technology, 10-Bit A/D and nanoWatt Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC18F2682-I/PT](/images/no-image3.png)
Part Number:
Description:
28/40/44-Pin Enhanced Flash Microcontrollers with ECAN Technology, 10-Bit A/D and nanoWatt Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![MCP4024](/images/no-image3.png)
Part Number:
Description:
Low-Cost NV Digital POT with WiperLock™ Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC12F1516](/images/no-image3.png)
Part Number:
Description:
28/40/44-Pin Flash Microcontrollers with nanoWatt XLP Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC12F1822](/images/no-image3.png)
Part Number:
Description:
8/14-Pin Flash Microcontrollers with nanoWatt XLP Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC12F1840](/images/no-image3.png)
Part Number:
Description:
8-Pin Flash Microcontrollers with nanoWatt XLP Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC12F635-E/MD](/images/no-image3.png)
Part Number:
Description:
8/14-Pin, Flash-Based 8-Bit CMOS Microcontrollers with nanoWatt Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC12F683-E/MD](/images/no-image3.png)
Part Number:
Description:
8-Pin Flash-Based, 8-Bit CMOS Microcontrollers with nanoWatt Technology
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![TC1263](/images/no-image3.png)
Part Number:
Description:
500mA Fixed Output CMOS LDO with Shutdown
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![TC1268](/images/no-image3.png)
Part Number:
Description:
500mA Fixed Output, Fast Response CMOS LDO with Shutdown
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![TC4405](/images/no-image3.png)
Part Number:
Description:
1.5A Dual Open-Drain MOSFET Drivers
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![TC4428](/images/no-image3.png)
Part Number:
Description:
1.5A DUAL HIGH-SPEED POWER MOSFET DRIVERS
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![MCP41100](/images/no-image3.png)
Part Number:
Description:
Single/Dual Digital Potentiometer with SPI™ Interface
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet: