第8章 X281x的時鐘和系統(tǒng)控制0403_第1頁
第8章 X281x的時鐘和系統(tǒng)控制0403_第2頁
第8章 X281x的時鐘和系統(tǒng)控制0403_第3頁
第8章 X281x的時鐘和系統(tǒng)控制0403_第4頁
第8章 X281x的時鐘和系統(tǒng)控制0403_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第8章X281x的時鐘和系統(tǒng)控制DSPTMS320F2812內(nèi)部結構CPU外設存儲器系統(tǒng)控制外部接口GPIO8.1時鐘單元所有的數(shù)字電路尤其是帶有CPU的數(shù)字系統(tǒng),系統(tǒng)各單元都依靠時鐘信號作為同步。每秒鐘電路運行的操作次數(shù)決定于時鐘頻率,因此,時鐘的運行頻率被視為系統(tǒng)運行的重要性能指標,同時也是系統(tǒng)可靠運行的基礎。

在一個系統(tǒng)或CPU內(nèi)部包含多個功能模塊,每個功能模塊都有自己適合的工作頻率,為此,我們需要通過響應的時鐘配置單元進行響應的設置,已達到提高系統(tǒng)性能,降低功耗的目的。

TMS320F2812處理器內(nèi)部集成了振蕩器、鎖相環(huán)、看門狗及工作模式選擇等控制電路。

振蕩器、鎖相環(huán)主要為處理器CPU及相關外設提供可編程的時鐘,每個外設的時鐘都可以通過相應的寄存器進行編程設置;

看門狗可以監(jiān)控程序的運行狀態(tài),提高系統(tǒng)的可靠性。8.1.1時鐘單元基本結構F2812內(nèi)部的各種時鐘和復位電路PLL模塊外部控制引腳。全局復位引腳。目前微處理器或DSP集成的片上鎖相環(huán),主要作用:

通過軟件實時地配置系統(tǒng)時鐘和片上外設時鐘,提高系統(tǒng)的靈活性和可靠性。降低系統(tǒng)對硬件的設計要求

。

采用軟件可編程鎖相環(huán),所設計的系統(tǒng)處理器外部允許較低的工作頻率,而片內(nèi)經(jīng)過鎖相環(huán)微處理器提供較高的系統(tǒng)時鐘。8.1.2鎖相環(huán)電路

鎖相環(huán)是一種控制晶振使其相對于參考信號保持恒定相位的電路,在數(shù)字通信系統(tǒng)中使用比較廣泛。

TMS320F2812處理器的片上晶振和鎖相環(huán)模塊為內(nèi)核及外設提供時鐘信號,并且控制器件的低功耗工作模式。片上晶振模塊允許使用2種方式為器件提供時鐘,即采用內(nèi)部振蕩器或外部時鐘源。8.1.2鎖相環(huán)電路

(1)使用內(nèi)部振蕩器,在Xl/XCLKIN和X2這兩個引腳之間連接一個石英晶體,一般選用30MHz。

(2)采用外部時鐘,將輸入的時鐘信號直接接到Xl/XCLKIN引腳上,而X2懸空,不使用內(nèi)部振蕩器。8.1.2鎖相環(huán)電路

外部時鐘源可以采用頻率穩(wěn)定的晶體振蕩器,具有使用方便,價格便宜,因而得到廣泛應用。全局復位引腳,低電平實現(xiàn)對CPU以及所有外設的復位。PLL模塊外部控制引腳。晶體振蕩器及鎖相環(huán)模塊鎖相環(huán)控制寄存器PLLCR的DIV位決定8.1.2鎖相環(huán)電路PLL模式說明SYSCLKOUT/CLKIN禁止引腳置低來進入該模式,PLL模塊完全不使能。此時,輸入CPU的時鐘由來自X1/XCLKIN引腳的時鐘信號直接去驅動。XCLKIN旁路如果PLL未處于不使能的狀態(tài),這是上電默認的PLL配置(PLLCR的值為0)。PLL自身被旁路,從X1/XCLKIN引腳輸入的時鐘信號先被/2,然后再送去CPU。XCLKIN/2使能通過給PLLCR寄存器寫一個不為0的值來實現(xiàn)PLL的使能,時鐘信號需要進入PLL模塊進行n倍頻,然后再被/2,最后送至CPU。(XCLKIN*n)/28.1.2鎖相環(huán)電路15

43

