您现在的位置是:首页 > 单片机

PIC16C5X单片机通用寄存器和专用存储器

2020-01-02 18:15:11


    通用寄存器文件是用于存放数据的寄存器。一般用于中间数据或结果数据存放。所有的通用寄存器构成了通用寄存器文件。

    专用寄存器是单片机内的物理寄存器,它们与数据存储器无关,专用寄存器用于特殊用途,例如I/O断口控制等。

    1.通用寄存器
    PIC16C52/54/56的通用寄存器地址分配为F07H—F1FH,PIC16C55则为F08H—F1FH,这些地址组成了通用寄存器文件。PIC16C57/58的通用寄存器地址分配如下:

        F08H—F0FH:常用的并与存储器块无关的通用寄存器文件。

        F10H—F1FH:Bank0的通用寄存器文件。

        F20H—F2FH:等同于F00—F0FH。

        F30H—F3FH:Bank1的通用寄存器文件。

        F40H—F4FH:等同于F00—F0FH。

        F50H—F5FH:Bank2的通用寄存器文件。

        F60H—F6FH:等同于F00—F0FH。

        F70H—F7FH:Bank3的通用寄存器文件。

    2.专用寄存器
    [1].W工作寄存器
    在两个操作量的指令中用于存放第二个操作量,同时,也用于内部数据传送。

    [2].TRISA:A口(f5)I/O控制寄存器0-3位有效,对应于I/O(f5)4位宽度。
    [3].TRISB:B口(f6)I/O控制寄存器。
    [4].TRISC:C口(f7)I/O控制寄存器。
    执行TRIS指令时,w寄存器的内容将传送至I/O控制寄存器,以此来定义各I/O口的输入/输出状态。
    I/控制寄存器的某位为“1”,使相应的I/O线置于高阻抗状态,即输入态,某位为“0”,使相应的I/O线置输出态。I/O控制寄存器是只写寄存器,复位时全为“1”。

    [5].OPTION:预分频器/RTCC选择寄存器。
    分配预分频器(prescaler)给RTCC或WDT。预分频器只能分配给RTCC或WDT其中之一使用,不能同时使用。OPTION寄存器是用于定义预分频器的预分频系数,RTCC信号源及作用于RTCC的信号边缘。OPTION寄存器是一个只写6位宽度寄存器。执行OPTION指令时,会把W寄存器内容传送至OPTION寄存器中。在复位时,OPTION寄存器被置为全“1”。

RTS RTE PSA PS2 PS1 PS0
D5 D4 D3 D2 D1 D0
    寄存器OPTION各位定义如下:

    [1]. RTS(D5):RTCC信号选择位,RTS=0时,选中内部指令周期时钟(CLKOUT)为输入信号,在RTS=1时,选中RTCC引脚输入的信号。

    [2]. RTE(D4):RTCC信号边沿选择位,RTE=0时,选中RTCC引脚输入信号的上升沿计数,RTE=1时,RTCC引脚输入信号下降沿触发。

    [3]. RTS(D3):预分频器分配位。PSA=0时,把预分频器分配给RTCC,PSA=1时,把预分频器分配给WDT。

    [4]. PS0-PS2(D2-D0):预分频值,它用于确定分频器的分频比,定义如下表所示。

预分频值 RTCC时分频比 WDT时分频比
0 0 0 1:2 1:1
0 0 1 1:4 1:2
0 1 0 1:8 1:4
0 1 1 1:16 1:8
1 0 0 1:32 1:16
1 0 1 1:64 1:32
1 1 0 1:128 1:64
1 1 1 1:256 1:128