![ch2DSP的存儲器和系統(tǒng)控制(DSP原理及應(yīng)用)_第1頁](http://file4.renrendoc.com/view/bef182b25a63feea4a0c4544d26be469/bef182b25a63feea4a0c4544d26be4691.gif)
![ch2DSP的存儲器和系統(tǒng)控制(DSP原理及應(yīng)用)_第2頁](http://file4.renrendoc.com/view/bef182b25a63feea4a0c4544d26be469/bef182b25a63feea4a0c4544d26be4692.gif)
![ch2DSP的存儲器和系統(tǒng)控制(DSP原理及應(yīng)用)_第3頁](http://file4.renrendoc.com/view/bef182b25a63feea4a0c4544d26be469/bef182b25a63feea4a0c4544d26be4693.gif)
![ch2DSP的存儲器和系統(tǒng)控制(DSP原理及應(yīng)用)_第4頁](http://file4.renrendoc.com/view/bef182b25a63feea4a0c4544d26be469/bef182b25a63feea4a0c4544d26be4694.gif)
![ch2DSP的存儲器和系統(tǒng)控制(DSP原理及應(yīng)用)_第5頁](http://file4.renrendoc.com/view/bef182b25a63feea4a0c4544d26be469/bef182b25a63feea4a0c4544d26be4695.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2.1DSP存儲器2.1.1DSP存儲空間分配2.1.2DSP片內(nèi)存儲基本類型2.2DSP系統(tǒng)控制2.2.1Flash&
OTP存儲2.2.2CSM代碼安全模塊2.2.3CLOCK時(shí)鐘模塊2.2.432位CPU定時(shí)器0/1/22.2.5GPIO第二章DSP的存儲器和系統(tǒng)控制什么是存儲器?為什么要有存儲器?存儲空間類型?存儲器怎么使用?存儲器使用中要注意那些事項(xiàng)?2.1.1DSP存儲空間分配2.1.1DSP存儲空間分配M0,M1SARAMs
在一個(gè)周期只能訪問一次
每個(gè)空間1K*16
數(shù)據(jù)存儲器和程序存儲器
2.1.2DSP片內(nèi)存儲基本類型L0SARAM
在一個(gè)周期只能訪問一次
空間4K*16RAM
數(shù)據(jù)存儲器和程序存儲器
SARAMFLASHBOOTROMFlash
空間32K*16分為4個(gè)8K*16的段
一個(gè)OTP存儲空間1K*16
特殊的存儲流水線數(shù)據(jù)存儲器和程序存儲器
BOOTROM
存儲引導(dǎo)模式&mathtable
空間8K*16
2.2.1DSP系統(tǒng)控制–Flash&
OTP存儲
Flash&OTP特點(diǎn)
多塊的結(jié)構(gòu)--最小的flash存儲空間擁有代碼安全性--CSM模塊更好的性能--可配置的等待時(shí)間&flash流水線Flash&OTP工作模式
復(fù)位&睡眠模式
備用模式激活&讀取模式Flash&OTP相關(guān)寄存器Flash&OTP相關(guān)寄存器FOPT確定是否開啟flash流水線模式寄存器Flash&OTP相關(guān)寄存器FPWR確定flash工作模式寄存器Flash&OTP相關(guān)寄存器FATATUSflash狀態(tài)標(biāo)志位寄存器Flash&OTP相關(guān)寄存器FATATUSflash狀態(tài)標(biāo)志位寄存器Flash&OTP相關(guān)寄存器FATATUSflash狀態(tài)標(biāo)志位寄存器FBANKWAITflash等待寄存器FBANKWAITflash等待寄存器Flash&OTP相關(guān)寄存器FOTPWAITOTP等待寄存器2.2.2DSP系統(tǒng)控制–CSM代碼安全模塊CSM功能特點(diǎn)
對存儲空間訪問需要輸入正確的密碼防止存儲空間信息被盜
CSM安全等級
CSM能保護(hù)的片上資源對SARAM,BOOTROM,PIE矢量表,外設(shè)寄存器沒有保護(hù)作用CSM寄存器CSM寄存器PMF(PasswordMatchFlow)流程圖PMF(PasswordMatchFlow)流程圖對PWL讀取判斷:1.Allzero:permanentlysecured2.AllFs:Unsecure3.Correctpassword:unsecure
作業(yè)1.存儲器在DSP系統(tǒng)中起什么作用?2.F28027的存儲器有哪幾種類型?分別起什么作用?3.Flash和OTP為什么需要進(jìn)行訪問等待設(shè)置?4.代碼安全保護(hù)模塊CSM起什么作用?F28027是怎么處理的?總結(jié)使用要點(diǎn):1,如何配置各個(gè)存儲器空間?---后面結(jié)合開發(fā)環(huán)境CCS5再講2,如何進(jìn)行Flash設(shè)置?3,如何進(jìn)行代碼保護(hù)?2.2.3DSP系統(tǒng)控制–clock時(shí)鐘模塊PLL&時(shí)鐘機(jī)制
時(shí)鐘振蕩器&系統(tǒng)控制
看門狗低功率32位CPU時(shí)鐘0/1/2PLL&時(shí)鐘機(jī)制輸入時(shí)鐘源的選擇:2802x器件有2個(gè)內(nèi)部振蕩器(INTOSC1和INTOSC2),不需要使用外部元件。這些器件還有一個(gè)片內(nèi)基于PLL的時(shí)鐘模塊。
1.INTOSC1——片內(nèi)振蕩器
2.INTOSC2——片內(nèi)振蕩器3.無源晶振——X1/X2引腳連接外部晶振4.有源晶振——XCLKIN引腳連接時(shí)鐘源INTOSC1(內(nèi)部零引腳振蕩器1):這是片內(nèi)內(nèi)部振蕩器1。它可以為看門狗模塊、內(nèi)核以及CPUTimer2提供時(shí)鐘。INTOSC2(內(nèi)部零引腳振蕩器2):這是片內(nèi)內(nèi)部振蕩器2。它可以為看門狗模塊、內(nèi)核以及CPUTimer2提供時(shí)鐘。INTOSC1和INTOSC2可以被單獨(dú)選擇用作看門狗模塊、內(nèi)核和CPUTimer2的時(shí)鐘。晶體/振蕩器操作:片內(nèi)(晶體)振蕩器允許使用一個(gè)外部晶體/振蕩器連接到器件來提供時(shí)基(timebase)。晶體/振蕩器連接到X1/X2引腳。外部時(shí)鐘源操作:如果未使用片內(nèi)(晶體)振蕩器,外部時(shí)鐘源模式就允許繞過片內(nèi)振蕩器。這時(shí),器件時(shí)鐘通過XCLKIN引腳的外部時(shí)鐘源輸入產(chǎn)生。注意:XCLKIN與GPIO19或GPIO38腳復(fù)用。XCLKIN輸入可以通過XCLK寄存器的XCLKINSEL位被選擇用作GPIO19或GPIO38。時(shí)鐘源:1.INTOSC12.INTOSC23.無源晶振4.有源晶振如何配置所需要的時(shí)鐘?
根據(jù)需求配置相關(guān)的寄存器
名稱地址大小(×16)描述XCLK0x0000-70101XCLKOUT/XCLKIN控制PLLSTS0x0000-70111PLL狀態(tài)寄存器CLKCTL0x0000-70121時(shí)鐘控制寄存器PLLLOCKPRD0x0000-70131PLL鎖定周期寄存器INTOSC1TRIM0x0000-70141內(nèi)部振蕩器1調(diào)整寄存器INTOSC2TRIM0x0000-70161內(nèi)部振蕩器2調(diào)整寄存器LOSPCP0x0000-701B1低速外設(shè)時(shí)鐘預(yù)分頻器寄存器PLLCR0x0000-70211PLL控制寄存器SCSR0x0000-70221系統(tǒng)控制&狀態(tài)寄存器配置輸入時(shí)鐘源&XCLKOUT寄存器(XCLK)位域值描述(1)15-7保留保留。6XCLKINSEL01XCLKIN源選擇位:這個(gè)位選擇XCLKIN輸入源。GPIO38是XCLKIN輸入源(這也是JTAG端口的TCK源)。GPIO19是XCLKIN輸入源。5-2保留保留0-0XCLKOUTDIV00011011XCLKOUT分頻比:這兩個(gè)位選擇XCLKOUT頻率相對于SYSCLKOUT的比率。比率是:XCLKOUT=SYSCLKOUT/4XCLKOUT=SYSCLKOUT/2XCLKOUT=SYSCLKOUTXCLKOUT=OffXCLK寄存器的XCLKINSEL位由復(fù)位引腳復(fù)位XCLK寄存器用來選擇XCLKIN輸入的GPIO引腳和配置XCLKOUT引腳的頻率。配置器件時(shí)鐘域(CLKCTL)
CLKCTL寄存器用來選擇時(shí)鐘源,也用來配置時(shí)鐘故障期間器件的行為位域值描述15NMIRESETSEL01NMI復(fù)位選擇位:該位在檢測到一個(gè)缺少時(shí)鐘條件時(shí)直接產(chǎn)生信號和使用復(fù)位兩者之間進(jìn)行選擇:沒有任何延遲地直接驅(qū)動(dòng)(復(fù)位時(shí)的默認(rèn)狀態(tài))。NMI看門狗復(fù)位()啟動(dòng)。注:不管作何選擇,都會(huì)產(chǎn)生信號。位域值描述14XTALOSCOFF01晶體振蕩器關(guān)閉位:如果晶體振蕩器不使用,可以使用該位將其關(guān)閉。晶體振蕩器開啟(復(fù)位時(shí)的默認(rèn)狀態(tài))。晶體振蕩器關(guān)閉。13XCLKINOFF01XCLKIN關(guān)閉位:該位關(guān)閉外部XCLKIN振蕩器輸入XCLKIN振蕩器輸入啟用(復(fù)位時(shí)的默認(rèn)狀態(tài))。XCLKIN振蕩器輸入關(guān)閉。注:你需要通過XCLK寄存器的XCLKINSEL位選擇XCLKIN的GPIO引腳。更詳細(xì)的信息請見XCLK寄存器的描述。如果使用XCLKIN,XTALOSCOFF就必須置位。12WDHALTI01看門狗停機(jī)模式忽略位:該位選擇是否通過停機(jī)模式自動(dòng)開啟/關(guān)閉看門狗。這個(gè)特性可以在停機(jī)模式有效時(shí)用來允許所選的WDCLK源繼續(xù)計(jì)時(shí)看門狗。這可以允許看門狗周期性地喚醒器件??撮T狗自動(dòng)通過停機(jī)模式開啟/關(guān)閉(復(fù)位時(shí)的默認(rèn)狀態(tài))。看門狗忽略停機(jī)模式。11INTOSC2HALTI01內(nèi)部振蕩器2停機(jī)模式忽略位:該位選擇是否通過停機(jī)模式自動(dòng)開啟/關(guān)閉內(nèi)部振蕩器2。這個(gè)特性可以在停機(jī)模式有效時(shí)用來允許內(nèi)部振蕩器繼續(xù)計(jì)時(shí)。這將使能器件更快地從停機(jī)模式中喚醒。內(nèi)部振蕩器2自動(dòng)通過停機(jī)模式開啟/關(guān)閉(復(fù)位時(shí)的默認(rèn)狀態(tài))。內(nèi)部振蕩器2忽略停機(jī)模式。10INTOSC2OFF01內(nèi)部振蕩器2關(guān)閉位:該位關(guān)閉振蕩器2內(nèi)部振蕩器2開啟(復(fù)位時(shí)的默認(rèn)狀態(tài))。內(nèi)部振蕩器2關(guān)閉。如果內(nèi)部振蕩器2不被使用,用戶可以使用該位將其關(guān)閉。這個(gè)選擇不受缺少時(shí)鐘檢測電路影響。9INTOSC1HALTI01內(nèi)部振蕩器1停機(jī)模式忽略位:該位選擇是否通過停機(jī)模式自動(dòng)開啟/關(guān)閉內(nèi)部振蕩器1。內(nèi)部振蕩器1自動(dòng)通過停機(jī)模式開啟/關(guān)閉(復(fù)位時(shí)的默認(rèn)狀態(tài))。內(nèi)部振蕩器1忽略停機(jī)模式。這個(gè)特性可以在停機(jī)模式有效時(shí)用來允許內(nèi)部振蕩器繼續(xù)計(jì)時(shí)。這將使能器件更快地從停機(jī)模式中喚醒。位域值描述8INTOSC1OFF01內(nèi)部振蕩器1關(guān)閉位:該位關(guān)閉振蕩器1內(nèi)部振蕩器1開啟(復(fù)位時(shí)的默認(rèn)狀態(tài))。內(nèi)部振蕩器1關(guān)閉。如果內(nèi)部振蕩器1不被使用,用戶可以使用該位將其關(guān)閉。這個(gè)選擇不受缺少時(shí)鐘檢測電路影響。7-5TMR2CLKPRESCALE000001010011100101110111CPUTimer2時(shí)鐘預(yù)分頻值:這些位為所選的CPUTimer2時(shí)鐘源選擇預(yù)分頻值。這個(gè)選擇不受缺少時(shí)鐘檢測電路影響。/1(復(fù)位時(shí)的默認(rèn)狀態(tài))/2/4/8/16保留保留保留4-3TMR2CLKSRCSEL00011011CPUTimer2時(shí)鐘源選擇位:該位為CPUTimer2選擇時(shí)鐘源選擇SYSCLKOUT(復(fù)位時(shí)的默認(rèn)狀態(tài),繞過預(yù)分頻器)。選擇外部振蕩器(XOR輸出)。選擇內(nèi)部振蕩器1。選擇內(nèi)部振蕩器2。這個(gè)選擇不受缺少時(shí)鐘檢測電路影響。2WDCLKSRCSEL01看門狗時(shí)鐘源選擇位:該位選擇看門狗的時(shí)鐘源。在為低時(shí)和變?yōu)楦咧螅J(rèn)選擇內(nèi)部振蕩器1。用戶需要在初始化過程中選擇外部振蕩器或內(nèi)部振蕩器2。如果缺少時(shí)鐘檢測電路檢測到缺少時(shí)鐘,那么該位被強(qiáng)制為0,并選擇內(nèi)部振蕩器1。用戶更改該位不影響PLLCR值。選擇內(nèi)部振蕩器1(復(fù)位時(shí)的默認(rèn)狀態(tài))。選擇外部振蕩器或內(nèi)部振蕩器2。位域值描述1OSCCLKSRC2SEL01振蕩器2時(shí)鐘源選擇位:這個(gè)位用來在內(nèi)部振蕩器2或外部振蕩器兩者之間作選擇。這個(gè)選擇不受缺少時(shí)鐘檢測電路影響。選擇外部振蕩器(復(fù)位時(shí)的默認(rèn)狀態(tài))。選擇內(nèi)部振蕩器2。0OSCCLKSRCSEL01振蕩器時(shí)鐘源選擇位。這個(gè)位選擇振蕩器的時(shí)鐘源。在為低時(shí)和變?yōu)楦咧螅J(rèn)選擇內(nèi)部振蕩器1。用戶需要在初始化過程中選擇外部振蕩器或內(nèi)部振蕩器2。只要用戶使用這些位來改變時(shí)鐘源,PLLCR寄存器將被自動(dòng)強(qiáng)制為零。這阻止了潛在的PLL過沖。然后,用戶必須寫PLLCR寄存器來配置合適的分頻比。如果必要,用戶也可以使用PLLLOCKPRD寄存器來配置PLL鎖定周期以縮短鎖定時(shí)間。如果缺少時(shí)鐘檢測電路檢測到缺少時(shí)鐘,那么這個(gè)位被自動(dòng)強(qiáng)制為0,并選擇內(nèi)部振蕩器1作為時(shí)鐘。PLLCR寄存器也將自動(dòng)強(qiáng)制為0來防止所有潛在的過沖。選擇內(nèi)部振蕩器1(復(fù)位時(shí)的默認(rèn)狀態(tài))。選擇外部振蕩器或內(nèi)部振蕩器2。注:如果用戶希望使用振蕩器2或外部振蕩器來計(jì)時(shí)CPU,必須應(yīng)該先配置這個(gè)位,然后再寫OSCCLKSRCSEL位。示例一:在沒有外部時(shí)鐘的情況下切換到INTOC2
寫的序列分為下列兩步:將XTALOSCOFF
&XCLKINOFF位置1
將OSCCLKLSRCSEL&OSCCLKSRC2SEL位置1為了使器件能夠正常工作,應(yīng)用代碼需要:先向CLKCTL寄存器的XTALOSCOFF和XCLKINOFF位寫入1。這樣來告知時(shí)鐘切換電路沒有外部時(shí)鐘。只有這么做之后,OSCCLKSRCSEL和OSCCLKSRC2SEL位才能被寫入。示例二:選擇內(nèi)部振動(dòng)器1voidIntOsc1Sel(void){
EALLOW;SysCtrlRegs.CLKCTL.bit.INTOSC1OFF=0;SysCtrlRegs.CLKCTL.bit.OSCCLKSRCSEL=0;//ClkSrc=INTOSC1SysCtrlRegs.CLKCTL.bit.XCLKINOFF=1;//TurnoffXCLKINSysCtrlRegs.CLKCTL.bit.XTALOSCOFF=1;//TurnoffXTALOSCSysCtrlRegs.CLKCTL.bit.INTOSC2OFF=1;//TurnoffINTOSC2EDIS;}示例三:選擇XTAL振動(dòng)器voidXtalOscSel(void){
EALLOW;SysCtrlRegs.CLKCTL.bit.XTALOSCOFF=0;//TurnonXTALOSCSysCtrlRegs.CLKCTL.bit.XCLKINOFF=1;//TurnoffXCLKINSysCtrlRegs.CLKCTL.bit.OSCCLKSRC2SEL=0;//SwitchtoexternalclockSysCtrlRegs.CLKCTL.bit.OSCCLKSRCSEL=1;//SwitchfromINTOSC1toINTOSC2/extclkSysCtrlRegs.CLKCTL.bit.INTOSC2OFF=1; //TurnoffINTOSC2SysCtrlRegs.CLKCTL.bit.INTOSC1OFF=1; //TurnoffINTOSC1EDIS;}基于PLL的時(shí)鐘模塊基于PLL的配置模式PLL模式注釋PLLSTS[DIVSEL](1)CLKIN和SYSCLKOUT(2)PLL關(guān)閉由用戶通過置位PLLSTS寄存器的PLLOFF位來激活。在這種模式下PLL模塊禁用。這對于降低系統(tǒng)噪聲和低功率操作很有用。在進(jìn)入這個(gè)模式之前,PLLCR寄存器必須先被設(shè)置成0x0000(PLL旁路)。CPU時(shí)鐘(CLKIN)直接從X1/X2,X1或XCLKIN上的輸入時(shí)鐘獲得。0,123OSCCLK/4OSCCLK/2OSCCLK/1PLL旁路PLL旁路是上電時(shí)或一次外部復(fù)位()后默認(rèn)的PLL配置。當(dāng)PLLCR寄存器被設(shè)置成0x0000,或者,在PLLCR寄存器被修改之后PLL鎖定到一個(gè)新的頻率時(shí),這個(gè)模式被選擇。在這個(gè)模式下,PLL本身被旁路,但PLL未關(guān)閉。0,123OSCCLK/4OSCCLK/2OSCCLK/1PLL啟用該模式通過將一個(gè)非零值n寫入PLLCR寄存器來實(shí)現(xiàn)。當(dāng)寫PLLCR時(shí),器件將切換到PLL旁路模式,直至PLL鎖定。0,12OSCCLK*n/4OSCCLK*n/2PLLSTS[DIVSEL]在寫PLLCR之前必須為零,并且,應(yīng)該只有在PLLSTS[PLLLOCKS]=1之后才能被修改選擇的輸入時(shí)鐘和PLLCR[DIV]位應(yīng)該使PLL(VCOCLK)的輸出頻率是最小值50MHz。PLL控制寄存器(PLLCR)
時(shí)鐘振蕩器&系統(tǒng)控制PCLKCR0/1/3寄存器使能/禁能各種外設(shè)模塊的時(shí)鐘。從寫PCLKCR0/1/3寄存器出現(xiàn)到操作有效之間有2個(gè)SYSCLKOUT周期的延遲。在嘗試訪問外設(shè)配置寄存器之前,必須考慮到這個(gè)延時(shí)。由于外設(shè)的GPIO在引腳上的復(fù)用,所有外設(shè)不能同時(shí)使用。雖然可以同時(shí)開啟所有外設(shè)的時(shí)鐘,但這樣的配置可能用處不大。如果同時(shí)開啟所有外設(shè)的時(shí)鐘,消耗的電流會(huì)比要求的大。為了避免出現(xiàn)這種情況,只啟用應(yīng)用需要使用的時(shí)鐘。
PCLKCR0外設(shè)時(shí)鐘控制寄存器位域值描述(1)15-11保留10SCIAENCLK01SCI-A時(shí)鐘使能。不給SCI-A模塊計(jì)時(shí)。(默認(rèn))(1)由低速時(shí)鐘(LSPCLK)為SCI-A模塊計(jì)時(shí)。9保留8SPIAENCLK01SPI-A時(shí)鐘使能。不給SPI-A模塊計(jì)時(shí)。(默認(rèn))(1)由低速時(shí)鐘(LSPCLK)為SPI-A模塊計(jì)時(shí)。7-5保留4I2CAENCLK01I時(shí)鐘使能。不給I模塊計(jì)時(shí)。(默認(rèn))(1)給I模塊計(jì)時(shí)。3ADCENCLK01ADC時(shí)鐘使能。不給ADC模塊計(jì)時(shí)。(默認(rèn))(1)給ADC模塊計(jì)時(shí)。PCLKCR0外設(shè)時(shí)鐘控制寄存器位域值描述(1)2TBCLKSYNC01ePWM模塊時(shí)基時(shí)鐘(TBCLK)同步:允許用戶將所有使能的ePWM模塊與時(shí)基時(shí)鐘(TBCLK)同步;停止每個(gè)已使能ePWM模塊內(nèi)的TBCLK(時(shí)基時(shí)鐘)(默認(rèn))。但是,如果PCLKCR1寄存器的ePWM時(shí)鐘使能位被置位,那么ePWM模塊仍然由SYSCLKOUT來計(jì)時(shí),即使TBCLKSYNC為0。所有已使能的ePWM模塊的時(shí)鐘在已校準(zhǔn)的TBCLK的第一個(gè)上升沿啟動(dòng)。為了得到完美同步的TBCLK,每個(gè)ePWM模塊的TBCTL寄存器中的預(yù)分頻器位必須設(shè)置相同。使能ePWM時(shí)鐘的正確過程如下所示:在PCLKCR1寄存器中使能ePWM模塊的時(shí)鐘。將TBCLKSYNC設(shè)置為0。配置預(yù)分頻器值和ePWM模式。將TBCLKSYNC設(shè)置為1。1保留保留0HRPWMENCLK01HRPWM時(shí)鐘使能。HRPWM不使能。HRPWM使能。PCLKCR1外設(shè)時(shí)鐘控制寄存器位域值描述(1)15-9保留8ECAP1ENCLK01eCAP1時(shí)鐘使能。不給eCAP1模塊計(jì)時(shí)。(默認(rèn))(2)由系統(tǒng)時(shí)鐘(SYSCLKOUT)為eCAP1模塊計(jì)時(shí)。7-4保留3EPWM4ENCLK01ePWM4時(shí)鐘使能。(3)不給ePWM4模塊計(jì)時(shí)。(默認(rèn))(2)由系統(tǒng)時(shí)鐘(SYSCLKOUT)為ePWM4模塊計(jì)時(shí)。2EPWM3ENCLK01ePWM3時(shí)鐘使能。(3)不給ePWM3模塊計(jì)時(shí)。(默認(rèn))(2)由系統(tǒng)時(shí)鐘(SYSCLKOUT)為ePWM3模塊計(jì)時(shí)。1EPWM2ENCLK01ePWM2時(shí)鐘使能。(3)不給ePWM2模塊計(jì)時(shí)。(默認(rèn))(2)由系統(tǒng)時(shí)鐘(SYSCLKOUT)為ePWM2模塊計(jì)時(shí)。0EPWM3ENCLK01ePWM1時(shí)鐘使能。(3)不給ePWM1模塊計(jì)時(shí)。(默認(rèn))(2)由系統(tǒng)時(shí)鐘(SYSCLKOUT)為ePWM1模塊計(jì)時(shí)。這個(gè)寄存器受EALLOW保護(hù),為了啟動(dòng)ePWM模塊內(nèi)的ePWM時(shí)基時(shí)鐘,還必須置位PCLKCR0的TBCLKSYNC位。PCLKCR3外設(shè)時(shí)鐘控制寄存器位域值描述15-14保留保留13GPIOINENCLK01GPIO輸入時(shí)鐘使能。不給GPIO模塊計(jì)時(shí)。給GPIO模塊計(jì)時(shí)。12-11保留保留10CPUTIMER2ENCLK01CPU定時(shí)器2時(shí)鐘使能。不給CPU定時(shí)器2計(jì)時(shí)。給CPU定時(shí)器2計(jì)時(shí)。9CPUTIMER1ENCLK01CPU定時(shí)器1時(shí)鐘使能。不給CPU定時(shí)器1計(jì)時(shí)。給CPU定時(shí)器1計(jì)時(shí)。8CPUTIMER0ENCLK01CPU定時(shí)器0時(shí)鐘使能。不給CPU定時(shí)器0計(jì)時(shí)。給CPU定時(shí)器0計(jì)時(shí)。7:2保留保留1COMP2ENCLK01COMP2時(shí)鐘使能。不給COMP2計(jì)時(shí)。給COMP2計(jì)時(shí)。0COMP1ENCLK01COMP1時(shí)鐘使能。不給COMP1計(jì)時(shí)。給COMP1計(jì)時(shí)。LOSPCP配置低速外設(shè)時(shí)鐘預(yù)分頻器位域值描述(1)15-3保留保留2-0LSPCLK000001010011100101110111這些位用來配置低速外設(shè)時(shí)鐘(LSPCLK)速率(相對于SYSCLKOUT):如果LOSPCP(2)≠0,則LSPCLK=SYSCLKOUT/(LOSPCP×2);如果LOSPCP=0,則LSPCLK=SYSCLKOUT;低速時(shí)鐘=SYSCLKOUT/1低速時(shí)鐘=SYSCLKOUT/2低速時(shí)鐘=SYSCLKOUT/4(復(fù)位默認(rèn)值)低速時(shí)鐘=SYSCLKOUT/6低速時(shí)鐘=SYSCLKOUT/8低速時(shí)鐘=SYSCLKOUT/10低速時(shí)鐘=SYSCLKOUT/12低速時(shí)鐘=SYSCLKOUT/14看門狗當(dāng)8位的看門狗計(jì)數(shù)器(WDCNTR)溢出前正確的序列被寫入WDKEY寄存器時(shí),WDCNTR被復(fù)位。值0x55被寫入WDKEY時(shí)允許復(fù)位WDCNTR。當(dāng)寫入WDKEY寄存器的下個(gè)值是0xAA時(shí),WDCNTR被復(fù)位。除0x55或0xAA以外的其它值寫入WDKEY不會(huì)產(chǎn)生任何操作。并不是將0x55和0xAA以任何順序?qū)懭隬DKEY都會(huì)造成系統(tǒng)復(fù)位。只要8位的看門狗遞增計(jì)數(shù)器到達(dá)最大值,看門狗模塊就產(chǎn)生一個(gè)512個(gè)振蕩器時(shí)鐘寬的輸出脈沖。為了阻止這種情況發(fā)生,用戶可以禁能計(jì)數(shù)器,或者,軟件周期性地向看門狗密鑰寄存器寫入一個(gè)0x55+0xAA序列,使看門狗計(jì)數(shù)器復(fù)位。Watchdog模塊框圖
Watchdog相關(guān)寄存器(SCSR)Watchdog相關(guān)寄存器(SCSR)Watchdog相關(guān)寄存器(WDCNTR)Watchdog相關(guān)寄存器(WDKEY)位域值描述(1)15-8保留保留7-0WDKEY0x55+0xAA其它值不同WDKEY寫序列的范例請參考表
2.22。先后將0x55和0xAA寫入WDKEY將WDCNTR位清除。寫入除0x55或0xAA以外的其它值不會(huì)產(chǎn)生任何動(dòng)作。如果寫入0x55之后寫入的不是0xAA,那么序列必須從寫0x55這里重新開始。讀取WDKEY返回WDCR寄存器的值。位域描述15-8保留保留7-0WDCNTR這些位包含看門狗計(jì)數(shù)器的當(dāng)前值。8位計(jì)數(shù)器以看門狗時(shí)鐘(WDCLK)速率持續(xù)遞增。如果計(jì)數(shù)器溢出,看門狗就啟動(dòng)一次復(fù)位。如果WDKEY寄存器寫入一個(gè)有效的值組合,計(jì)數(shù)器就被復(fù)位到零??撮T狗時(shí)鐘速率在WDCR寄存器中配置。Watchdog相關(guān)寄存器(WDCR)15-8保留保留7WDFLAG01看門狗復(fù)位狀態(tài)標(biāo)志位。由
引腳或上電引起的復(fù)位。該位保持鎖存,直到寫入1將條件清除。寫0被忽略。指示一個(gè)看門狗復(fù)位(
)產(chǎn)生的復(fù)位條件。6WDDIS01看門狗禁能。復(fù)位時(shí)看門狗模塊被使能。使能看門狗模塊。只有SCSR寄存器的WDOVERRIDE位被設(shè)置為1時(shí)WDDIS才能被修改。(默認(rèn))禁能看門狗模塊。5-3WDCHK0,0,0其它值看門狗檢查。只要寫這個(gè)寄存器,就必須向該域?qū)懭胫?,0,1,除非你想要通過軟件復(fù)位器件。如果看門狗被使能,則寫入任何其它值都會(huì)造成器件立刻復(fù)位或看門狗中斷被使用。這3個(gè)位讀出時(shí)總是零(0,0,0)。這個(gè)特性可以用來產(chǎn)生一個(gè)DSP的軟件復(fù)位。2-0WDPS000001010011100101110111看門狗預(yù)分頻。這些位配置看門狗計(jì)數(shù)器時(shí)鐘(WDCLK)速率(相對于OSCCLK/512):WDCLK=OSCCLK/512/1(默認(rèn))WDCLK=OSCCLK/512/1WDCLK=OSCCLK/512/2WDCLK=OSCCLK/512/4WDCLK=OSCCLK/512/8WDCLK=OSCCLK/512/16WDCLK=OSCCLK/512/32WDCLK=OSCCLK/512/64Watchdog計(jì)數(shù)器操作方式0X55&0XAA序列的順序?qū)懭隬DDIS位的置一(WDOVERRIDE=1)2.2.432位CPU定時(shí)器0/1/2定時(shí)器原理32位CPU計(jì)數(shù)器相關(guān)寄存器32位CPU計(jì)數(shù)器寄存器(TIMERxTIM
)TIMERxTIMH與之類似32位CPU周期寄存器(TIMERxPRD
)TIMERxPRDH與之類似TIMERxTCR寄存器描述_續(xù)TIMERxTCR寄存器描述_續(xù)TIMERxTPR寄存器描述(TIMERxTPRH寄存器與之類似)定時(shí)器主要功能:
產(chǎn)生精確的定時(shí)事件
可以用中斷處理也可以用標(biāo)志查詢進(jìn)行處理
定時(shí)器應(yīng)用的流程:1)配置系統(tǒng)時(shí)鐘2)初始化中斷向量-------下一章的內(nèi)容3)根據(jù)定時(shí)長度要求配置定時(shí)器相關(guān)寄存器4)編寫中斷服務(wù)程序,完成相應(yīng)功能舉例:定時(shí)器0產(chǎn)生10kHz的定時(shí)中斷1)系統(tǒng)時(shí)鐘配置成60M2)3)周期寄存器配置成60M/10k=600初試化程序:voidInitCpuTimer0(){EALLOW;CpuTimer0Regs.TCR.bit.TSS=1;//StopCpuTimer0;CpuTimer0Regs.TCR.bit.TIF=1;CpuTimer0Regs.TIM.all=0;CpuTimer0Regs.PRD.all=6000;//0.1mSCpuTimer0Regs.TPR.all=0;CpuTimer0Regs.TPRH.all=0;CpuTimer0Regs.TCR.bit.TRB=1;CpuTimer0Regs.TCR.bit.TIE=1;EDIS;CpuTimer0Regs.TCR.bit.TSS=0;//StartCpuTimer0}作業(yè):為F28027系統(tǒng)配置時(shí)鐘,要求是采用外部10M的晶振,CPU時(shí)鐘為60M。Watchdog起什么作用?F28027中如何禁止它起作用?配置F28027的CPUTimer2,要求每500微秒產(chǎn)生一次中斷。2.2.5DSP系統(tǒng)控制–GPIOGPIO模塊&JTAG數(shù)字I/O控制
多路復(fù)用MUX
寄存器位定義2.2.5DSP系統(tǒng)控制–GPIOGPIO多路復(fù)用(MUX)寄存器用來選擇共享引腳的操作。這些共享引腳用它們的通用I/O名稱來命名(即,GPIO0–GPIO38)。它們可以單獨(dú)用作數(shù)字I/O、被稱為GPIO,或者連接到3個(gè)外設(shè)I/O信號當(dāng)中的一個(gè)(通過GPxMUXn寄存器)。如果引腳被選擇用作數(shù)字I/O模式,可以使用寄存器來配置引腳的方向(通過GPxDIR寄存器)。2.2.5DSP系統(tǒng)控制–GPIO除了單個(gè)引腳位-I/O功能之外,每個(gè)GPIO使能的引腳還可以復(fù)用為多達(dá)3個(gè)獨(dú)立的外設(shè)信號。有3個(gè)I/O端口:PortA由GPIO0–GPIO31組成,PortB由GPIO32–GPIO38組成,模擬端口包括AIO0–AIO15。GPIO0~GPIO31多路復(fù)用圖GPIO32、GPIO33復(fù)用圖表JTAGPORTPINS:模擬/GPIO的復(fù)用數(shù)字I/O控制GPIO的配置步驟:Step1.Planthedevicepin-out
--安排器件引腳輸出Step2.Enableordisableinternalpull-upresistor--使能或禁能內(nèi)部上拉電阻Step3.Selectinputqualification--選擇輸入時(shí)鐘同步Step4.Selectthepinfu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智慧養(yǎng)老服務(wù)平臺建設(shè)合同-@-1
- 2025年中國寵物沙發(fā)行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 考研座位申請書
- 2025年度建筑工程質(zhì)量監(jiān)督與驗(yàn)收合同模板
- 2025年中國空氣濾芯行業(yè)市場深度分析及投資戰(zhàn)略規(guī)劃報(bào)告
- 2025年智慧城市建設(shè)項(xiàng)目股份制合伙人協(xié)議書
- 2025年度建筑節(jié)能改造工程混凝土地面施工合同
- 核算員申請書
- 2025年度酒店床墊行業(yè)可持續(xù)發(fā)展戰(zhàn)略規(guī)劃合同
- 粉體靜電涂裝設(shè)備行業(yè)行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究分析報(bào)告
- (2024年)電工安全培訓(xùn)(新編)課件
- mil-std-1916抽樣標(biāo)準(zhǔn)(中文版)
- 城鄉(xiāng)環(huán)衛(wèi)一體化內(nèi)部管理制度
- 廣匯煤炭清潔煉化有限責(zé)任公司1000萬噸年煤炭分級提質(zhì)綜合利用項(xiàng)目變更環(huán)境影響報(bào)告書
- 小學(xué)數(shù)學(xué)六年級解方程練習(xí)300題及答案
- 大數(shù)據(jù)在化工行業(yè)中的應(yīng)用與創(chuàng)新
- 光伏十林業(yè)可行性報(bào)告
- 小學(xué)綜合實(shí)踐《我做環(huán)保宣傳員 保護(hù)環(huán)境人人有責(zé)》
- 鋼煤斗內(nèi)襯不銹鋼板施工工法
- 出國勞務(wù)派遣合同(專業(yè)版)電子版正規(guī)范本(通用版)
- 公路工程安全風(fēng)險(xiǎn)辨識與防控手冊
評論
0/150
提交評論