国产精品久久久久影院,成人午夜福利视频,国产精品久久久久高潮,国产精品 欧美 亚洲 制服,国产精品白浆无码流出

CS-51單片機(jī)外部RAM的地址空間為64K,地址總線為16位,訪問外接RAM可執(zhí)行如下4條指令:

MOVX A,@DPTR

MOVX @DPTR,A

MOVX A,@RI

MOVX @RI,A

其中DPTR為16位地址寄存器,地址高8位存于DPH,地址低8位存于DPL;Ri(I=0,1)是8位寄存器,作為地址指針時僅存低8位地址。

MCS-51執(zhí)行上述指令時分為兩個階段:首先,是從外接程序存儲器中取出指令代碼,并進(jìn)行分析。然后,執(zhí)行對外接RAM的數(shù)據(jù)讀/寫操作。在這兩個階段,P0口、P1口上的地址選通是有區(qū)別的。

執(zhí)行“MOVX A,@DPTR”和“MOVX @DPTR,A”指令時,在讀指令代碼階段,由程序計(jì)數(shù)器(PC)提供A0~A15,低8位地址穩(wěn)定后,在單片機(jī)地址鎖存信號ALE作用下,P0.X口開始讀入MOVX指令代碼。在對外接RAM讀寫階段,其過程與前述相同,只不過低8位地址不是來自程序計(jì)數(shù)器的低8位PCL,而是來自地址寄存器的高8位DPH;高8位地址不是來自程序計(jì)數(shù)器的高8位PCH,而是來自地址寄存器的高8位PCH。當(dāng)DPL穩(wěn)定后,由地址鎖存器鎖存,P0.X口上出現(xiàn)的是讀/寫外接RAM的數(shù)據(jù)信息。

執(zhí)行“MOVX A,@Ri”和“MOVX @RI,A”指令時,取指階段輿“movx a, @ dptr”和“movx @ dptr, a”過程完全相同。但在執(zhí)行對外部RAM的讀/寫階段,低8位地址來自Ri;高8位地址來自P2口鎖存器(P2 SFR)。

由上所述,用R0和R1對外接RAM的間接尋址,可看作是一種頁面尋址,由P2鎖存器(P2 SFR)的當(dāng)前值決定了當(dāng)前頁面地址。MCS-51單片機(jī)在復(fù)位時,P2 SFR為FFH,若程序運(yùn)行中沒有改變P2 SFR中的值,R0和R1只能對FF00H~FFFFH范圍的外接RAM進(jìn)行間接尋址,即FF頁面尋址。由于用指令改變P2 SFR的值并不影響程序正常運(yùn)行,因此可以用R0和R1對64K外接RAM空間的任意一個單元進(jìn)行間接尋址。這樣就使MCS-51單片機(jī)外接RAM的地址指針由1個變成3個,大大方便了程序設(shè)計(jì)。

下面以數(shù)據(jù)塊傳送子程序?yàn)槔?,說明R0和R1對外接RAM間接尋址的程序設(shè)計(jì)方法。假定數(shù)據(jù)塊的源首地址為1000H,目的首地址為3045H,數(shù)據(jù)塊長度為50H,程序清單如下所示:

程序1—用DPTR做地址指針

MOV R2,#00H

MOV R3,#10H

MOV R4,45H

MOV R5,#30H

MOV R7,#50H

LOOP: MOV DPL,R2

MOV DPH,R3

MOVX A,@DPTR

INC DPTR

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條指令。適當(dāng)應(yīng)用R0和R1地址指針,可以大大提高程序運(yùn)行效率。

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

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

當(dāng)單片機(jī)進(jìn)入等待方式或節(jié)電方式,且又用硬件復(fù)位返回到原來的正常操作狀態(tài)時,由于復(fù)位對P2 SFR寫入FFH,改變了頁地址。因此,在單片機(jī)進(jìn)入等待方式或節(jié)電方式之前,也必須先將P2 SFR內(nèi)容進(jìn)行保護(hù)。當(dāng)狀態(tài)恢復(fù)進(jìn)入原正常操作程序入口處時,再恢復(fù)P2 SFR的內(nèi)容。


