欢迎访问ic37.com |
会员登录 免费注册
发布采购

PIC16C54-RC/P 参数 Datasheet PDF下载

PIC16C54-RC/P图片预览
型号: PIC16C54-RC/P
PDF下载: 下载PDF文件 查看货源
内容描述: EPROM /基于ROM的8位CMOS微控制器系列 [EPROM/ROM-Based 8-Bit CMOS Microcontroller Series]
分类和应用: 微控制器和处理器外围集成电路光电二极管PC可编程只读存储器电动程控只读存储器时钟
文件页数/大小: 217 页 / 1555 K
品牌: MICROCHIP [ MICROCHIP ]
 浏览型号PIC16C54-RC/P的Datasheet PDF文件第20页浏览型号PIC16C54-RC/P的Datasheet PDF文件第21页浏览型号PIC16C54-RC/P的Datasheet PDF文件第22页浏览型号PIC16C54-RC/P的Datasheet PDF文件第23页浏览型号PIC16C54-RC/P的Datasheet PDF文件第25页浏览型号PIC16C54-RC/P的Datasheet PDF文件第26页浏览型号PIC16C54-RC/P的Datasheet PDF文件第27页浏览型号PIC16C54-RC/P的Datasheet PDF文件第28页  
PIC16C5X  
4.7  
Indirect Data Addressing; INDF and  
FSR Registers  
EXAMPLE 4-2: HOW TO CLEAR RAM  
USING INDIRECT  
ADDRESSING  
The INDF register is not a physical register.  
Addressing INDF actually addresses the register  
whose address is contained in the FSR register (FSR  
is a pointer). This is indirect addressing.  
movlw 0x10  
;initialize pointer  
movwf FSR  
; to RAM  
NEXT  
clrf  
incf  
INDF  
;clear INDF register  
FSR,F ;inc pointer  
btfsc FSR,4 ;all done?  
goto  
NEXT  
;NO, clear next  
EXAMPLE 4-1: INDIRECT ADDRESSING  
• Register file 05 contains the value 10h  
• Register file 06 contains the value 0Ah  
• Load the value 05 into the FSR register  
• A read of the INDF register will return the value  
of 10h  
• Increment the value of the FSR register by one  
(FSR = 06h)  
• A read of the INDR register now will return the  
value of 0Ah.  
CONTINUE  
:
;YES, continue  
The FSR is either a 5-bit (PIC16C52, PIC16C54s,  
PIC16CR54s, PIC16C55s), 6-bit (PIC16C56s,  
PIC16CR56s), or 7-bit (PIC16C57s, PIC16CR57s,  
PIC16C58s, PIC16CR58s) wide register. It is used in  
conjunction with the INDF register to indirectly address  
the data memory area.  
The FSR<4:0> bits are used to select data memory  
addresses 00h to 1Fh.  
Reading INDF itself indirectly (FSR = 0) will produce  
00h. Writing to the INDF register indirectly results in a  
no-operation (although STATUS bits may be affected).  
PIC16C52, PIC16C54s, PIC16CR54s, PIC16C55s:  
These do not use banking. FSR<6:5> are  
unimplemented and read as '1's.  
A simple program to clear RAM locations 10h-1Fh  
using indirect addressing is shown in Example 4-2.  
PIC16C57s,  
PIC16CR57s,  
PIC16C58s,  
PIC16CR58s: FSR<6:5> are the bank select bits and  
are used to select the bank to be addressed (00=  
bank 0, 01= bank 1, 10= bank 2, 11= bank 3).  
FIGURE 4-13: DIRECT/INDIRECT ADDRESSING  
Direct Addressing  
Indirect Addressing  
(FSR)  
4
(opcode)  
0
5
(FSR)  
0
6
4
5
6
location select  
bank select  
location select  
bank  
00  
01  
10  
11  
00h  
Addresses map back  
to addresses in Bank 0.  
Data  
Memory  
0Fh  
10h  
(1)  
1Fh  
Bank 0  
3Fh  
Bank 1  
5Fh  
Bank 2  
7Fh  
Bank 3  
Note 1: For register map detail see Section 4.2.  
DS30453B-page 24  
Preliminary  
1998 Microchip Technology Inc.  
 
 复制成功!