0ReservedDIVR-0R/W-0位15~4 Reserved保留位鎖相環(huán)控制寄存器PLLCR8.1.2鎖相環(huán)電路位3~0 DIV DIV位域控制是否旁路,不旁路時,用于設置PLL時鐘比率。0000 CLKIN=OSCCLK/2(PLL旁路)0001 CLKIN=(OSCCLK*1.0)/20010 CLKIN=(OSCCLK*2.0)/20011 CLKIN=(OSCCLK*3.0)/20100 CLKIN=(OSCCLK*4.0)/20101 CLKIN=(OSCCLK*5.0)/20110 CLKIN=(OSCCLK*8.0)/20111 CLKIN=(OSCCLK*7.0)/21000 CLKIN=(OSCCLK*8.0)/21001 CLKIN=(OSCCLK*9.0)/21010 CLKIN=(OSCCLK*10.0)/28.1.2鎖相環(huán)電路我們平常使用的是第3種方式,即PLL使能。晶振為30M,如何設置PLLCR使得,系統(tǒng)時鐘頻率為150MHz。晶振為30M,PLLCR的DIV位被設置成1010時的時鐘頻率CLKIN=(OSCLKIN*10)/2=(XCLKIN*10)/2=(30M*10)/2=150MHz 8.1.2鎖相環(huán)電路在使用F2812進行開發(fā)的時候,通常會用到一些外設,例如SCI、EV、ADC等,要使得這些外設工作,首要的就是向其提供時鐘信號。

因此,在系統(tǒng)初始化的時候,就需要對使用到的各個外設的時鐘進行使能,假設現(xiàn)在某個項目里用到了EVA、SCI和ADC這3個外設,那么就需要按照對這個3個外設進行時鐘的使能。和時鐘使能相關的寄存器是外設時鐘控制寄存器PCLKCR。8.1.3X2812中各種時鐘信號的產(chǎn)生15141312111098ReservedECANENCLKReservedMCBSPENCLKSCIBENCLKSCIAENCLKReservedSPIENCLK743210ReservedADCENCLKReservedEVBENCLKEVAENCLK外設時鐘控制寄存器(PCLKCR)SysCtrlRegs.PCLKCR.bit.SCIENCLKA=1;//使能外設SCIA的時鐘SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;//使能外設EVA的時鐘SysCtrlRegs.PCLKCR.bit.ADCENCLK=1;//使能外設ADC的時鐘低速外設時鐘預定標寄存器LOSPCP高速外設時鐘預定標寄存器HISPCP8.1.3X2812中各種時鐘信號的產(chǎn)生153210ReservedHSPCLKR-0R/W-001位15~3 Reserved保留位高速外設時鐘寄存器(HISPCP)位2~0 HSPCLK配置與SYSCLKOUT相關的高速外設模塊時鐘(HSPCLK)頻率。000 高速時鐘=SYSCLKOUT/1001 高速時鐘=SYSCLKOUT/2(復位值)010 高速時鐘=SYSCLKOUT/4011 高速時鐘=SYSCLKOUT/6100 高速時鐘=SYSCLKOUT/8101 高速時鐘=SYSCLKOUT/10110 高速時鐘=SYSCLKOUT/12111 高速時鐘=SYSCLKOUT/14153210ReservedLSPCLKR-0R/W-010位15~3 Reserved保留位低速時鐘寄存器(LOSPCP)位2~0 LSPCLK配置與SYSCLKOUT相關的低速外設模塊時鐘(LSPCLK)頻率。000 低速時鐘=SYSCLKOUT/1001 低速時鐘=SYSCLKOUT/2010 低速時鐘=SYSCLKOUT/4(復位值)011 低速時鐘=SYSCLKOUT/6100 低速時鐘=SYSCLKOUT/8101 低速時鐘=SYSCLKOUT/10110 低速時鐘=SYSCLKOUT/12111 低速時鐘=SYSCLKOUT/14總結:

F2812的片內(nèi)外設根據(jù)對時鐘速率的不同要求被區(qū)分為高速時鐘外設和低速時鐘外設,其中高速時鐘外設主要指EVA、EVB和ADC,而低速時鐘外設則包括SCIA、SCIB、SPI和McBSP。F2812專門設置了高速時鐘預定標器和低速時鐘預定標器,用于對SYSCLKOUT進行分頻控制,從而實現(xiàn)對高速外設工作時鐘HSPCLK和低速外設時鐘LSPCLK的配置。另外,提供給各個外設單元的SYSCLKOUT時鐘還可以通過一個全局寄存器——外設時鐘控制寄存器(PCLKCR)對應位的配置被使能或禁止。8.1.3X2812中各種時鐘信號的產(chǎn)生注意:1.在通過軟件改變系統(tǒng)的工作頻率時,必須等待系統(tǒng)時鐘穩(wěn)定后才可以繼續(xù)完成其他操作。

2.可以通過外設時鐘控制寄存器使能外設時鐘。在具體的應用中。為降低系統(tǒng)功耗,不使用的外設最好將其時鐘禁止。外設時鐘包括高速外設和低速外設兩種,分別通過HISPCP和LOSPCP寄存器進行設置。

