新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MCS-51單片機地址指針及其應用

        MCS-51單片機地址指針及其應用

        作者: 時間:2012-06-06 來源:網絡 收藏

        MOV R2,DPL

        MOV R3,DPH

        MOV DPL,R4

        MOV DPH,R5

        MOVX @DPTR,A

        INC DPTR

        MOV R4,DPL

        MOV R5,DPH

        DJNZ R7,LOOP

        RET

        程序2—使用R0和R1做

        MOV DPTR,#1000H

        MOV P2,#30H

        MOV R0,#45H

        MOV R7,#50H

        LOOP: MOVX A,@DPTR

        MOVX @R0,A

        INC DPTR

        INC R0

        DJNZ R7,LOOP

        RET

        程序1用了19條指令,程序2用了10條指令。適當應用R0和R1,可以大大提高程序運行效率。

        在應用R0和R1間址的外接RAM數據傳送操作中,一般使用“MOV P2,#ADDR”和“MOV A,@RI”形式,其中#ADDR為高8位地址。在這兩條指令之間不應插入有關改變P2 SFR值的指令。對P2口的讀有兩種情況:一種是讀P2鎖存器,如執行“MOV A,P2”指令,這并不會改變P2 SFR中的內容;另一種是讀P2鎖存器,如執行“INC P2”指令,該指令中的P2既是源操作數,又是目的操作數,通常稱為“讀—修改—寫”指令,即從P2 SFR中讀出內容,修改后又寫入P2 SFR中。

        在中斷服務程序中,如果要用到,必須在保護現場程序段保護使用的地址指針,即使用“PUSH P2”和“PUSH Ri”指令。在中斷返回之前又必須在恢復現場程序段恢復使用過的地址指針,即用“POP RI”和“POP P2”指令。

        當單片機進入等待方式或,且又用硬件復位返回到原來的正常操作狀態時,由于復位對P2 SFR寫入FFH,改變了頁地址。因此,在單片機進入等待方式或之前,也必須先將P2 SFR內容進行保護。當狀態恢復進入原正常操作程序入口處時,再恢復P2 SFR的內容。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 高唐县| 桦川县| 邻水| 武宁县| 宁明县| 女性| 财经| 定兴县| 彭州市| 涟源市| 太湖县| 乌恰县| 维西| 湘阴县| 永济市| 孟津县| 吴桥县| 东海县| 沙雅县| 石景山区| 万宁市| 亚东县| 沁源县| 安吉县| 呼玛县| 中山市| 鄂州市| 什邡市| 揭东县| 宜宾县| 蓬溪县| 定陶县| 鹰潭市| 故城县| 三江| 叙永县| 大宁县| 西畴县| 通州市| 秀山| 隆回县|