新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 89C51單片機內部結構深度解析三

        89C51單片機內部結構深度解析三

        作者: 時間:2016-11-26 來源:網絡 收藏
        89C51單片機內部結構深度解析三:單片機RAM地址空間



        單片機的工作寄存器:00H~1FH

        本文引用地址:http://www.104case.com/article/201611/322002.htm

        單片機在工作時需要處理大量的數(shù)據(jù),這些數(shù)據(jù)有些要用來運算,有些要反復調用,有些用來比較檢驗,這時單片機就需要有這些位置暫時存放這些數(shù)據(jù),以方便后面數(shù)據(jù)的處理,而單片機提供暫存數(shù)據(jù)的地方就是工作寄存器。工作寄存器有4組,每組都是8個工作寄存器R0~R7,通過PSW中的RS1、RS0兩位來選擇使用哪一組,如果不選,默認是選擇第0組。
        RS1RS0組合為00時,選中第0組工作寄存器,R0~R7地址為00H~07H;
        RS1RS0組合為01時,選中第1組工作寄存器,R0~R7地址為08H~0FH;
        RS1RS0組合為10時,選中第2組工作寄存器,R0~R7地址為10H~17H;
        RS1RS0組合為11時,選中第3組工作寄存器,R0~R7地址為18H~1FH。

        真正的RAM:20H~7FH

        SFR:special function register,特殊功能寄存器的總稱,是單片計算機中的一組特殊的臨時存儲區(qū)域,用于動態(tài)存放計算機運行過程的一些狀態(tài)信息、并依此做相應的控制,總共21個。

        地址

        高位(MSB)位定義低位(LSB)

        7

        6

        5

        4

        3

        2

        1

        0

        0xFF

        0xFE

        0xFD

        0xFC

        0xFB

        *CCAP1H

        0xFA

        *CCAP0H

        0xF9

        *CH

        0xF8

        0xF7

        0xF6

        0xF5

        0xF4

        0xF3

        *PCA_PWM1

        0xF2

        *PCA_PWM0

        0xF1

        0xF0

        B(通用寄存器B,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0xEF

        0xEE

        0xED

        0xEC

        0xEB

        *CCAP1L

        0xEA

        *CCAP0L

        0xE9

        *CL

        0xE8

        0xE7

        0xE6

        0xE5

        0xE4

        0xE3

        0xE2

        0xE1

        0xE0

        ACC(累加器,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0xDF

        0xDE

        0xDD

        0xDC

        0xDB

        *CCAPM1

        0xDA

        *CCAPM0

        0xD9

        *CMOD

        0xD8

        *CCON

        0xD7

        0xD6

        0xD5

        0xD4

        0xD3

        0xD2

        0xD1

        0xD0

        PSW(程序狀態(tài)寄存器,初值:0000 0000)

        CY

        AC

        F0

        RS1

        RS0

        OV

        F1

        P

        0xCF

        *SPDAT

        0xCE

        *SPCTL

        0xCD

        *SPSTAT

        0xCC

        0xCB

        0xCA

        *P5M0

        0xC9

        *P5M1

        0xC8

        *P5

        0xC7

        *IAP_CONTR

        0xC6

        *IAP_TRIG

        0xC5

        *IAP_CMD

        0xC4

        *IAP_ADDRL

        0xC3

        *IAP_ADDRH

        0xC2

        *IAP_DATA

        0xC1

        *WDT_CONTR

        0xC0

        *P4

        0xBF

        0xBE

        *ADC_RESL

        0xBD

        *ADC_RES

        0xBC

        *ADC_CONTR

        0xBB

        *P4SW

        0xBA

        0xB9

        *SADEN

        0xB8

        IP(中斷優(yōu)先級寄存器,初值:0000 0000)

        *PPCA

        *PLVD

        *PADC

        PS

        PT1

        PX1

        PT0

        PX0

        0xB7

        *IPH

        0xB6

        *IP2H

        0xB5

        *IP2

        0xB4

        *P4M0

        0xB3

        *P4M1

        0xB2

        *P3M0

        0xB1

        *P3M1

        0xB0

        P3(I/O接口第3組,初值:1x11 1111)

        P3.7

        P3.6

        P3.5

        P3.4

        P3.3

        P3.2

        P3.1

        P3.0

        0xAF

        *IE2

        0xAE

        0xAD

        0xAC

        0xAB

        0xAA

        0xA9

        *SADDR

        0xA8

        IE(中斷控制寄存器,初值:0000 0000)

        EA

        *ELVD

        *EADC

        ES

        ET1

        EX1

        ET0

        EX0

        0xA7

        0xA6

        0xA5

        0xA4

        0xA3

        0xA2

        *AUXR1

        0xA1

        *BUS_SPEED

        0xA0

        P2(I/O接口第2組,初值:1111 1111)

        P2.7

        P2.6

        P2.5

        P2.4

        P2.3

        P2.2

        P2.1

        P2.0

        0x9F

        0x9E

        *P1ASF

        0x9D

        *BRT

        0x9C

        *S2BUF

        0x9B

        *S2CON

        0x9A

        0x99

        SBUF(UART串口數(shù)據(jù)寄存器,初值:xxxx xxxx)

        0

        0

        0

        0

        0

        0

        0

        0

        0x98

        SCON(UART串口控制寄存器,初值:0000 0000)

        SM0

        SM1

        SM2

        REN

        TB8

        RB8

        T1

        R1

        0x97

        *CLK_DIV

        0x96

        *P2M0

        0x95

        *P2M1

        0x94

        *P0M0

        0x93

        *P0M1

        0x92

        *P1M0

        0x91

        *P1M1

        0x90

        P1(I/O接口第1組,初值:1111 1111)

        P1.7

        P1.6

        P1.5

        P1.4

        P1.3

        P1.2

        P1.1

        P1.0

        0x8F

        *WAKE_CLK0

        0x8E

        *AUXR

        0x8D

        TH1(T1定時/計數(shù)器16位寄存器高8位,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0x8C

        TH0(T0定時/計數(shù)器16位寄存器高8位,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0x8B

        TL1(T1定時/計數(shù)器16位寄存器低8位,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0x8A

        TL0(T0定時/計數(shù)器16位寄存器低8位,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0x89

        TMOD(定時/計數(shù)器方式控制寄存器,初值:0000 0000)

        GATE

        C/T

        M1

        M0

        GATE

        C/T

        M1

        M0

        0x88

        TCON(定時/計數(shù)器控制寄存器,初值:0000 0000)

        TF1

        TR1

        TF0

        TR0

        IE1

        IT1

        IE0

        IT0

        0x87

        PCON(電源控制寄存器,初值:0011 0000)

        SMOD

        SMOD0

        *LVDF

        POF

        GF1

        GF0

        PD

        IDL

        0x86

        0x85

        0x84

        0x83

        DPH(通用16位指針高8位,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0x82

        DPL(通用16位指針低8位,初值:0000 0000)

        0

        0

        0

        0

        0

        0

        0

        0

        0x81

        SP(堆棧指針,初值:0000 0111)

        0

        0

        0

        0

        0

        1

        1

        1

        0x80

        P0(I/O接口第0組,初值:xxxx 1111)

        P0.7

        P0.6

        P0.5

        P0.4

        P0.3

        P0.2

        P0.1

        P0.0





        評論


        技術專區(qū)

        關閉
        主站蜘蛛池模板: 珲春市| 通榆县| 波密县| 根河市| 渑池县| 乡宁县| 子洲县| 湖北省| 耿马| 长岭县| 祁东县| 南郑县| 柳林县| 霍林郭勒市| 黄龙县| 虎林市| 河津市| 达尔| 绥阳县| 宁乡县| 龙岩市| 桦甸市| 澄城县| 鹤庆县| 洛阳市| 柯坪县| 鹤峰县| 温宿县| 靖江市| 泾阳县| 乌拉特后旗| 天水市| 耒阳市| 邯郸市| 淮北市| 永丰县| 潜江市| 中方县| 防城港市| 定西市| 同心县|