單片機(jī)程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間詳解_第1頁
單片機(jī)程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間詳解_第2頁
單片機(jī)程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間詳解_第3頁
單片機(jī)程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間詳解_第4頁
單片機(jī)程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間詳解_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

,.單片機(jī)程序程序存儲(chǔ)空間(ROM)和數(shù)據(jù)存儲(chǔ)空間(RAM)詳解問題:STC89C52RC單片機(jī):8K字節(jié)程序存儲(chǔ)空間,512字節(jié)數(shù)據(jù)存儲(chǔ)空間,內(nèi)帶2K字節(jié)EEPROM存儲(chǔ)空間;它們分別存的是什么?感謝閱讀8K的程序存儲(chǔ)空間是存儲(chǔ)代碼,也就是你寫的程序生成的HEX文件的,相當(dāng)于電腦系統(tǒng)的C盤。謝謝閱讀512字節(jié)相當(dāng)于內(nèi)存,存儲(chǔ)空間存儲(chǔ)變量,像u8x,y,z,u32a之類的臨時(shí)變量掉電后數(shù)據(jù)丟失。謝謝閱讀2Keeprom相當(dāng)于電腦系統(tǒng)的硬盤,數(shù)據(jù)寫入后掉電不丟失。主要是單片機(jī)在運(yùn)行的過程中寫入數(shù)據(jù)或者讀取數(shù)據(jù)。像設(shè)置的鬧鈴值,設(shè)置好了就不用每次都去設(shè)置了,保存在單片機(jī)里面,即使掉電了,設(shè)置的數(shù)據(jù)也不會(huì)丟失,只需單片機(jī)上電再讀取就好了。感謝閱讀單片機(jī)原理及系統(tǒng)結(jié)構(gòu)在此先詳細(xì)分析51單片的存儲(chǔ)器結(jié)構(gòu)和尋址方法,再分析片外存儲(chǔ)器的擴(kuò)展,最后給出設(shè)計(jì)原理并分析系統(tǒng)結(jié)構(gòu)。感謝閱讀圖一:存儲(chǔ)空間分布單片機(jī)存儲(chǔ)器結(jié)構(gòu)分析8051單片機(jī)的存儲(chǔ)器在物理結(jié)構(gòu)上分為程序存儲(chǔ)器空間和數(shù)據(jù)存儲(chǔ)器空間,共有4個(gè)謝謝閱讀,.存儲(chǔ)空間:片內(nèi)程序存儲(chǔ)器、片外程序存儲(chǔ)器以及片內(nèi)數(shù)據(jù)存儲(chǔ)器、片外數(shù)據(jù)存儲(chǔ)器空間。感謝閱讀這種程序存儲(chǔ)和數(shù)據(jù)存儲(chǔ)分開的結(jié)構(gòu)形式被稱為哈佛結(jié)構(gòu)。MCS-51使用哈弗結(jié)構(gòu),它的程序空間和數(shù)據(jù)空間是分開編址的,即各自有各自的地址空間,互不重疊。所以即使地址一樣,但因?yàn)榉珠_編址,所以依然要說哪一個(gè)空間內(nèi)的某地址。而ARM(甚至是x86)這種馮諾依曼結(jié)構(gòu)的MCU/CPU,它的地址空間是統(tǒng)一并且連續(xù)的,代碼存儲(chǔ)器/RAM/CPU寄存器,甚至PC機(jī)的顯存,都是統(tǒng)一編址的,只是不同功能的存儲(chǔ)器占據(jù)不同的地址塊,各自為政。精品文檔放心下載MCS-51單片機(jī)存儲(chǔ)器的配置特點(diǎn)①內(nèi)部集成了4K的程序存儲(chǔ)器ROM;②內(nèi)部具有256B的數(shù)據(jù)存儲(chǔ)器RAM(用戶空間+SFR空間);謝謝閱讀③可以外接64K的程序存儲(chǔ)器ROM和數(shù)據(jù)存儲(chǔ)器RAM。感謝閱讀從物理結(jié)構(gòu)的角度講,51單片機(jī)的存儲(chǔ)系統(tǒng)可以分為四個(gè)存儲(chǔ)空間:既片內(nèi)ROM,RAM和片外ROM、RAM。精品文檔放心下載從邏輯結(jié)構(gòu)上看(既編程的角度),可以分為三個(gè)不同的空間:感謝閱讀(1)片內(nèi)、片外統(tǒng)一編址的64KB的程序存儲(chǔ)器地址空間:0000H~FFFFH(用16位地址);,其中0000H~0FFFH為片內(nèi)4KB的ROM地址空間,1000H~FFFFH為外部ROM地址空間;謝謝閱讀(2)256B的內(nèi)部數(shù)據(jù)存儲(chǔ)器地址空間(用8位地址),00H~FFH,分為兩大部分,其中00H~7FH(共128B單元)為內(nèi)部靜態(tài)RAM的地址空間,80H~FFH為特殊功能寄存器的地址空間,21個(gè)特殊功能寄存器離散地分布在這個(gè)區(qū)域;感謝閱讀(3)64KB的外部數(shù)據(jù)存儲(chǔ)器地址空間(用16位地址):0000H~FFFFH,包括擴(kuò)展I/O地址空間。精品文檔放心下載上述4個(gè)存儲(chǔ)空間地址是重疊的,如圖1所示。8051的指令系統(tǒng)設(shè)計(jì)了不同的數(shù)據(jù)傳送指令以區(qū)別這4個(gè)不同的邏輯空間:CPU訪問片內(nèi)、片外ROM指令用MOVC,訪問片精品文檔放心下載RAM指令用MOVX,訪問片內(nèi)RAM指令用MOV。謝謝閱讀程序存儲(chǔ)器用于存放編好的程序和表格常數(shù)。程序通過16位程序計(jì)數(shù)器尋址,尋址能力為64KB。這使得指令能在64KB的地址空間內(nèi)任意跳轉(zhuǎn),但不能使程序從程序存儲(chǔ)器空間轉(zhuǎn)移到數(shù)據(jù)存儲(chǔ)器空間。精品文檔放心下載程序存儲(chǔ)器ROM的片內(nèi)和片外尋址,.1.程序存儲(chǔ)器ROM用于存放程序、常數(shù)或表格。2.在51單片機(jī)中,由引腳/EA上的電平選擇內(nèi)、外ROM:EA=1時(shí),CPU執(zhí)行片內(nèi)的4KROM中的程序;EA=0時(shí),CPU選擇片外ROM中的程序。謝謝閱讀3.無論是使用片內(nèi)還是使用片外ROM,程序的起始地址都是從ROM的0000H單元開始。精品文檔放心下載4.盡管系統(tǒng)可以同時(shí)具備片內(nèi)ROM和外部ROM,但是在一般正常使用情況下,通過/EA的設(shè)定來選擇其一(或者使用內(nèi)部ROM,或者使用外部ROM)。感謝閱讀5.如果EA=1(執(zhí)行片內(nèi)程序存儲(chǔ)器中程序時(shí)):如果程序計(jì)數(shù)器的指針PC值超過0FFFH(4K)時(shí),單片機(jī)就要自動(dòng)的轉(zhuǎn)向片外的ROM存儲(chǔ)器且從1000H單元開始執(zhí)行程序(無法使用片外ROM的低4K空間)。謝謝閱讀6.當(dāng)程序超過4K時(shí),有兩種使用程序存儲(chǔ)器ROM的方法:感謝閱讀①設(shè)置EA=0,使用外部ROM。從地址=0000H開始;精品文檔放心下載②設(shè)置EA=1,使用內(nèi)部的4KROM和外部ROM(地址從1000H開始的單元)。謝謝閱讀8051從片內(nèi)程序存儲(chǔ)器和片外程序存儲(chǔ)器取指時(shí)的執(zhí)行速度相同。精品文檔放心下載程序存儲(chǔ)器六個(gè)特殊的單元:在ROM中有六個(gè)單元具有特定功能。0000H單元:復(fù)位時(shí)程序計(jì)數(shù)器PC所指向的單元,因此用來 存放程序中的第一條指令;精品文檔放心下載0003H單元:外部中斷/INT0的矢量入口地址;感謝閱讀000BH單元:定時(shí)器T0溢出中斷的矢量入口地址;感謝閱讀0013H單元:外部中斷/INT1的矢量入口地址;謝謝閱讀,.001BH單元:定時(shí)器T1的溢出中斷矢量入口地址;謝謝閱讀0023H單元:串行口接收、傳送的中斷矢量入口地址。精品文檔放心下載矢量入口單元:在編寫中斷程序時(shí),寫入對(duì)應(yīng)的“跳板指令”謝謝閱讀單片機(jī)第一條指令的兩個(gè)特征:①存放在ROM的0000H單元;②必須是“跳轉(zhuǎn)指令”以跳過下面的5個(gè)中斷矢量,轉(zhuǎn)到后面的真正的主程序入口0100H單元。謝謝閱讀ORG 0000H LJMP 0100HORG 0100HSTART:MOV A,#00H∶∶∶∶∶∶∶∶,.END外部程序存儲(chǔ)器:當(dāng)單片機(jī)使用外ROM存儲(chǔ)器時(shí)(擴(kuò)展系統(tǒng)),必須設(shè)定/EA=0,此時(shí)單片機(jī)的端口功能就要發(fā)生相應(yīng)的改變:感謝閱讀①P0、P2作為外部ROM的地址和數(shù)據(jù)總線;②使用引腳/psen信號(hào)來選通外部ROM的數(shù)據(jù)三態(tài)輸出。感謝閱讀程序存儲(chǔ)器RAM的片內(nèi)和片外尋址,.無論在物理上還是邏輯上,系統(tǒng)中RAM都可分為兩個(gè)獨(dú)立空間:內(nèi)部和外部RAM。由不同的指令來訪問。精品文檔放心下載1.訪問內(nèi)部數(shù)據(jù)存儲(chǔ)單元時(shí),使用MOV指令;2.訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),使用MOVX指令。內(nèi)部RAM從功能上將256B空間分為二個(gè)不同的塊:精品文檔放心下載1.低128B的RAM塊;2.高128B的SFR(SpecialFunctionRegister)塊。謝謝閱讀在低128B的RAM存儲(chǔ)單元中又可劃分為:1.工作寄存器區(qū);2.位尋址區(qū);3.通用存儲(chǔ)數(shù)據(jù)的“便簽區(qū)”。高128B的專用寄存器區(qū)SFR中僅僅使用了21寄存器(51系列),其它107個(gè)單元不能使用。謝謝閱讀注意:一般的教科書里RAM大小是指默認(rèn)用戶RAM,但是很少有特別說明的謝謝閱讀C51:片內(nèi)用戶RAM有128字節(jié)(位于片內(nèi)所有RAM的低128B,高128B是SFR)謝謝閱讀訪問RAM可以使用直接或者間接尋址方式,地址00H為-7FH,在80H-FFH的空間分配給了SFR,只能使用直接尋址方式。精品文檔放心下載C52:片內(nèi)用戶RAM為256字節(jié)(位于片內(nèi)所有RAM的低128B,高128B是SFR和用戶精品文檔放心下載RAM)低128字節(jié)(00H-7FH)的訪問方式為直接和間接尋址方式;高128字節(jié)(地址80H-FFH)只能使用間接尋址方式。SFR的地址也為80H-FFH,但只能使用直接尋址方式。精品文檔放心下載也就是說,C52的高128B是用戶RAM和SFR統(tǒng)一編制,共享地址,通過指令的尋址方式不同來進(jìn)行區(qū)分。謝謝閱讀,.,.對(duì)于數(shù)據(jù)存儲(chǔ)器,分為內(nèi)部數(shù)據(jù)存儲(chǔ)器(IDATA/RAM)和外部數(shù)據(jù)存儲(chǔ)器(XDATA)兩個(gè)部分,但這兩個(gè)存儲(chǔ)器就不像code存儲(chǔ)器那樣共享地址空間的了。一般的8051芯片,內(nèi)部RAM只有128B,從0x00-0x7F,而從0x80-0xFF則是SFR(CPU工作寄存器和各種外設(shè)寄存器都在此)的區(qū)域。對(duì)于8052來說,內(nèi)部RAM有256B,所以0x80-0xFF是精品文檔放心下載128B的RAM在使用??蛇@部分不是SFR專用的嗎?是SFR專用,但注意,SFR的訪問只能使用“直接尋址方式”(使用特定的匯編指令來實(shí)現(xiàn)),區(qū)別就在這里。只有通過直接尋址訪問的地址才是SFR,否則就是普通的RAM。謝謝閱讀至于外擴(kuò)的RAM(XDATA),地址也是從0x0000-0xFFFF的,而且這里的0x0000和內(nèi)部RAM的0x00是不同的,是完全獨(dú)立的兩個(gè)空間。他們的訪問方法也是不同的。MCS-51使用MOVX指令,來讀寫XDATA區(qū)。而且,訪問XDATA區(qū),是需要DPTR寄存器來輔助的。因?yàn)橹挥蠨PTR才能裝得下十六位的XDATA地址。精品文檔放心下載所以說,MCS-51讀寫IDATA區(qū)的速度是最快的,而且訪問方法也是最多的。訪問XDATA區(qū)的速度相對(duì)就要慢很多。謝謝閱讀P0口作地址/數(shù)據(jù)復(fù)用總線,用P2口的口線作高位地址線,最多可以擴(kuò)展開關(guān)電源模塊64KB的存儲(chǔ)器??刂菩盘?hào)線包括:使用ALE作為地址鎖存的選通信號(hào),以實(shí)現(xiàn)低8位地址的鎖存;以PSEN信號(hào)作為擴(kuò)展程序存儲(chǔ)器的讀選通信號(hào);以EA信號(hào)作為內(nèi)、外程序存儲(chǔ)器的選擇信號(hào);以EA和作為擴(kuò)展數(shù)據(jù)存儲(chǔ)器和I/O端口的讀、寫選通信號(hào)。執(zhí)行MOVX指令時(shí),RD和WR信號(hào)分別自動(dòng)有效。片外數(shù)據(jù)存儲(chǔ)器RAM的讀和寫由8051的RD(P3.7)精品文檔放心下載WR(P3.6)信號(hào)控制,而片外程序存儲(chǔ)器的輸出允許(OE)由讀選通PSEN信號(hào)控制。感謝閱讀盡管片外數(shù)據(jù)存儲(chǔ)器和片外程序存儲(chǔ)器共處同一地址空間,但由于控制信號(hào)及使用的數(shù)據(jù)傳送指令不同,故不會(huì)發(fā)生總線沖突。精品文檔放心下載,.圖2數(shù)據(jù)擴(kuò)展圖由于現(xiàn)在以8051為內(nèi)核的單片機(jī)幾乎都帶有內(nèi)部的FLASH程序存儲(chǔ)器。如本設(shè)計(jì)中要用到的開關(guān)電源模塊AT89C51或AT89S51均自帶4KB的FLASH程序存儲(chǔ)器,有的單片機(jī)帶有20KB甚至更大容量的程序存儲(chǔ)器。因此在單片機(jī)開發(fā)中,很少用專門的程序存儲(chǔ)器芯片來擴(kuò)展外部程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論