




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第三章AT89S52存儲器結構3.1存儲器概述3.2AT89S52單片機的存儲器結構3.3外部存儲器及其訪問3.4片內FLASH存儲器操作重點單片機內部存儲器的結構:程序存儲器、數據存儲器和特殊功能寄存器SFR。外部存儲器及其訪問:外部程序存儲器的訪問和外部數據存儲器的訪問3.1存儲器概述1、各種存儲器的特點2、AT89S52的閃速存儲器Flash2、AT89S52的閃速存儲器Flash結合了EPROM和EEPROM兩種存儲器的技術優點。編程速度快,幾秒鐘就可以完成對全片的擦除支持在線編程不易揮發性、訪問速度快3.2AT89S52單片機的存儲器結構3.2.1程序存儲器
3.2.2數據存儲器
3.2.3特殊功能寄存器SFR3.2.1程序存儲器1.程序存儲器的結構
2.程序存儲器中的中斷矢量區AT89S52單片機共有8個中斷源,6個中斷矢量,當中斷源發出中斷請求且CPU響應中斷后便轉移到中斷服務程序執行。在程序存儲器中為中斷服務程序保留了一段特殊的區域,即0003H~0032H存儲單元被特殊保留,專門留給中斷服務程序使用,被稱為中斷矢量區
返回在編程時,通常在這些入口地址開始的二三個地址單元中,放入一條轉移類指令,以使相應的程序在指定的程序存儲器區域中生成。例如,從000BH地址單元開始,放入一條轉移到3000H地址單元的轉移類指令,定時器0的中斷服務程序就可從3000H地址單元開始安排。程序存儲器用來存放固化了的用戶程序,取指地址由程序計數器PC給出,PC具有自動加l的功能,從而在無轉移類指令的條件下,指令被逐一執行。轉移類指令可改變PC值,使程序得以轉移。程序存儲器中也可固化一片數據區,存放被查閱的表格和參數等。3.2.2數據存儲器
AT89S52單片機的數據存儲器地址空間分為芯片內部和外部兩個部分,使用MOV類指令訪問內部數據存儲器,使用MOVX類指令訪問外部數據存儲器。外部數據存儲器最大地址空間為64KB,地址范圍為0000H~FFFFH。
返回3.2.3特殊功能寄存器SFRAT89S52芯片內設有128B的特殊功能寄存器區,其特殊功能寄存器增加到了32個,與AT89C51相比增加了11個,與AT89S51相比也增加了6個。AT89S52的片內特殊功能寄存器占用256B的高128B字節(80H~FFH)地址
返回3.3外部存儲器及其訪問
3.3.1外部程序存儲器與訪問
3.3.2外部數據存儲器與訪問3.3.1外部程序存儲器與訪問
只有讀操作。除由PC直接尋址,以執行各條指令外,還可用FC或DPTR作變址尋址。例如,若DPTR=2000H,A=20H,則指令MOVCA,@A十DPTR完成了把程序存儲器2020H單元中的內容送入A中的操作。這種數據操作方式通常用來查閱程序存儲器中的數據表格。1.AT89S52單片機訪問外部程序存儲器所使用的控制信號ALE:低8位地址鎖存控制;PSEN:外部程序存儲器“讀取”控制。EA:片內、片外程序存儲器訪問的控制信號。=1時,訪問片內程序存儲器;當=0時,訪問片外程序存儲器。
2.訪問外部程序存儲器的過程首先通過地址總線給出地址信號,選中程序存儲器該地址的存儲單元,然后由控制總線發出讀選通信號,在讀選通信號的控制作用下,將存儲在被選中存儲單元中的指令代碼讀出并送至數據總線,單片機通過對數據總線的訪問讀取已送至數據總線的指令代碼,完成一次對外部程序存儲器的訪問過程。
3.擴展外部程序存儲器的連接方法74LS373圖3.3.1外部程序存儲器擴展4.地址鎖存器的作用5.訪問外部程序存儲器的時序
數據輸入3.3.2外部數據存儲器與訪問1.擴展外部數據存儲器的連接方法74LS273圖3.3..3外部數據存儲器擴展雖然外部數據存儲器和和外部程序存儲器共用0000H~FFFFH的64KB地址空間,但兩者的讀寫控制信號不同,外部數據存儲器的讀和寫分別由和信號控制,外部程序存儲器的讀選通由信號控制,因此不會發生地址重疊的現象。可進行讀寫操作。用DPTR或工作寄存器組中的Ro或R1作寄存器間接尋址。當用RO或R1作寄存器間接尋址時,由P2端口提供高8位地址,R0或R1提供低8位地址。訪問外部數據存儲器使用MOVX類指令,如MOVXA,@Ri,MOVX@Ri,A,MOVXA,@DPTR,MOVX@DPTR,A例1MOVXA,@DPTR;外部數據RAM中以DPTR為地址中的內容----A
例2MOVP2,#20H;數20H----P2
MOVR0,#30H;數30H----R0
MOVX@R0,A;A----外部數據RAM中2030H單元2.訪問外部數據存儲器的時序圖3.3.4外部數據存儲器讀時序3.3.5外部數據存儲器寫操作時序3.4片內FLASH存儲器操作3.4.1
簽名字節及讀出
3.4.2
程序存儲器的加密
3.4.3
Flash存儲器的并行編程
3.4.4
Flash存儲器的串行編程3.4.1
簽名字節及讀出1.簽名字節所謂簽名字節是Flash存儲器的生產廠商在生產AT89S系列單片機時,寫入到Flash存儲器中的一組用以說明單片機的生產廠商、型號和編程電壓等的特征信息。AT89S52的簽名字節共有3B字節,具體在存儲器中的地址和含義如表3.4.2所示。地址內容代表的含義000H1EH表示產生廠商為ATMEL公司100H51H表示為AT89S51型單片機52H表示為AT89S52型單片機200H06H2.簽名字節的讀出簽名字節內容被讀出時的電路邏輯結構如圖3.4.1所示。圖3.4.1簽名字節被讀出時的電路邏輯結構3.4.2
程序存儲器的加密1.程序存儲器加密的概念為了保護所存儲程序的安全性,防止被非法讀出,保護開發者的合法利益,需要對寫入Flash存儲器中的程序進行加密。
AT89S系列單片機提供了3位加密位LB1、LB2和LB3,對每位加密位可維持原來的非編程狀態(U),也可進行編程(P),每位加密位是否進行了編程便可組合形成幾種不同的保護模式,如表3.4.3所示。表3.4.3程序加密位的保護模式模式加密位組合加密功能LB1LB2LB31UUU沒有程序加密功能2PUU禁止在外部程序存儲器中執行MOVC類指令讀取內部程序存儲器中的指令代碼;被采樣并在復位時被鎖存;禁止對Flash存儲器再編程3PPU同模式2,并禁止內部存儲器校驗。4PPP同模式3,并禁止外部存儲器的執行。2.程序存儲器加密的方法對程序存儲器加密需要根據所希望采取的加密保護模式對3位加密位LB1、LB2和LB3進行編程。編程按照LB1→LB2→LB3的順序按位進行。注意,在對各位加密位進行編程時,其控制信號是不同的。圖3.4.2為對加密位編程的邏輯電路圖。圖3.4.2加密位編程邏輯電路3.4.3
Flash存儲器的并行編程1.Flash編程器的并行編程方式AT89S52單片機的內部Flash存儲器在出廠時處于可編程狀態,除簽名字節已經有存儲數據外其它存儲單元的內容均為FFH。編程時須接12V編程電壓,與通用的Flash編程器或EPROM編程器兼容,因此可使用常規的Flash編程器或EPROM編程器對此進行編程。AT89S52單片機的編程以字節為單位,逐位編程。圖3.4.3為并行編程的接口電路圖。圖3.4.3AT89S52Flash存儲器并行編程的接口電路2.并行編程的算法:從編程接口電路可以看出,AT89S52單片機編程時除地址線和數據線外還需要一些控制信號,表3.4.4為編程時這些控制信號的狀態情況。AT89S52單片機內部Flash為8KB,地址范圍0000H~1FFFFH,因此編程時需要13位的地址線。編程時,被編程存儲單元的地址由P1口和P2口的P2.0~P2.4輸入(13位地址),編程代碼從P0口輸入,P2.6、P2.7、P3.3、P3.6和P3.7引腳的電平依據表3.4.4設置。編程時RST引腳接高電平,引腳接低電平(接地),引腳接編程負脈沖,每次寫入代碼的脈沖寬度200~500ns,是編程電壓的輸入引腳,按規定要求接12V編程電壓,編程時的振蕩頻率為3~33MHz。3.4.4
Flash存儲器的串行編程1.Flash存儲器的串行編程方式圖3.4.5AT89S52Flash存儲器串行編程/下載接口電路2.Flash存儲器的串行編程算法按照下列步驟對Flash實現串行編程:(1)對RST、VCC和GND引腳加電;加電次序如下:在VCC和GND引腳之間加電源電壓;將RST設置為高電平(若采用外部時鐘信號,則必須延時10ms后方可)。⑵在P1.5/MOSI引腳輸入編程允許指令;⑶在P1.5/MOSI引腳輸入寫程序存儲器指令;AT89S52的串行編程指令中包含了編程單元地址和代碼數據,向P1.5/MOSI引腳輸入寫程序存儲器指令時,便確定了可編程的字節地址和指令數據。寫入周期采用內部自動定時的方式,在VCC=5V時其典型值不大于1ms。編程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論