8.1.3X2812中各種時鐘信號的產(chǎn)生寄存器地址長度(×16位)描述PLLCR0x70211PLL控制寄存器PCLKCR0x701C1外設模塊時鐘控制寄存器(外設時鐘使能寄存器)HISPCP0x701A1HSPCLK時鐘的高速外設模塊時鐘預分頻寄存器LOSPCP0x701B1LSPCLK時鐘的低速外設模塊時鐘預分頻寄存器系統(tǒng)控制寄存器結構體文件SysCtrlRegs8.1.4時鐘單元寄存器SCSR0x70221系統(tǒng)控制&狀態(tài)寄存器WDCNTR0x70231程序監(jiān)視器計數(shù)寄存器WDKEY0x70251程序監(jiān)視器復位密鑰寄存器WDCR0x70291程序監(jiān)視器控制寄存器表中所有寄存器只有在執(zhí)行EALLOW指令后,才可以訪問。8.1.4時鐘單元寄存器問題如果要使系統(tǒng)時鐘為輸入時鐘的4倍頻,同時使能所有的外設時鐘(高速),將高速外設的時鐘設置為系統(tǒng)時鐘的1/8,低速外設的時鐘設置為系統(tǒng)時鐘的1/10,應該如何設置相關的寄存器?voidInitPll(Uint16val){volatileUint16i;if(SysCtrlRegs.PLLCR.bit.DIV!=val)//鎖相環(huán)控制寄存器{EALLOW;SysCtrlRegs.PLLCR.bit.DIV=val;EDIS;//在鎖相環(huán)時鐘頻率切換過程中,只有當鎖相環(huán)穩(wěn)定后CPU才會切換到新的PLL設置,因此在設置完PLLCR后需要等待PLL穩(wěn)定。//初始化鎖相環(huán)及外設時鐘函數(shù)InitPll改變鎖相環(huán)倍頻系數(shù)和外設時鐘的具體應用程序DisableDog();for(i=0;i<5000;i++){}}}//外設時鐘控制寄存器,為降低系統(tǒng)功耗,不使用的外設時鐘需要屏蔽。但如果使用外設必須首先使能相應的外設時鐘voidInitPeripheralClocks(void){EALLOW;//HISPCP/LOSPCP預定標寄存器設置

SysCtrlRegs.HISPCP.a11=0x0001;SysCtrlRegs.LOSPCP.a11=0x0002;//使能使用的外設時鐘

SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;SysCtrlRegs.PCLKCR.bit.EVBENCLK=1;SysCtrlRegs.PCLKCR.bit.SCIAENCLK=1;SysCtrlRegs.PCLKCR.bit.SCIBENCLK=1;SysCtrlRegs.PCLKCR.bit.MCBSPENCLR=1;SysCtrlRegs.PCLKCR.bit.SPIENCLK=1;SysCtrlRegs.PCLKCR.bit.ECANENCLR=1;SysCtrlRegs.PCLKCR.bit.ADCEtTCLK=1;EDIS;}對于可靠性要求較高的系統(tǒng),必須能夠在沒有人為干預的情況下,自動從故障狀態(tài)恢復運行,尤其是在諸如工業(yè)控制、汽車、機器人等系統(tǒng)尤為重要。有效的措施就是采用看門狗電路。看門狗主要用來檢測軟件和硬件的運行狀態(tài),實際上看門狗就是一個計數(shù)器,其需要在一定的周期內(nèi)計數(shù)器被清零,否則計數(shù)器會溢出,產(chǎn)生一個系統(tǒng)復位信號,或建立一個非屏蔽中斷(NMI)并執(zhí)行恢復子程序。

看門狗有效地提高了系統(tǒng)的可靠性。8.2看門狗模塊振蕩器時鐘根據(jù)預定標器的配置二次分頻看門狗使能開關8位看門狗計數(shù)器512個振蕩器時鐘周期寬度的輸出脈沖集電極開路邏輯將復位引腳拉低。 當8位程序監(jiān)視器增計數(shù)器計數(shù)到最大值時,程序監(jiān)視器模塊產(chǎn)生一個輸出脈沖,脈寬為512個晶體振蕩器時鐘寬度(OSCCLK)。

為了阻止程序監(jiān)視器復位,用戶必須禁止計數(shù)器看門狗或程序周期性地向程序監(jiān)視器密鑰寄存器寫入0x55+0xAA序列,否則將復位程序監(jiān)視器計數(shù)器。8.2.1看門狗的基本操作在看門狗計數(shù)器(WDCNTR)溢出之前,如果采用正確的時序向WDKEY寫入數(shù)據(jù)就可以使WDCNTR復位。當向WDKEY寫0x55時,WDCNTR復位到使能位置;只有在向WDKEY寫0xAA后才會使WDCNTR真正地復位。0x55和OxAA以外的任何數(shù)據(jù)寫到WDKEY都會引起系統(tǒng)復位。只要向WDKEY寫0x55和0xAA,無論寫的順序如何都不會導致系統(tǒng)復位,而只有先寫

溫馨提示

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

評論

0/150

提交評論