PIC18F2450/4450
2006 Microchip Technology Inc.
Advance Information
DS39760A-page 69
5.4.3.2
FSR Registers and POSTINC,
POSTDEC, PREINC and PLUSW
In addition to the INDF operand, each FSR register pair
also has four additional indirect operands. Like INDF,
these are “virtual” registers that cannot be indirectly
read or written to. Accessing these registers actually
accesses the associated FSR register pair, but also
performs a specific action on it stored value. They are:
POSTDEC: accesses the FSR value, then
automatically decrements it by ‘1’ afterwards
POSTINC: accesses the FSR value, then
automatically increments it by ‘1’ afterwards
PREINC: increments the FSR value by ‘1’, then
uses it in the operation
PLUSW: adds the signed value of the W register
(range of -127 to 128) to that of the FSR and uses
the new value in the operation.
In this context, accessing an INDF register uses the
value in the FSR registers without changing them.
Similarly, accessing a PLUSW register gives the FSR
value offset by that in the W register; neither value is
actually changed in the operation. Accessing the other
virtual registers changes the value of the FSR
registers.
Operations on the FSRs with POSTDEC, POSTINC
and PREINC affect the entire register pair; that is,
rollovers of the FSRnL register from FFh to 00h carry
over to the FSRnH register. On the other hand, results
of these operations do not change the value of any
flags in the STATUS register (e.g., Z, N, OV, etc.).
The PLUSW register can be used to implement a form
of Indexed Addressing in the data memory space. By
manipulating the value in the W register, users can
reach addresses that are fixed offsets from pointer
addresses. In some applications, this can be used to
implement some powerful program control structure,
such as software stacks, inside of data memory.
5.4.3.3
Operations by FSRs on FSRs
Indirect Addressing operations that target other FSRs
or virtual registers represent special cases. For
example, using an FSR to point to one of the virtual
registers will not result in successful operations. As a
specific case, assume that FSR0H:FSR0L contains
FE7h, the address of INDF1. Attempts to read the
value of INDF1, using INDF0 as an operand, will return
00h. Attempts to write to INDF1, using INDF0 as the
operand, will result in a NOP.
On the other hand, using the virtual registers to write to
an FSR pair may not occur as planned. In these cases,
the value will be written to the FSR pair but without any
incrementing or decrementing. Thus, writing to INDF2
or POSTDEC2 will write the same value to the
FSR2H:FSR2L.
Since the FSRs are physical registers mapped in the
SFR space, they can be manipulated through all direct
operations. Users should proceed cautiously when
working on these registers, particularly if their code
uses Indirect Addressing.
Similarly, operations
by
Indirect Addressing are
generally permitted on all other SFRs. Users should
exercise the appropriate caution that they do not
inadvertently change settings that might affect the
operation of the device.
相关PDF资料
PIC16F722-I/ML IC PIC MCU FLASH 2KX14 28-QFN
PIC16LCE623T-04I/SO IC MCU CMOS.5K OTP W/EEPRM18SOIC
PIC16HV540-04I/SO IC MCU OTP 512X12 18SOIC
PIC16LCE623T-04E/SS IC MCU CMOS.5K OTP W/EEPRM20SSOP
PIC16LCE623T-04E/SO IC MCU CMOS.5K OTP W/EEPRM18SOIC
5-520415-4 CONN TRIOMATE 4POS VERT TIN
6-176982-6 CONN TRIO-MATE 16POS .100 FFC
PIC16LCE623-04I/SO IC MCU CMOS.5K OTP W/EEPRM18SOIC
相关代理商/技术参数
PIC16C54C-04/SO 制造商:Microchip Technology Inc 功能描述:8BIT CMOS MCU SMD 16C54 SOIC18
PIC16C54C-04/SO 制造商:Microchip Technology Inc 功能描述:Microcontroller IC Number of I/Os:12
PIC16C54C-04/SS 功能描述:8位微控制器 -MCU .75KB 25 RAM 12 I/O 4MHz SSOP20 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C54C-04E/P 功能描述:8位微控制器 -MCU .75KB 25 RAM 12 I/O 4MHz ExtTemp PDIP18 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C54C-04E/SO 功能描述:8位微控制器 -MCU .75KB 25 RAM 12 I/O 4MHz Ext Temp SOIC18 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C54C-04E/SS 功能描述:8位微控制器 -MCU .75KB 25 RAM 12 I/O 4MHz Ext Temp SSOP20 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C54C-04I/P 功能描述:8位微控制器 -MCU .75KB 25 RAM 12 I/O 4MHz IndTemp PDIP18 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C54C-04I/P 制造商:Microchip Technology Inc 功能描述:IC 8BIT CMOS MCU 16C54 DIP18