關(guān)鍵字:51單片機(jī)  程序設(shè)計(jì)  地址指針 引用地址:51單片機(jī)程序設(shè)計(jì)中的地址指針及其應(yīng)用

上一篇:C51學(xué)習(xí)心得體會,遞歸調(diào)用程序設(shè)計(jì)舉例
下一篇:51單片機(jī)內(nèi)部定時器/計(jì)數(shù)器應(yīng)用

推薦閱讀

一.什么是字節(jié)對齊,為什么要對齊? 現(xiàn)代計(jì)算機(jī)中內(nèi)存空間都是按照byte劃分的,從理論上講似乎對任何類型的變量的訪問可以從任何地址開始,但實(shí)際情況是在訪問特定類型變量的時候經(jīng)常在特 定的內(nèi)存地址訪問,這就需要各種類型數(shù)據(jù)按照一定的規(guī)則在空間上排列,而不是順序的一個接一個的排放,這就是對齊。 對齊的作用和原因:各個硬件平臺對存儲空...
芯科技消息(文/李泰宏),宏碁宣布,將認(rèn)列所持有的VR虛擬實(shí)境策略合作伙伴瑞典游戲商Starbreeze可轉(zhuǎn)換公司債的未實(shí)現(xiàn)損失,預(yù)估金額為2.33億元新臺幣,以宏碁股本約307.49元新臺幣計(jì)算,將侵蝕每股稅后純益約0.08元新臺幣。宏碁表示,被投資公司Starbreeze因流動資產(chǎn)短缺,聲請法院獲準(zhǔn)進(jìn)行重整,公司就所投資的可轉(zhuǎn)換公司債評估公允價(jià)值,并認(rèn)列未實(shí)現(xiàn)損...
拿到MSP432P401R評估板v1.0(這個請注意一下,目前在德州儀器官網(wǎng)上找到的硬件原理圖是v2.0,v1.0的串口所在的引腳是RXD,TXD引腳),先將串口調(diào)試好,便于下一步工作的展開。首先,查看TI提供的代碼例子,這個例子就在TI的MSPWare代碼包內(nèi)。注釋如下://******************************************************************************// MSP432P401...
首款搭載顯示屏下攝像頭的量產(chǎn)手機(jī)中興Axon 20 5G早已發(fā)售,但正如預(yù)期的那樣,顯示屏下前置攝像頭的拍照質(zhì)量有些令人失望。三星也一直在研究這項(xiàng)技術(shù),但發(fā)現(xiàn)其尚未足夠成熟,還未在旗下設(shè)備上使用。然而,可能也不會讓用戶等太久了,該公司準(zhǔn)備在2021年1月18日至28日舉行的2021年電子影像會議上展示他們的技術(shù)。據(jù)悉,屆時該公司將發(fā)表兩篇與顯示屏下...

史海拾趣

問答坊 | AI 解惑

LCD的顯示問題

我用的5*8的點(diǎn)陣想顯示自定義字符,我不知道怎么把自定義的字符寫入CGRAM。 我用的單片機(jī)是PIC18F4520  LCD是:LMB202DDC。 請知道的指點(diǎn)一下!!…

查看全部問答∨

C51中g(shù)eneral pointer(一般指針)與Memory_Specific Pointer(存儲器指針)的區(qū)別?

C51中g(shù)eneral pointer(一般指針)與Memory_Specific Pointer(存儲器指針)的區(qū)別是什么呢? #define XBYTE((char*)0x20000L) XBYTE[0x8000]=0x41; 這段程序是什么意思?望高手指點(diǎn)?!?

查看全部問答∨

哪個有單片機(jī)或者DSP做過數(shù)字電源???我現(xiàn)在選用DSP280X系列

