μPSD中存儲(chǔ)器系統(tǒng)配置_第1頁
μPSD中存儲(chǔ)器系統(tǒng)配置_第2頁
μPSD中存儲(chǔ)器系統(tǒng)配置_第3頁
μPSD中存儲(chǔ)器系統(tǒng)配置_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

μPSD中儲(chǔ)存器系統(tǒng)的配置介紹μPSD的儲(chǔ)存器系統(tǒng)內(nèi)部構(gòu)造和配置方法,議論了有關(guān)的使用方法。

PSDSOFT軟件背景假如對(duì)ST企業(yè)的μPSD器件有必定認(rèn)識(shí),熟習(xí)MCS-51系列單片機(jī)的內(nèi)部構(gòu)造及原理,使用過PSDSOFTEXPRESS和KEIL開發(fā)設(shè)計(jì),將對(duì)理解本文有很大的幫助。MCS-51單片機(jī)采納哈佛構(gòu)造的系統(tǒng)構(gòu)造,即數(shù)據(jù)儲(chǔ)存器空間與程序儲(chǔ)存器空間相互獨(dú)立。它有16根地點(diǎn)總線,最大尋址能力為64K,這決定程序或數(shù)據(jù)空間不可以超出64K。以上兩點(diǎn)是本文所有議論的前提基礎(chǔ)。PSD的儲(chǔ)存器系統(tǒng)構(gòu)造PSD由標(biāo)準(zhǔn)8032核和ST企業(yè)的PSD(可編程系統(tǒng)器件)組成,儲(chǔ)存器系統(tǒng)包含兩個(gè)主要部分,一是8032的內(nèi)部?jī)?chǔ)存器資源:256B內(nèi)部RAM和128B內(nèi)部特別功能存放器SFR;二是PSD中的儲(chǔ)存器模塊:主/次FLASH儲(chǔ)存器,擴(kuò)展的SRAM及控制PSD的CSIOP(Chip-SelectI/OPort,近似于8051的SFR)。μPSD的主/次FLASH是完整同樣的儲(chǔ)存介質(zhì)(初期的PSD813F1中的次儲(chǔ)存器是EEPROM構(gòu)造的),是兩個(gè)獨(dú)立的儲(chǔ)存器。主FLASH往常分4~8塊,每塊16~32kb;次FLASH往常分2~4塊,一般每塊為8kb。μPSD中使用譯碼可編程譯碼邏輯陣列(DPLD),頁存放器PAGE,儲(chǔ)存器控制存放器VM,結(jié)合實(shí)現(xiàn)對(duì)儲(chǔ)存器系統(tǒng)的配置。對(duì)于IAP和分頁技術(shù)為何μPSD中要有兩個(gè)FLASH?簡(jiǎn)單地說,這是為了實(shí)現(xiàn)IAP而設(shè)計(jì)的。IAP就是“在應(yīng)用中編程或升級(jí)代碼”,其原理是:?jiǎn)纹瑱C(jī)中裝有一套用戶程序和一套代碼更新程序。正常狀況下,單片機(jī)運(yùn)轉(zhuǎn)的是用戶程序;在需要程序升級(jí)時(shí),系統(tǒng)會(huì)切換到代碼更新程序,經(jīng)過串口或其余通訊口下載新的用戶程序代碼,并寫入到本來的用戶程序儲(chǔ)存器中,更新達(dá)成后,再切換回至用戶程序。鑒于MCS-51系統(tǒng)構(gòu)造特色,在同一個(gè)儲(chǔ)存器中運(yùn)轉(zhuǎn)主程序和改寫程序是不行能實(shí)現(xiàn)的。所實(shí)用MCS-51來實(shí)現(xiàn)IAP功能的系統(tǒng)都一定有兩個(gè)獨(dú)立的儲(chǔ)存器。實(shí)現(xiàn)IAP的難點(diǎn)在于儲(chǔ)存器的切換控制,表此刻μPSD中主要就是怎樣使用VM存放器以及怎樣對(duì)儲(chǔ)存器的片選控制。別的,跟著應(yīng)用要求愈來愈高,代碼長度不停增添,64K的限制已經(jīng)成為設(shè)計(jì)中的瓶頸。很多軟/硬件供給商都全力推出自己的方案以實(shí)現(xiàn)MCS-51對(duì)大于64K的支持,分頁技術(shù)應(yīng)運(yùn)而生。分頁設(shè)計(jì)中最重要的就是公共區(qū)和分頁區(qū)的設(shè)置,所謂公共區(qū)就是在所有的頁面中均為有效的一塊儲(chǔ)存器區(qū)。在程序空間中,64K范圍(1頁)內(nèi)的程序是連續(xù)的,一旦超出此范圍,只保存低16位,最高位將被拋棄,程序會(huì)跳回開始處運(yùn)轉(zhuǎn)。保證程序在頁面切換時(shí)不會(huì)“跑飛”就是經(jīng)過公共區(qū)實(shí)現(xiàn)的。分頁技術(shù)的實(shí)現(xiàn)方法是:當(dāng)程序在調(diào)用位于分頁區(qū)的程序時(shí),第一保存返回地點(diǎn),而后轉(zhuǎn)跳到公共區(qū)履行,再改正頁存放器到新的頁號(hào)實(shí)現(xiàn)頁面的切換,調(diào)用程序,返回到公共區(qū),恢還本來頁號(hào),最后從保存的返回地點(diǎn)返回。公共區(qū)的大小由用戶自行設(shè)定,在μPSD中往常使用主/次FLASH中的一塊或多塊作為公共區(qū),如使用1塊次FLASH即8KB,2塊次FLSAH即16KB,1塊主FLASH則是32KB,若只想使用主FLASH中的20KB作公共區(qū)也是可行的,只需將主FLASH的地點(diǎn)范圍只定義為20K的范圍就能夠了。自然,公共區(qū)的大小不可以超出64K。公共區(qū)一定設(shè)在64K范圍的低端,這是由于MCS-51中止進(jìn)口地點(diǎn)的原由。公共區(qū)中保存所有的公用子程序,中止服務(wù)程序,全局常數(shù)表以及系統(tǒng)的初始化部分及頁面切換程序。μPSD儲(chǔ)存器的空間配置μPSD中儲(chǔ)存器系統(tǒng)配置主假如對(duì)程序空間的設(shè)置,相對(duì)而言數(shù)據(jù)空間的配置略微簡(jiǎn)單調(diào)點(diǎn)。μPSD中主/次FLASH可設(shè)置為程序或數(shù)據(jù)空間,這是由VM存放器決定的,VM存放器的作用如表1所示。VM的內(nèi)容可在運(yùn)轉(zhuǎn)時(shí)由MCU進(jìn)行改正,這是實(shí)現(xiàn)IAP的重點(diǎn)。在PSDSOFT軟件流程中可設(shè)置主/次FLASH為程序、數(shù)據(jù)儲(chǔ)存器或程序/數(shù)據(jù)混淆儲(chǔ)存器,實(shí)質(zhì)上就是對(duì)VM存放器上電時(shí)的默認(rèn)值進(jìn)行設(shè)置,換句話說,就是確立上電時(shí)主/次FLASH分別位于什么空間。表1VM存放器各位作用表中,“#RD能夠/不可以接見”是指此儲(chǔ)存器能否位于數(shù)據(jù)空間,“#PSEN可以/不可以接見”是指此儲(chǔ)存器能否位于數(shù)據(jù)空間,由于在MCS-51系統(tǒng)中對(duì)外面數(shù)據(jù)/程序空間的接見就是經(jīng)過#RD和#PSEN進(jìn)行劃分的。舉例說明:VM=0CH,表示主FLASH位于程序空間,次FLASH位于數(shù)據(jù)空間;VM=16H,表示主FLASH位于數(shù)據(jù)和程序空間,次FLASH位于程序間。位0用來指定用來指示外設(shè)IO

SRAM能否位于程序空間,由于SRAM只在數(shù)據(jù)空間有效。位7模式的同意與嚴(yán)禁,詳細(xì)將在后邊介紹。圖1可幫助對(duì)VM寄存器作用的理解。圖1μPSD中儲(chǔ)存器系統(tǒng)構(gòu)造如圖1所示,VM位0~4與#RD、#PSEN結(jié)合實(shí)現(xiàn)對(duì)主/次FLASH及SRAM的選擇。這里是經(jīng)過輸出同意#OE信號(hào)進(jìn)行控制的,也就是說即便儲(chǔ)存器的地點(diǎn)有效(CS有效),假如#OE無效,也不可以接見到此儲(chǔ)存器的內(nèi)容。主/次FLASH的#OE有兩個(gè)有效輸入項(xiàng),由VM位3/4控制#RD能否起作用,VM的1/2位來控制#PSEN能否起作用。在VM的各位確立后,可依圖1畫出簡(jiǎn)化的配置構(gòu)造。這里的#OE信號(hào)是對(duì)主/次FLASH的每一塊同時(shí)有效的。在實(shí)現(xiàn)IAP時(shí),經(jīng)過VM來實(shí)現(xiàn)對(duì)主/次FLASH的空間進(jìn)行換,比如,主FLASH作用戶程序,次FLASH用作升級(jí)程序;正常工作時(shí),主FLASH作程序空間,運(yùn)轉(zhuǎn)用戶代碼,在進(jìn)行程序升級(jí)時(shí),將次FLASH切換作程序空間,并運(yùn)轉(zhuǎn)次FLASH中的升級(jí)程序,再把主FLASH換到數(shù)據(jù)空間,對(duì)主FLASH中的用戶代碼進(jìn)行更新。PSD儲(chǔ)存器的地點(diǎn)配置PSD中對(duì)儲(chǔ)存器地點(diǎn)分派需恪守以下規(guī)則:規(guī)則1.主/次FLASH塊FS0~FS7,CSBOOT0~CSBOOT3的地點(diǎn)范圍不可以大于其物理尺寸;規(guī)則2.主FLASH塊FS0~FS7之間地點(diǎn)不可以重疊;規(guī)則3.次FLASH塊CSBOOT0~CSBOOT3之間地點(diǎn)不可以重疊;規(guī)則4.SRAM、I/O、外設(shè)I/O地點(diǎn)不可以重疊;規(guī)則5.主FLASH,次FLASH和SRAM,I/O,外設(shè)I/O,若地點(diǎn)重疊,儲(chǔ)存器有效優(yōu)先級(jí)為SRAM、I/O、外設(shè)I/O最高,次FLASH次之,主FLASH最低。在PSDSOFT設(shè)計(jì)中,若違犯規(guī)則2、3、4會(huì)出現(xiàn)錯(cuò)誤,一定改正才能進(jìn)行下一步;而違犯規(guī)則1只會(huì)發(fā)出警示,假如忽視必定要當(dāng)心。規(guī)則5屬于解說型規(guī)則,不會(huì)提出任何提示,注意地點(diǎn)重疊狀況下優(yōu)先級(jí)低的儲(chǔ)存器不可以被訪問。PSD中經(jīng)過DPLD對(duì)每個(gè)儲(chǔ)存器的地點(diǎn)進(jìn)行分派,DPLD的構(gòu)造如圖2所示。圖2DPLD的構(gòu)造DPLD包含“與”陣列和“或”陣列,“與”陣中有輸入項(xiàng)共57項(xiàng),“或”陣中有輸出項(xiàng)共16項(xiàng)。輸入項(xiàng)表示可參于地點(diǎn)譯碼的信號(hào),輸出項(xiàng)即每個(gè)儲(chǔ)存器的CS信號(hào)。DPLD的輸入項(xiàng)中最常用的是A0~A15,頁存放器PGR0~PGR7,#RD、#PSEN、#WR、ALE。PDN是在功率管理時(shí)使用,假如在地點(diǎn)中加入PDN,表示只有在電源有效時(shí)地點(diǎn)譯碼才有效,往常這項(xiàng)是自動(dòng)加入的,使用者可不用管。DPLD的輸入項(xiàng)和輸出項(xiàng)不是一定所有配置的。在對(duì)μPSD的儲(chǔ)存器進(jìn)行地點(diǎn)配置時(shí),一個(gè)最重要的原則是“不超出64KB就不要分頁,沒有使用到的塊就不用配置”。對(duì)于小的項(xiàng)目中沒有使用到所有儲(chǔ)存器,不用去配置,這樣既簡(jiǎn)單,減少犯錯(cuò),又方便調(diào)試和檢查。除CSIOP是一定配置的外,其余項(xiàng)均可依據(jù)需要進(jìn)行配置。PSEL由外設(shè)I/O模式控制,在PIO模式下,PA口的所有I/O被設(shè)置為三態(tài)、雙向MCU數(shù)據(jù)緩沖器方式,與MCU的P0口有些近似。DPLD中一定申明PSEL0和/或PSEL1的有效地點(diǎn)范圍,在接見此地點(diǎn)時(shí),PA口進(jìn)入PIO方式。前面所述的VM存放器中第7位是PIO模式同意/嚴(yán)禁控制,PIO模式的內(nèi)部控制構(gòu)造如圖3所示。為防止PSEL0和PSEL1所指定的范圍在程序/數(shù)據(jù)空間都有效,應(yīng)在PSEL0和PSEL1中加入“!#PSEN”信號(hào),以保證PIO模式僅在接見數(shù)據(jù)空間時(shí)有效。圖3PIO模式內(nèi)部控制構(gòu)造使用PSDSOFT對(duì)μPSD進(jìn)行配置和編程PSD中PAGE是一個(gè)8位存放器,最多可實(shí)現(xiàn)256個(gè)頁面,PAGE存放器與地點(diǎn)范圍的配置是同時(shí)起作用的。假如你的系統(tǒng)中無論是程序仍是數(shù)據(jù)儲(chǔ)存器的設(shè)計(jì)高出了64k,一定要分頁。μPSD的PAGE存放器的8位能夠獨(dú)立使用,在PSDSOFT中可定義為兩種方式,即PAGING和LOGIC。PAGING就是作為分頁使用,LOGIC是作為一般邏輯輸入功能,近似于PLD中的節(jié)點(diǎn)NODE,或許CPLD中的宏MACRO。作為PAGING時(shí),一定從最低位開始,使用N位作為PAGING,可實(shí)現(xiàn)2N個(gè)頁面的分派,即儲(chǔ)存器的地點(diǎn)配置中有2N個(gè)頁面可選擇。使用作為LOGIG時(shí)一定從高位開始使用,能夠?yàn)橹x一個(gè)名字,可用作DPLD的輸入項(xiàng)。MCU在運(yùn)轉(zhuǎn)時(shí)能夠?qū)AGE的進(jìn)行讀/寫操作,可是不可以按位操作,也就是說一定先障蔽再改正。在程序和數(shù)據(jù)均不超出64K時(shí),不用分頁,PGR0~PGR7不參加譯碼。此刻的PSDSOFT軟件中不要求用戶再寫地點(diǎn)方程式,只需要填寫地點(diǎn)范圍能夠了。不使用分頁時(shí),片選的PGAENUMBER就不可以填任何值,假如填“0”則表示位于頁0。在PSDSOFT中對(duì)公共區(qū)的設(shè)置方法很簡(jiǎn)單,只需不填作為公共區(qū)的儲(chǔ)存器的片選中的“PAGENUMBE”就能夠了。μPSD儲(chǔ)存器配置實(shí)例作為本文的結(jié)束,舉一個(gè)典型的μPSD應(yīng)用實(shí)例,讀者可參照其儲(chǔ)存器的配置方案。使用μPSD3234A-40U6器件,將FS0~FS7用作程序/數(shù)據(jù)儲(chǔ)存器,地點(diǎn)在8000H~0FFFFH,分別位于頁0至頁7;CSBOOT0~CSBOOT3作為程序儲(chǔ)存器,作為公共區(qū),地點(diǎn)是0000H~7FFFFH。擴(kuò)展SRAM位于0000H~1FFFH,CSIOP位于7F00H~7FFFH,用戶I/O空間定義為7E00H~7EFFH。這樣的儲(chǔ)存器配置能夠

溫馨提示

  • 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)論