哪個有單片機(jī)或者DSP做過數(shù)字電源???我現(xiàn)在選用DSP280X系列的,,,但是程序的定標(biāo)和PID算法和軟件AD校正方面還有點(diǎn)問題,,哪個做過   QQ  328277289   著名  電子工程世界 郵件  puyiyue1980@126.com…

查看全部問答∨

三極管開關(guān)電路的問題

三極管做開關(guān)使其工作在飽和狀態(tài)下。 這樣能輸入比VCC低還能工作在飽和狀態(tài)么  不是集電極應(yīng)該正偏么   一般的電路時輸入和VCC相等 那集電極和基極的管壓降不也有0.5V么 怎么會正偏呢  搞不懂 請大蝦解答…

查看全部問答∨

【幫忙好么】關(guān)于仿真成功,但是去掉JTAG失效問題

我做了一個小系統(tǒng),按鍵控制LCD信息的一個work。在仿真的時候很聽話,但是去掉下載線就不行了,不明白為什么。。。 PS:四個按鍵,都是中斷接法。我把程序調(diào)整了一下發(fā)現(xiàn)如果不開中斷可以順利運(yùn)行,但是 _EINT(); 執(zhí)行以后就沒有了反應(yīng)了。請問 ...…

查看全部問答∨

用IAR實(shí)現(xiàn)動態(tài)內(nèi)存空間的分配

怎樣用IAR實(shí)現(xiàn)動態(tài)內(nèi)存空間的分配呢? 我首先定義了復(fù)數(shù)的結(jié)構(gòu)體 struct complex { dou××e real; dou××e image; }; 然后struct complex* fft_array=new struct complex[fft_n]; 這樣的程序代碼是C支持的,但是IAR確報(bào)了語法錯 Err ...…

查看全部問答∨

M4在IAR環(huán)境下的ucosii移植問題

    移植了cortex-m3的port,但是失敗。移植了8962的官方demo版本也失敗了,現(xiàn)象都是一啟動新任務(wù)就進(jìn)入faultisr()。 系統(tǒng)的中斷能進(jìn)入,通過iar的單步調(diào)試能看到進(jìn)入了systick中斷。     taskcreate這個任務(wù)能 ...…

查看全部問答∨

準(zhǔn)備做PCB的ADuCM360電路,再征意見

電路說明 電路中,使用PT100作精確溫度測量,接于DR1、DR2,還使用了熱電偶作測溫用,接于DR3、DR4。芯片的DAC也可用于輸出測量數(shù)據(jù),輸出類型為4mA~20mA電流,此部分電路由DAC、AIN8、AIN9端品及外圍元件組成,由DR5、DR6引出。此電路還可以作一般 ...…

查看全部問答∨

怎樣選擇MOSFET

隨著制造技術(shù)的發(fā)展和進(jìn)步,系統(tǒng)設(shè)計(jì)人員必須跟上技術(shù)的發(fā)展步伐,才能為其設(shè)計(jì)挑選最合適的電子器件。MOSFET是電氣系統(tǒng)中的基本部件,工程師需要深入了解它的關(guān)鍵特性及指標(biāo)才能做出正確選擇。本文將討論如何根據(jù)RDS(ON)、熱性能、雪崩擊穿電壓及 ...…

查看全部問答∨

TI芯片TPS54610的同步降壓DC/DC電源設(shè)計(jì)

1.TPS54610集成化的設(shè)計(jì)減少了元件數(shù)量和體積。因此,可廣泛用于低電壓輸入高電流輸出的分散電源系統(tǒng)(如DSP、FPGA、A-SIC、微處理器電源,寬帶網(wǎng)絡(luò)和光纖通訊以及便攜式筆記本電腦的電源系統(tǒng))中。 2. TPS54610的引腳功能 AGND (1腳):模擬地。BOO ...…

查看全部問答∨
小廣播
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved