版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第6章 定時(shí)器相關(guān)模塊本章導(dǎo)讀:本章講述了計(jì)數(shù)器/定時(shí)器的一般工作原理,介紹K60N512的定時(shí)接口模塊(PDB、 FTM、PIT、LPTMR、CMT和RTC )的基本功能與編程基礎(chǔ),并給出具體的例子,讀者要仔細(xì)體會(huì)各種不同的使用方法,并將這些方法運(yùn)用到具體的應(yīng)用中。本章知識(shí)點(diǎn)有計(jì)數(shù)器/定時(shí)器的工作原理;可編程延時(shí)模塊PDB;Flex定時(shí)器FTM;周期中斷定時(shí)器PIT;低功耗定時(shí)器LPTMR;載波調(diào)制傳輸接口 CMT;實(shí)時(shí)時(shí)鐘RTC。6.1計(jì)數(shù)器/定時(shí)器的基本工作原理在嵌入式應(yīng)用系統(tǒng)中,有時(shí)要求能對外部脈沖信號(hào)或開關(guān)信號(hào)進(jìn)行計(jì)數(shù),這可通過計(jì)數(shù)器來 完成。有些設(shè)備要求每間隔一定時(shí)間開啟并在一段時(shí)
2、間后關(guān)閉,有些指示燈要求不斷地閃爍,這 可利用定時(shí)信號(hào)來完成。個(gè)人計(jì)算機(jī)也經(jīng)常要用到定時(shí)信號(hào),如系統(tǒng)日歷時(shí)鐘的計(jì)時(shí)、產(chǎn)生不同 頻率的聲源等。在計(jì)算機(jī)系統(tǒng)屮,計(jì)數(shù)與定時(shí)問題的解決方法是一致的,只不過是同一個(gè)問題的 兩種表現(xiàn)形式。實(shí)現(xiàn)計(jì)數(shù)與定時(shí)的基本方法有三種:完全硬件方式、完全軟件方式、可編程計(jì)數(shù)器/定時(shí)器。 1.完全硬件方式在過去的許多儀器儀表或設(shè)備中,需要進(jìn)行延時(shí)、定時(shí)或計(jì)數(shù),經(jīng)常使用數(shù)字邏輯電路實(shí)現(xiàn), 即完全用硬件電路實(shí)現(xiàn)計(jì)數(shù)/定時(shí)功能,若要改變計(jì)數(shù)/定時(shí)的要求,必須改變電路參數(shù),通用性和靈活性差。在微型電子計(jì)算機(jī)出現(xiàn)以后,特別是隨著單片微型計(jì)算機(jī)的發(fā)展與普及,這種完全硬件方式實(shí)現(xiàn)定時(shí)與計(jì)
3、數(shù)的方法已較少使用。2.完全軟件方式在計(jì)算機(jī)中,通過編程利用計(jì)算機(jī)執(zhí)行指令的時(shí)間實(shí)現(xiàn)定時(shí),稱為完全軟件方式,簡稱軟件方式。在這種方式中,一般是根據(jù)所需要的時(shí)間常數(shù)來設(shè)計(jì)一個(gè)延時(shí)子程序,延時(shí)子程序中包含一定的指令,設(shè)計(jì)者要對這些指令的執(zhí)行時(shí)間進(jìn)行精確的計(jì)算和測試,以便確定延時(shí)時(shí)間是否符合要求。當(dāng)時(shí)間常數(shù)比較大時(shí),常常將延時(shí)子程序設(shè)計(jì)為一個(gè)循環(huán)程序,通過循環(huán)常數(shù)和循環(huán)體 內(nèi)的指令來確定延時(shí)時(shí)間。這樣,每當(dāng)延時(shí)子程序結(jié)束以后,可以直接轉(zhuǎn)入下而的操作,也可以用輸出指令產(chǎn)生一個(gè)信號(hào)作為定時(shí)輸出。這種方法的優(yōu)點(diǎn)是節(jié)省硬件。主要缺點(diǎn)是執(zhí)行延時(shí)程序期間,CPU一直被占用,所以降低了 CPU的使用效率,也不容易
4、提供多作業(yè)環(huán)境;另外,設(shè)計(jì)延時(shí)子程序時(shí),要用指令執(zhí)行時(shí)間來拼湊延時(shí)時(shí)間,顯得比較麻煩。不過,這種方法在實(shí)際應(yīng)用中還是經(jīng)常使用的,尤其是在已有系統(tǒng)上作軟件開發(fā)時(shí),以及延時(shí)時(shí)間較小而重復(fù)次數(shù)又較少的情況。在計(jì)算機(jī)控制軟件開發(fā)過程中,作為粗略的延時(shí),經(jīng)常使用軟件方法來實(shí)現(xiàn)定時(shí)。3.可編程計(jì)數(shù)器/定時(shí)器利用專門的可編程計(jì)數(shù)器/定時(shí)器實(shí)現(xiàn)計(jì)數(shù)與定時(shí),克服了完全硬件方式與完全軟件方式的缺點(diǎn),綜合利用了它們各自的優(yōu)點(diǎn),其計(jì)數(shù)/定時(shí)功能可由程序靈活地設(shè)置,設(shè)定之后與CPU并行地工作,不占用CPU的工作時(shí)間。應(yīng)用可編程計(jì)數(shù)器/定時(shí)器,在簡單的軟件控制下,可以產(chǎn)生準(zhǔn)確的時(shí)間延時(shí)。這種方法的主要思想是根據(jù)需要的定時(shí)
5、時(shí)間,用指令對計(jì)數(shù)器/定時(shí)器設(shè)置定時(shí)常數(shù),并用指令啟動(dòng)計(jì)數(shù)器/定時(shí)器開始計(jì)數(shù),當(dāng)計(jì)數(shù)到指定值時(shí),便自動(dòng)產(chǎn)生一個(gè)定時(shí)輸出。在計(jì)數(shù)器/定時(shí)器開始工作以后,CPU不必去管它,而可以去做其他工作。這種方法最突出的優(yōu)點(diǎn)是計(jì)數(shù)時(shí)不占用CPU的時(shí)間,如果利用計(jì)數(shù)器/定時(shí)器產(chǎn)生中斷信號(hào)還可以建立多作業(yè)的環(huán)境,所以可大大提高CPU的利用率。加上計(jì)數(shù)器/定時(shí)器本身的開銷并不很大,因此這種方法在微機(jī)應(yīng)用系統(tǒng)中得到了廣泛的使用。K60的定時(shí)器接口模塊包括了六個(gè)子模塊:可編程延遲模塊PDB、Flex定時(shí)器模塊FTM、周期中斷定時(shí)器模塊PIT、低功耗定時(shí)器模塊LPTMR、載波調(diào)制發(fā)射器模塊CMT,以及實(shí)時(shí)時(shí)鐘模塊RTC。
6、下面逐個(gè)介紹這幾個(gè)模塊。6.2可編程延遲模塊PDB6.2.1 PDB的基礎(chǔ)知識(shí)可編程延遲模塊(Programmable Delay Block, PDB)可以提供從內(nèi)部/外部觸發(fā)源、可編程間隔到A/D轉(zhuǎn)換(Analog To Digital Convert, ADC)的硬件觸發(fā),也可以提供D/A轉(zhuǎn)換模塊(Digital-to-Analog Converter, DAC)間隔觸發(fā)的可控時(shí)延,這樣就可以為ADC轉(zhuǎn)換和DAC輸出提供精確的時(shí)間。由于本章涉及ADC與DAC的內(nèi)容,讀者可以先閱讀后面的章節(jié)再進(jìn)行本節(jié)的學(xué)習(xí)。另外,PDB模塊還可以選擇性提供脈沖輸出。PDB模塊包含高達(dá)15種輸入觸發(fā)中斷源和
7、軟件觸發(fā)中斷源、8路的可配置用于ADC觸發(fā)的PDB通道、8路的DAC內(nèi)部觸發(fā)源和8路的脈沖輸出。PDB結(jié)構(gòu)框圖如圖6-1所示。在圖中,只顯示了PDB通道n,DAC間隔觸發(fā)器x以及脈沖輸出y (用虛線框表示),沒有顯示PDB使能控制邏輯與時(shí)序錯(cuò)誤中斷邏輯。6.2.2 PDB模塊寄存器介紹PDB的寄存器絕對地址(十六進(jìn)制)寄存器名稱訪問4003_6000狀態(tài)和控制秒寄存器(PDB0_SC)R/W4003_6004模寄存器(PDB0_MOD)R/W4003_6008計(jì)數(shù)寄存器(PDB0_CNT)R4003_600C中斷延時(shí)寄存器(PDB0_IDLY)R/W4003_6010通道n控制寄存器1((PD
8、B0_CH0C1)R/W4003_6014通道n狀態(tài)寄存器(PDB0_CH0S)W1c4003_6018通道n延時(shí)0寄存器(PDB0_CH0DLY0)R/W4003_601C通道n延時(shí)1寄存器(PDB0_ CH0DLY1)R/W4003_6038通道n控制寄存器1( PDB0_CH1C1 )R/W4003_603C通道n狀態(tài)寄存器( PDB0_CH1S )W1c4003_6040通道n延時(shí)0寄存器(PDB0_CH1DLY0)R/W4003_6044通道n延時(shí)1寄存器(PDB0_ CH1DLY1)R/W4003_6150DAC間隔觸發(fā)n控制寄存器( PDB0_DACINTC0 )R/W4003_
9、6154DAC間隔n寄存器( PDB0_DACINT0 )R/W4003_6158DAC間隔觸發(fā)n控制寄存器( PDB0_DACINTC1)R/W4003_615CDAC間隔n寄存器( PDB0_DACINT1 )R/W4003_6190輸出脈沖n使能寄存器( PDB0_PO0EN)R/W4003_6194輸出脈沖n延時(shí)寄存器( PDB0_PO0DLY)R/W1)狀態(tài)和控制寄存器(PDBx_SC)PDBx_SC位描述位描述31-20:預(yù)留預(yù)留,只讀,值為019-18:LDMOD裝載模式選擇LDOK置位后,此位為MOD、IDLY、ChnDlym、INTx和POyDly寄存器的負(fù)載模式選擇位00
10、一旦LDOK置位后,內(nèi)部寄存器立即從緩沖區(qū)裝載值01 PDB計(jì)數(shù)器的值與MOD寄存器的值相等且LDOK置位后,內(nèi)部寄存器從緩沖區(qū)裝載值(1)10 LDOK置位后,如果檢測到輸入觸發(fā)事件,內(nèi)部寄存器從緩沖區(qū)裝載值(2)11 當(dāng)(1)或(2)發(fā)生時(shí),內(nèi)部寄存器從緩沖區(qū)裝載值。17:PDBEIEPDB時(shí)序錯(cuò)誤中斷使能位0 禁止中斷1 使能中斷16:SWTRIG軟件觸發(fā)當(dāng)使能PDB而且選擇軟件觸發(fā)作觸發(fā)輸入源時(shí),寫1到此位會(huì)使計(jì)數(shù)器重新計(jì)數(shù)。寫0無 效。 讀為015:DMAENDMA使能位0 禁止1 使能14-12:PRESCALER預(yù)分頻選擇位000 1倍倍頻001 2倍倍頻010 4倍倍頻011
11、8倍倍頻100 16倍倍頻101 32倍倍頻110 64倍倍頻111 128倍倍頻11-8:TRGSEL輸入觸發(fā)源選擇為PDB選擇輸入觸發(fā)源。輸入觸發(fā)源可以是內(nèi)部或者外部觸發(fā)源,或者軟件觸發(fā)。00001110分別為中斷源0中斷源14,1111為軟件中斷源7:PDBENPDB使能位0 禁止,計(jì)數(shù)器關(guān)閉1 使能6:PDBIFPDB中斷標(biāo)志位當(dāng)計(jì)數(shù)器的值等于IDLY寄存器的值時(shí),此位置位。寫0清該位。5:PDBIEPDB中斷使能這一位使能PDB中斷。當(dāng)此位被置位且DMAEN被清除時(shí),PDBIF會(huì)產(chǎn)生一個(gè)中斷0 禁止1 使能4:預(yù)留預(yù)留,只讀,值為03-2:MULT倍頻因子選擇位00 倍頻因子為101
12、 倍頻因子為1010 倍頻因子為2011 倍頻因子為401:CONT連續(xù)模式使能位0 單次模式1 連續(xù)模式0:LDOK裝載數(shù)據(jù)OK位寫1可以讓緩沖裝載內(nèi)部寄存器MOD、IDLY、ChnDlym、INTx和POyDly的值。MOD、IDLY、ChnDlym、INTx和POyDly可以通過LDMOD發(fā)揮作用。2)模寄存器(PDBx_MOD)PDBx_MOD位寄存器位描述31-16:預(yù)留預(yù)留,只讀,值為015-0:MODPDB模值這些位確定了計(jì)數(shù)器的周期,當(dāng)計(jì)數(shù)器達(dá)到這個(gè)值時(shí),歸零,如果PDB為連續(xù)模式,重新計(jì)數(shù)。3)計(jì)數(shù)寄存器(PDBx_CNT)PDBx_CNT位描述位描述31-16:預(yù)留預(yù)留,只
13、讀,值為015-0:CNTPDB計(jì)數(shù)器,只讀4)中斷延時(shí)寄存器(PDBc_IDLY)PDBc_IDLY位描述位描述31-16:預(yù)留預(yù)留,只讀,值為015-0:IDLYPDB中斷延時(shí),這些位確定PDB中斷的延時(shí)值5)通道n控制寄存器1(PDBx_CHnC1)每個(gè)PDB通道都有一個(gè)控制寄存器CHnC1,用來控制每個(gè)PDB通道的功能。PDBx_CHnC1位描述位描述31-24:預(yù)留預(yù)留,只讀,值為023-16:BBPDB通道預(yù)觸發(fā)背靠背操作使能位0 禁止1 使能15-8:TOSPDB預(yù)觸發(fā)輸出選擇位這些位用來選擇PDB的ADC預(yù)觸發(fā)輸出。0 PDB通道響應(yīng)旁路模式的預(yù)觸發(fā)。1當(dāng)在輸入觸發(fā)源檢測到一個(gè)
14、上升沿信號(hào)后,計(jì)數(shù)器的值等于通道延時(shí)寄存器的值加一個(gè)預(yù)分頻周期時(shí),或者選擇軟件觸發(fā)模式且SWTRIG置位,預(yù)觸發(fā)器會(huì)響應(yīng)7-0:ENPDB通道預(yù)觸發(fā)使能位0 禁用PDB通道響應(yīng)預(yù)觸發(fā)器1 使能 PDB通道響應(yīng)預(yù)觸發(fā)器6)通道n狀態(tài)寄存器(PDBx_CHnS)PDBx_CHnS位描述位描述31-24:預(yù)留預(yù)留,只讀,值為023-16:CFPDB通道標(biāo)志當(dāng)PDB計(jì)數(shù)器與CHnDLYm匹配時(shí)置位CFm。寫0清除15-8:預(yù)留預(yù)留,只讀,值為07-0:ERRPDB通道時(shí)序錯(cuò)誤標(biāo)志0 PDB通道響應(yīng)預(yù)觸發(fā)器不檢測時(shí)序錯(cuò)誤1 PDB通道響應(yīng)預(yù)觸發(fā)器檢測時(shí)序錯(cuò)誤7)通道n延時(shí)0寄存器(PDBx_CHnDLY
15、0)PDBx_CHnDLY0位描述位描述31-16:預(yù)留預(yù)留,只讀,值為015-0:DLYPDB通道延時(shí)值這些位確定通道響應(yīng)預(yù)觸發(fā)器的延時(shí)值8)通道n延時(shí)1寄存器(PDBx_CHnDLY1)功能同通道n延時(shí)0寄存器,不再贅述。9)DAC間隔觸發(fā)器n控制寄存器(PDBx_DACINTCn)PDBx_DACINTCn位描述位描述31-2:預(yù)留預(yù)留,只讀,值為01:EXTDAC外部輸入觸發(fā)使能位0 禁用DAC外部輸入觸發(fā)1 使能DAC外部輸入觸發(fā)0:TOEDAC間隔觸發(fā)使能位0 禁止1 使能10)DAC間隔n寄存器(PDBx_DACINTn)PDBx_DACINTn位描述位描述31-16:預(yù)留預(yù)留,
16、只讀,值為015-0:INTDAC間隔這些位決定DAC間隔觸發(fā)器的間隔值11)脈沖輸出n使能寄存器(PDBx_POnEN)PDBx_POnEN位描述位描述31-8:預(yù)留預(yù)留,只讀,值為07-0:POENPDB脈沖輸出使能0 禁止1 使能12)脈沖輸出n延時(shí)寄存器(PDBx_POnDLY)PDBx_POnDLY位描述位描述31-16:DLY1PDB脈沖輸出延時(shí)1這些位用來確定PDB脈沖輸出延時(shí)1的值。當(dāng)PDB計(jì)數(shù)器等于DLY1時(shí),脈沖輸出高。15-0:DLY2PDB脈沖輸出延時(shí)2這些位用來確定PDB脈沖輸出延時(shí)2的值。當(dāng)PDB計(jì)數(shù)器等于DLY2時(shí),脈沖輸出高。6.2.3 PDB模塊概要與編程要點(diǎn)
17、1.PDB輸入觸發(fā)源選擇PDB有多達(dá)15個(gè)輸入觸發(fā)源,叫做Trigger-In 014,在圖6-1中可以看到,它們與片上或片下事件源相連。通過PDB狀態(tài)控制寄存器SC的軟件觸發(fā)位(SWTRIG)可以將PDB設(shè)置為軟件觸發(fā),通過SC的輸入觸發(fā)源選擇位域(TRIGSEL)可以使能觸發(fā)輸入源Trigger-In 0到14 中的某一個(gè),或者是軟件觸發(fā)。SCTRIGSEL的取值范圍為00001111,其中00001110對應(yīng) 觸發(fā)源Trigger-In 0到14,1111對應(yīng)軟件觸發(fā)。詳細(xì)信息參見本章閱讀材料。2. DAC間隔觸發(fā)器輸出PDB可以產(chǎn)生間歇的觸發(fā),周期性的更新DAC輸出。當(dāng)產(chǎn)生輸入觸發(fā)事件
18、且DACINTCxEXT 等于零時(shí),復(fù)位DAC間隔計(jì)數(shù)器x并重新開始計(jì)數(shù)。當(dāng)間隔計(jì)數(shù)器x的值等于DACINTx寄存器設(shè)置的值時(shí),DAC間隔觸發(fā)器x會(huì)輸出一個(gè)脈沖來更新DACx,該脈沖的脈寬等于一個(gè)外設(shè)時(shí) 鐘周期。如果置位DACINTCxEXT,將旁路DAC間隔計(jì)數(shù)器,而且在檢測到DAC外部輸入觸發(fā)有上升沿之后,DAC間隔觸發(fā)器x會(huì)輸出一個(gè)脈沖。清位DACINTCxTOE將禁止DAC間隔計(jì)數(shù)器和DAC間隔觸發(fā)器。當(dāng)PDB計(jì)數(shù)器等于PDB模寄存器MOD的值時(shí),復(fù)位DAC間隔計(jì)數(shù)器。因此當(dāng)PDB計(jì)數(shù)器歸零時(shí),DAC間隔計(jì)數(shù)也會(huì)重新開始。在圖6-1可以看到DAC間隔觸 發(fā)輸出框圖。3.脈沖輸出PDB可
19、以輸出寬度可配置的脈沖。當(dāng)PDB計(jì)數(shù)器的值等于PDB脈沖輸出y延時(shí)寄存器DLY1的值時(shí),脈沖輸出為高;當(dāng)計(jì)數(shù)器達(dá)的值等于PDB脈沖輸出y延時(shí)寄存器DLY2的值時(shí),脈沖輸出為低。由圖6-1也可以看到脈沖輸出框圖。圖6-1 PDB結(jié)構(gòu)框圖6.2.3 PDB構(gòu)件設(shè)計(jì)及測試實(shí)例(省略)6.3 Flex定時(shí)器FTM6.3.1 FTM的基礎(chǔ)知識(shí)彈性定時(shí)器模塊(FlexTimer Module, FTM)是一個(gè)支持輸入捕捉、輸出比較、產(chǎn)生可用來 控制電機(jī)的PWM信號(hào)和電源管理應(yīng)用的通道定時(shí)器。它建立在飛思卡爾8位微控制器HCS08 定時(shí)器PWM模塊TPM上,并且在低功耗和向后兼容TPM的基礎(chǔ)上進(jìn)行功能擴(kuò)展,
20、增加了有符號(hào)的加法計(jì)數(shù)器、故障控制輸入、增強(qiáng)了觸發(fā)功能和極性控制來滿足電機(jī)控制、電源轉(zhuǎn)換等 的需要。所有與TPM模塊相同的特性完全向后兼容,F(xiàn)TM在相同的核心平臺(tái)下不需要對代碼做 任何改變就可以實(shí)現(xiàn)相同的功能。FTM具有可選的時(shí)鐘源,可以是系統(tǒng)時(shí)鐘、固定頻率時(shí)鐘或者外部時(shí)鐘;具有1、2、4、8、16、32、64、128預(yù)分頻;一個(gè)可以進(jìn)行無符號(hào)或有符號(hào)計(jì)數(shù)的16位計(jì)數(shù)器,為FTM提供定時(shí) 參考;每一個(gè)通道都可配置為輸入捕捉、輸出比較或者邊緣對齊的PWM模式;每個(gè)通道的極性 都可以配置,并產(chǎn)生溢出中斷、通道中斷、故障中斷等中斷。當(dāng)TOIE=l 且TOF=l時(shí),產(chǎn)生定時(shí) 器溢出中斷,當(dāng)ChnIE=
21、l且CHnF=l時(shí),產(chǎn)生通道(n)中斷,當(dāng)FAULTIE=1且FAULTF=1時(shí), 產(chǎn)生故障中斷。圖6-2顯示了 FTM模塊結(jié)構(gòu),其中心組件為16位計(jì)數(shù)器。6.3.2 FTM模塊寄存器介紹FTM寄存器非常多,我們這里只列舉常用的8個(gè)。1)狀態(tài)和控制寄存器(FTMx_SC)SC包含溢出狀態(tài)標(biāo)志和控制位,用來配置中斷使能、FTM配置、時(shí)鐘源和預(yù)分頻因子。這些控制和這個(gè)模塊的所有通道相關(guān)。FTMx_SC位域描述位域描述31-8保留這個(gè)只讀位域被保留,值常為0。7TOF定時(shí)器溢出標(biāo)志位0 FTM計(jì)數(shù)器不溢出1 FTM計(jì)數(shù)器溢出6TOIE定時(shí)器溢出中斷使能0 禁止TOF中斷。使用軟件輪詢1 使能TOF中
22、斷。當(dāng)TOF等于1時(shí)產(chǎn)生中斷5CPWMS中央對齊PWM選擇位0 FTM計(jì)數(shù)器向上計(jì)數(shù)1 FTM計(jì)數(shù)器向上向下計(jì)數(shù)4-3CLKS時(shí)鐘源選擇00 沒有選擇任何時(shí)鐘(實(shí)際上是禁止FTM計(jì)數(shù)器)01 系統(tǒng)時(shí)鐘10 固定頻率時(shí)鐘11 外部時(shí)鐘2-0PS預(yù)分頻因子選擇位000 1分頻001 2分頻010 4分頻011 8分頻100 16分頻101 32分頻110 64分頻111 128分頻2)計(jì)數(shù)器(FTMx_CNT)CNT寄存器包含F(xiàn)TM計(jì)數(shù)器的值。復(fù)位清CNT寄存器,寫任何值到COUNT中會(huì)將計(jì)數(shù)器更新為它的初始值(CNTIN),當(dāng)激活BDM時(shí),F(xiàn)TM計(jì)數(shù)器凍結(jié)。FTMx_CNT位域描述位域描述31-
23、16保留只讀位域被保留,總是為0。15-0COUNT計(jì)數(shù)器值3)模寄存器(FTMx_MOD)模寄存器包含F(xiàn)TM計(jì)數(shù)器的模值。FTM計(jì)數(shù)器達(dá)到模寄存器的值后,在下個(gè)時(shí)鐘周期置位溢出標(biāo)志(TOF),F(xiàn)TM計(jì)數(shù)器的下一個(gè)值取決于所選的計(jì)數(shù)方式。寫MOD寄存器會(huì)將值鎖存到緩沖區(qū)中,MOD寄存器會(huì)根據(jù)寫緩沖區(qū)中的值更新寄存器。如果FTMEN=0,通過寫SC寄存器可能復(fù)位寫一致機(jī)制,推薦在寫MOD寄存器之前初始化FTM計(jì)數(shù)器。FTMx_MOD位域描述位描述31-16:預(yù)留預(yù)留,只讀,值為015-0:MOD模值4)通道n狀態(tài)和控制寄存器(FTMx_CnSC)CnSC包含了通道中斷狀態(tài)標(biāo)志和控制位,用于配置中
24、斷使能、通道配置和引腳功能。FTMx_CnSC位描述位描述31-8:預(yù)留預(yù)留,只讀,值為07:CHF通道標(biāo)志0 無通道事件發(fā)生1 有通道事件發(fā)生6:CHIE通道中斷使能位0 禁止1 使能5:MSB通道模式選擇位在通道邏輯中,用于進(jìn)一步的選擇,它的功能取決于通道模式。此位已被寫保護(hù)。只有當(dāng)MODEWPDIS = 1時(shí)才可寫。4:MSA通道模式選擇位在通道邏輯中,用于進(jìn)一步的選擇,它的功能取決于通道模式。此位已被寫保護(hù)。只有當(dāng)MODEWPDIS = 1時(shí)才可寫。3:ELSB邊沿或電平選擇位ELSB和ELSA的功能取決于通道模式,此位已被寫保護(hù)。僅當(dāng)MODEWPDIS = 1時(shí)才可寫。2:ELSA邊
25、沿或電平選擇位ELSB和ELSA的功能取決于通道模式,此位已被寫保護(hù)。僅當(dāng)MODEWPDIS = 1時(shí)才可寫。1:預(yù)留預(yù)留,只讀,值為00:DMADMA使能位0 禁止1 使能5)通道n值寄存器(FTMx_CnV)這些寄存器包括了輸入捕捉模式下捕捉的FTM計(jì)數(shù)器的值或者輸出比較模式下的匹配值。在輸入捕捉、捕捉測試和雙邊沿捕捉模式,寫CnV無效。在輸出比較模式下,寫CnV寄存器將會(huì)把寫入的值裝載到緩沖中。FTMx_CnV位描述31-16:預(yù)留預(yù)留,只讀,值為015-0:VAL通道值捕捉到的FTM計(jì)數(shù)器的值或輸出比較輸出匹配值6)計(jì)數(shù)器初始值寄存器(FTMx_CNTIN)該寄存器包括FTM計(jì)數(shù)器的初
26、始值,寫該寄存器會(huì)將值裝載到緩沖區(qū)中。FTMx_CNTIN位描述位描述31-16:預(yù)留預(yù)留15-0:INITFTM計(jì)數(shù)器的初始值7)捕捉和比較狀態(tài)寄存器(FTMx_STATUS)該寄存器包括了對每個(gè)FTM通道的狀態(tài)標(biāo)志CHnF位的副本。通過讀該寄存器可以得到所有通道的CHnF位的值。寫0x00到該寄存器可以清掉所有的CHnF位的值。當(dāng)通道上有事件發(fā)生時(shí),硬件會(huì)使響應(yīng)的通道標(biāo)志置位。當(dāng)CHnF被置位時(shí),讀該寄存器可以清CHF。寫1到CHF無效。FTMx_STATUS位描述位描述31-8:預(yù)留預(yù)留,只讀,值為07-0CHnF通道n標(biāo)志位0 無事件發(fā)生1 有事件發(fā)生8)特性模式選擇寄存器(FTMx_
27、MODE)這個(gè)寄存器包含用來配置出錯(cuò)中斷和出錯(cuò)控制的控制位,捕捉測試模式,PWM同步化,寫保護(hù),通道輸出初始化,和使FTM加強(qiáng)的特性。這些控制與該模塊內(nèi)的所有通道有聯(lián)系。FTMx_MODE位描述位描述31-8預(yù)留該位為只讀位而且其值總為0。7FAULTIE故障控制中斷使能位0 禁用故障控制中斷1 使能故障控制中斷6-5FAULTM故障控制模式00 對所有的通道禁用故障控制。10 僅對0、2、4、6通道使能故障控制,手動(dòng)清除故障10 對所有的通道使能故障控制,且手動(dòng)清除故障11 對所有的通道使能故障控制,且自動(dòng)清除故障4CAPTEST捕捉測試模式使能位0 禁用捕捉測試模式1 使能捕捉測試模式3P
28、WMSYNCPWM同步模式0 無限制,軟件觸發(fā)和硬件觸發(fā)都可通過MOD、CnV、OUTMASK以及FTM計(jì)數(shù)器來同步化1 軟件觸發(fā)僅通過使用MOD和CnV同步化,硬件觸發(fā)僅通過使用OUTMASK和FTM計(jì)數(shù)器同步2WAPDIS禁用寫保護(hù)0 寫保護(hù)允許 1 禁止寫保護(hù)1INIT初始化通道輸出寫0到INIT,可以根據(jù)OUTINIT寄存器的相應(yīng)位初始化通道輸出,寫1到INIT,無效。讀INIT總是為00FTMENFTM使能位0 只有TPM兼容寄存器可用,F(xiàn)TM專用寄存器不可用1 所有的寄存器都可用6.3.3 FTM模塊概要與編程要點(diǎn)本小節(jié)具體闡述FTM各個(gè)模塊的特征,由于版面有限,這里只列舉了常用的
29、幾個(gè)模塊。1.計(jì)數(shù)時(shí)鐘源與分頻FTM狀態(tài)和控制寄存器(FTMx_SC)的CLKS1:0位用于選擇FTM計(jì)數(shù)器的時(shí)鐘源,CLKS1:0=00表示沒有選擇任何時(shí)鐘,相當(dāng)于關(guān)閉FTM計(jì)數(shù)器,CLKS1:0=01表示系統(tǒng)時(shí)鐘源,CLKS1:0=10(固定頻率時(shí)鐘),CLKS1:0=11(外部時(shí)鐘)。MCU復(fù)位后,CLKS1:0=00,關(guān)閉FTM計(jì)數(shù)器。選擇的時(shí)鐘源的分頻因子由FTM狀態(tài)和控制寄存器(FTMx_SC)的PS2:0位 決定,PS2:0=000 (1分頻),PS2:0=001 (2分頻),PS2:0=010 (4分頻),PS2:0=011 (8分頻),PS2:0=100 (16分頻),PS2
30、:0=101 (32分頻)。2.計(jì)數(shù)器FTM有一個(gè)16位計(jì)數(shù)器,供通道使用,計(jì)數(shù)器的操作主要有向上計(jì)數(shù)與向上向下計(jì)數(shù)。向上計(jì)數(shù):當(dāng)FTM正交解碼控制和狀態(tài)寄存器(FTMx_QDCTRL)的正交解碼模式使能位QUADEN=0且FTM狀態(tài)和控制寄存器(FTMx_SC)的中央對齊PWM選擇位CPWMS=0時(shí)向上計(jì)數(shù),CNTIN定義了計(jì)數(shù)起始值,MOD定義了計(jì)數(shù)的最終值。如圖6-2所示,F(xiàn)TM計(jì)數(shù)器先加載CNTIN值,然后開始計(jì)數(shù),直到達(dá)到MOD值,然后計(jì)數(shù)器重新加載CNTIN值,重復(fù)以上 步驟。如果CNTIN=0x0000,F(xiàn)TM計(jì)數(shù)和TPM向上計(jì)數(shù)一樣,即向上無符號(hào)計(jì)數(shù),如果 CNTIN15=1,
31、FTM是向上有符號(hào)計(jì)數(shù),如果CNTIN (15) =0 且 CNTIN0x0000, FTM也是向上無符號(hào)計(jì)數(shù)。向上向下計(jì)數(shù):當(dāng)QUADEN=0且CPWMS=1時(shí),向上向下計(jì)數(shù)。CNTIN定義了計(jì)數(shù)起始值,MOD定義了計(jì)數(shù)的最終值。同向上計(jì)數(shù)一樣,F(xiàn)TM計(jì)數(shù)器先加載CNTIN值,然后開始計(jì)數(shù),直到達(dá)到MOD值,但是不同于向上計(jì)數(shù),此時(shí)計(jì)數(shù)器執(zhí)行減數(shù)操作,直到它回到CNTIN值,上下計(jì)數(shù)重新開始。FTM模塊除了以上操作外還可以有以下三個(gè)常用的模塊。輸入捕捉:輸入捕捉功能主要用來監(jiān)測外部的事件和輸入信號(hào)。當(dāng)外部事件發(fā)生或信號(hào)發(fā)生 變化時(shí),在指定的輸入捕捉引腳發(fā)生一個(gè)指定的沿跳變(由FTMx_CSC
32、寄存器的ELSnB和ELSnA域指定是上升沿還是下降沿,具體內(nèi)容參見本章閱讀資料)。定時(shí)器捕捉到特定的沿跳變后,會(huì)把計(jì)數(shù)寄存器當(dāng)前的值鎖存到通道寄存器。如果在輸入捕捉控制寄存器中設(shè)定允許輸入捕捉中斷,系統(tǒng)會(huì)產(chǎn)生一次輸入捕捉中斷,利用中斷處理軟件可以得到事件發(fā)生的時(shí)刻或信號(hào)發(fā)生變化 的時(shí)刻。輸出比較:輸出比較的功能是用程序的方法在規(guī)定的時(shí)刻輸出需要的電平,實(shí)現(xiàn)對外部電路 的控制。當(dāng)定時(shí)器的某一通道用做輸出比較功能時(shí),通道寄存器的值和計(jì)數(shù)寄存器的值每隔一定時(shí)間比較一次。當(dāng)兩個(gè)值相等時(shí),輸出比較模塊置定時(shí)器通道n狀態(tài)和控制寄存器(FTMx_CnSC)的CHnF位為1,并且在該通道的引腳上輸出預(yù)先規(guī)定
33、的電平。如果輸出比較中斷允許,還會(huì)產(chǎn)生一個(gè)中斷。PWM:脈寬調(diào)制器(Pulse Width Modulator,PWM)產(chǎn)生一個(gè)在高電平和低電平之間重復(fù)交替的輸出信號(hào),這個(gè)信號(hào)被稱為PWM信號(hào),也叫脈寬調(diào)制波。通過指定所需的時(shí)鐘周期和占空比來控制高電平和低電平的持續(xù)時(shí)間。通常定義占空比為信號(hào)處于高電平的時(shí)間(或時(shí)鐘周期數(shù)) 占整個(gè)信號(hào)周期的百分比,方波的占空比為50%。脈沖寬度是指脈沖處于高電平的時(shí)間;PWM 分為以下三類。(1)邊沿對齊PWM (Edge-Aligned PWM)。所有PWM信號(hào)的邊沿在周期的開始對齊,如圖6-3所示。EPWM周期period由MOD寄存器和CNTIN寄存器的
34、值決定(具體計(jì)算公式為MOD - CNTIN + 0x0001 ),脈沖寬度pulse width(占空比)由CnV寄存器和CNTIN寄存器的值決定(具體計(jì)算格式為CnV-CNTIN)。圖6-3 邊沿對齊PWM(2)中央對齊 PWM (Center-Aligned PWM)。如圖6-4所示,CPWM周期由2*(MOD-CNTIN)決定,脈沖寬度(占空比)由2(CnV-CNTIN)決定,MOD必須在0x0001到0x7FFF內(nèi)。圖6-4 中央對齊PWM(3)通道合并模式。通道n(一個(gè)偶數(shù)通道)和通道n+l(相鄰的奇數(shù)通道)合并到通道n輸出一路PWM信號(hào)。周期由(MOD-CNTIN+OxOOOl)
35、決定,PWM脈沖寬度(占空比)由(C(n+l)V-C(n)V)的絕對值決定,其中C(n)V為通道n的CV寄存器值。3.信號(hào)描述FTM模塊有六種用戶訪問信號(hào)線,具體描述見表6-1。表6-1 FTM用戶訪問信號(hào)線信 號(hào)描 述I/OEXTCLK外部時(shí)鐘,用于驅(qū)動(dòng)FTM計(jì)數(shù)器,外部時(shí)鐘信號(hào)不能超過系統(tǒng)時(shí)鐘頻率的1/4ICHnFTM通道n,n為70,每個(gè)通道都可被配置為輸入或者輸出,通道的方向由模式?jīng)Q定I/OFAULTj故障輸入j,j為30,如果FTMEN=1,F(xiàn)ALUTM1:00,則使能故障控制。FTM有4種故障輸入, FAULTnEN位使能故障輸入n,F(xiàn)FLTRnEN位使能故障輸入n濾波器,F(xiàn)FVA
36、L3:0位選抒每個(gè)故障輸入 的濾波器的值IPH A如果FTMEN=1且QUADEN=1,選擇正交解碼器模式,正交解碼器模式使用輸入信號(hào)相A和相B控 制FTM計(jì)數(shù)器的增加和減少。通過PHAFLTREN位使能相A輸入過濾器,且這個(gè)過濾器的值在FILTER0 寄存器的CH0FVAL3:0位定義IPHB正交解碼器B相輸入,控制FTM計(jì)數(shù)器增加或者減少的信號(hào)。通過PHBFLTREN位使能相B輸入過 濾器,且這個(gè)過濾器的值在FILTER0寄存器的CH1FVAL3:0位定義I6.3.3 FTM構(gòu)件設(shè)計(jì)及測試實(shí)例省略6.4 周期中斷定時(shí)器PIT6.4.1 PIT的基礎(chǔ)知識(shí)周期中斷時(shí)器模塊(Periodic I
37、nterrupt Timer,PIT)是一組可以用于產(chǎn)生中斷和觸發(fā)DMA通道的定時(shí)器。所有的中斷都是可屏蔽的,每個(gè)定時(shí)器都有獨(dú)立的溢出周期,此外,周期中斷定時(shí)器模塊沒有外部引腳。圖6-5為PIT模塊的結(jié)構(gòu)框圖。圖6-5 PIT模塊的結(jié)構(gòu)框圖6.4.2 PIT模塊寄存器在介紹可編程中斷定時(shí)器PIT模塊的編程方法之前,先簡要介紹用于PIT模塊的編程的幾個(gè)寄存器:PIT模塊控制寄存器(PIT_MCR),定時(shí)器加載值寄存器(PIT_LDVALn),當(dāng)前定時(shí)器值寄存器(PIT_CVALn),定時(shí)器控制寄存器(PIT_TCTRLn)和定時(shí)器標(biāo)志寄存器(PIT_TFLGn)。1)PIT模塊控制寄存器(PIT
38、_MCR)這個(gè)寄存器控制定時(shí)器時(shí)鐘是否使能和定時(shí)器是否運(yùn)行在調(diào)試模式。PIT_MCR域描述域描述31-2預(yù)留這個(gè)只讀位域是預(yù)留的,并且始終為0。1 MDIS模塊禁止0 使能PIT定時(shí)器時(shí)鐘。1 禁用PIT定時(shí)器時(shí)鐘。0 FRZ凍結(jié)0 在調(diào)試模式下定時(shí)器繼續(xù)運(yùn)行。1 在調(diào)試模式下定時(shí)器停止。2) 定時(shí)器加載值寄存器(PIT_LDVALn)這些寄存器選擇定時(shí)器中斷的溢出周期。PIT_LDVALn域描述域描述31-0TSV定時(shí)器初始值字段這些位設(shè)置定時(shí)器開始值。定時(shí)器將會(huì)倒計(jì)數(shù)直到為0,然后產(chǎn)生一個(gè)中斷后再加載這個(gè)寄存器的值。向這個(gè)寄存器寫入新值不會(huì)重啟定時(shí)器,相反在定時(shí)器到期后才會(huì)加載新值。為了取
39、消當(dāng)前周期,以新值開始一個(gè)定時(shí)器周期,則必須先禁止定時(shí)器再使能定時(shí)器。3) 當(dāng)前定時(shí)器值寄存器(PIT_CVALn)這些寄存器指示當(dāng)前定時(shí)器的位置。PIT_CVALn域描述域描述31-0TVL當(dāng)前定時(shí)器值如果使能了定時(shí)器,這些位就代表了當(dāng)前定時(shí)器的值。如果定時(shí)器被禁止了,不要使用這些位域的值,因?yàn)檫@些值是不可靠的。4) 定時(shí)器控制寄存器(PIT_TCTRLn)這些寄存器包括了每個(gè)定時(shí)器的控制位。PIT_TCTRLn域描述域描述31-2預(yù)留這個(gè)只讀位域是預(yù)留的,始終為0。1TIE定時(shí)器中斷使能位。0 來自定時(shí)器n的中斷請求被禁止1 不論TIF是否被設(shè)置,中斷都會(huì)被請求0TEN定時(shí)器使能位0 定時(shí)
40、器n禁止1 定時(shí)器n有效5) 定時(shí)器標(biāo)志寄存器(PIT_TFLGn)這些寄存器占有PIT中斷標(biāo)志。PIT_TFLGn域描述域描述31-1預(yù)留這個(gè)只讀位域是預(yù)留的,始終為0。0TIF定時(shí)器中斷標(biāo)志0 超時(shí)不產(chǎn)生定時(shí)器中斷。1 超時(shí)發(fā)生定時(shí)器中斷。6.4.3 PIT模塊概要與編程要點(diǎn)1.定時(shí)器如圖6-5所示,每個(gè)定時(shí)器都先從PIT寄存器中加載初始值,然后遞減計(jì)數(shù)直到為0,接著 再次加載初始值,重復(fù)以上步驟。每當(dāng)定時(shí)器遞減計(jì)數(shù)到0時(shí),將產(chǎn)生一個(gè)脈沖觸發(fā)并且置中斷標(biāo)志位。通過設(shè)置定時(shí)器控制寄存器TCTRL (Timer Control Register)的屮斷使能標(biāo)志位TIE位,可以開啟或屏蔽定時(shí)器通
41、道中斷。只有在舊中斷被清除后,新中斷才會(huì)產(chǎn)生。如果需要,可以通過當(dāng)前定時(shí)器值寄存器CVAL讀取定時(shí)器的當(dāng)前計(jì)數(shù)器的值。重啟計(jì)數(shù)周期時(shí),先關(guān)閉定時(shí)器,然后置位TCTRL的定時(shí)器使能標(biāo)志位TEN開啟定時(shí)器,見圖6-6。圖6-6 停止和開始定時(shí)器如果要修改正在運(yùn)行的定時(shí)器的計(jì)數(shù)周期,可以先關(guān)閉定時(shí)器,設(shè)置一個(gè)新的加載值,然后開啟定時(shí)器來修改,見圖6-7。圖6-7 修改運(yùn)行著的定時(shí)器周期此外,也可以不用重啟定時(shí)器,而直接向定時(shí)器加載值寄存器LDVAL寫入新值來改變計(jì)數(shù)周期。這個(gè)值將會(huì)在下一次觸發(fā)事件后被加載,見圖6-8。圖6-8 動(dòng)態(tài)設(shè)置新的加載值2.調(diào)試模式在調(diào)試模式中,通過置位PIT控制寄存器中的
42、FRZ位可以凍結(jié)定時(shí)器。這是為了在軟件開發(fā)中,允許開發(fā)者停止定時(shí)器,查看系統(tǒng)的當(dāng)前狀態(tài),然后繼續(xù)操作。3.中斷所有的定時(shí)器都支持中斷。可以通過設(shè)置TIE位來使能定時(shí)器中斷。在相關(guān)的定時(shí)器溢出中斷發(fā)生時(shí)將置位定時(shí)器中斷標(biāo)志(TIF)。注意,中斷處理除了要開定時(shí)器中斷外還需要開對應(yīng)的通道中斷。6.4.3 PIT構(gòu)件設(shè)計(jì)及測試實(shí)例省略6.5 低功耗定時(shí)器LPTMR省略6.6 載波調(diào)制發(fā)射器(CMT)省略6.7 實(shí)時(shí)時(shí)鐘6.7.1 RTC基礎(chǔ)知識(shí)1. RTC簡介實(shí)時(shí)時(shí)鐘(Real Time Clock, RTC)模塊是一個(gè)獨(dú)立供電的模塊,在芯片掉電時(shí)由備用電源(VBAT)供電,確保RTC計(jì)時(shí)器正常運(yùn)行
43、,保持RTC寄存器狀態(tài)。RTC模塊主要包含一個(gè)外部晶體振蕩器、一個(gè)POR(Power-On Reset)塊、RTC計(jì)時(shí)器以及自身的軟件復(fù)位控制位。外部晶體振蕩器為RTC計(jì)時(shí)器或其他外設(shè)提供32.768 kHz的時(shí)鐘;POR塊在RTC模塊上電時(shí)產(chǎn)生一個(gè)上電復(fù)位信號(hào),將所有的RTC寄存器初始化為默認(rèn)狀態(tài);RTC計(jì)時(shí)器由一個(gè)具有報(bào)警功能的32位秒寄存器和一個(gè)具有補(bǔ)償功能的16位預(yù)分頻寄存器組成;RTC自身的軟件復(fù)位控制位,也會(huì)初始化所有的RTC寄存器。注意,在VBAT掉電或POR中斷時(shí),不允許訪問RTC的任何寄存器(除了控制寄存器),否則將產(chǎn)生總線錯(cuò)誤。2.操作模式RTC模塊擁有兩種操作模式,即系統(tǒng)
44、掉電和系統(tǒng)上電。在系統(tǒng)掉電期間,RTC由備用電源供電,與其他模塊電氣隔離,此時(shí)如果計(jì)時(shí)器使能,則繼 續(xù)計(jì)數(shù),但是在此期間不可訪問RTC寄存器。在系統(tǒng)上電期間,RTC仍然由備用電源供電。在此期間可訪問RTC的所有寄存器,并且可 以為其他模塊提供32.768 kHz的時(shí)鐘。3.信號(hào)描述RTC模塊共有三根信號(hào)線,其中一個(gè)作為輸入,兩個(gè)作為輸出,具體描述見表6-3。表6-3 RTC信號(hào)描述信 號(hào)描 述I/OEXTAL3232.768 kHz的振蕩器輸入IXTAL3232.768 kHz的振蕩器輸出ORTCCLKOUT1 Hz方波輸出O6.7.2 RTC模塊寄存器介紹 RTC的寄存器絕對地址(十六進(jìn)制)
45、寄存器名稱訪問4003_D000RTC定時(shí)器秒寄存器(RTC_TSR)R/W4003_D004RTC定時(shí)器預(yù)分頻寄存器(RTC_TPR)R/W4003_D008RTC定時(shí)器報(bào)警寄存器(RTC_TAR)R/W4003_D00CRTC定時(shí)器補(bǔ)償寄存器(RTC_TCR)R/W4003_D010RTC控制寄存器(RTC_CR)R/W4003_D014RTC狀態(tài)寄存器(RTC_SR)R/W4003_D018RTC鎖寄存器(RTC_LR)R/W4003_D01CRTC中斷使能寄存器(RTC_IER)R/W4003_D800RTC寫訪問寄存器(RTC_WAR)R/W4003_D804RTC讀訪問寄存器(RT
46、C_RAR)R/W1)RTC定時(shí)器秒寄存器(RTC_TSR)域描述31-0 TSR如果使能計(jì)數(shù)器,只允許讀TSR寄存器,此時(shí)只有不置位SRTOF或SRTIF,計(jì)時(shí)器才能執(zhí)行加操作,如果置位SRTOF或SRTIF時(shí),計(jì)數(shù)器為零。如果禁用計(jì)數(shù)器,允許讀寫TSR寄存器,寫TSR寄存器將清零SRTOF或SRTIF位,不建議向TSR寄存器寫0。 2) RTC定時(shí)器預(yù)分頻器寄存器(RTC_TPR)域描述 31-16預(yù)留保留位,始終為零 15-0TPR如果使能計(jì)數(shù)器,只允許讀訪問TPR寄存器,計(jì)數(shù)器每隔32.768kHz個(gè)時(shí)鐘周期加1,如果置位SRTOF 或SRTIFTPR,計(jì)數(shù)器清零。 如果禁用計(jì)數(shù)器,允
47、許讀寫TPR寄存器。3) RTC定時(shí)器報(bào)警寄存器(RTC_TAR)域描述 31-0 TAR如果使能計(jì)時(shí)器,不管TARTAR是否等于TSRTSR都會(huì)置位SRTAF,寫 TAR 將清除 SRTAF。 4)RTC定時(shí)器補(bǔ)償寄存器(RTC_TCR)域描述31-24CIC補(bǔ)償間隔計(jì)數(shù)器,存放補(bǔ)償間隔計(jì)數(shù)器的當(dāng)前值 23-16TCV定時(shí)器補(bǔ)償值,存放秒時(shí)間間隔補(bǔ)償邏輯使用的當(dāng)前值15-8CIR補(bǔ)償間隔寄存器,用來配置補(bǔ)償間隔為1256 7-0 TCR定時(shí)器補(bǔ)償寄存器配置32.768kHz時(shí)鐘周期的個(gè)數(shù)80h 每隔32896個(gè)時(shí)鐘周期,定時(shí)器預(yù)分頻寄存器溢出。 FFh 每隔32769個(gè)時(shí)鐘周期,定時(shí)器預(yù)分頻
48、寄存器溢出。00h 每隔32768個(gè)時(shí)鐘周期,定時(shí)器預(yù)分頻寄存器溢出。01h 每隔32767個(gè)時(shí)鐘周期,定時(shí)器預(yù)分頻寄存器溢出。 7Fh 每隔32641個(gè)時(shí)鐘周期,定時(shí)器預(yù)分頻寄存器溢出。5) RTC控制寄存器(RTC_CR)域描述31-15預(yù)留只讀,始終為零14預(yù)留只允許寫零,不允許讀13-10分別為2pF、4pF、8pF、16pF振蕩器的負(fù)載配置位,為0時(shí),禁用負(fù)載,為1時(shí),使能額外的負(fù)載9CLKO時(shí)鐘輸出0 32kHz的時(shí)鐘輸出到其他外設(shè) 1 32kHz的時(shí)鐘不輸出到其他外設(shè)8OSCE32.768kHz振蕩器使能位0 禁用32.768kHz振蕩器 1 使能32.768kHz振蕩器7-4預(yù)
49、留只讀,始終為零3UM模式更新位0 在狀態(tài)寄存器被鎖時(shí),允許寫SRTCE寄存器。 1 在狀態(tài)寄存器被鎖,并且置位SRTIF 或SRTOF,或者SRTCE清零時(shí),仍然可以寫SRTCE寄存器。2SUP監(jiān)督訪問0 不支持非監(jiān)督寫操作模式,否則將會(huì)產(chǎn)生總線錯(cuò)誤 1 支持非監(jiān)督寫操作模式1WPE喚醒引腳使能位0 禁用喚醒引腳 1 使能喚醒引腳,如果RTC中斷或者芯片掉電,那么喚醒引腳發(fā)生中斷0SWR軟件復(fù)位0 不起作用 1 除了SWR位、RTC_WAR寄存器與RTC_RAR寄存器外,復(fù)位所有的RTC寄存器。6) RTC狀態(tài)寄存器(RTC_SR)域描述31-5預(yù)留 只讀,始終為零4 TCE計(jì)數(shù)器使能位0
50、禁用計(jì)數(shù)器 1 使能計(jì)數(shù)器3預(yù)留 只讀,始終為零2 TAF定時(shí)器報(bào)警標(biāo)志位0 定時(shí)器不報(bào)警 1 定時(shí)器報(bào)警1 TOF定時(shí)器溢出標(biāo)志0 定時(shí)器不會(huì)溢出 1 定時(shí)器溢出,計(jì)數(shù)器清零0 TIF定時(shí)器無效標(biāo)志0 定時(shí)器有效 1 定時(shí)器無效,計(jì)數(shù)器清零7) RTC鎖寄存器(RTC_LR)域描述:位317,位21預(yù)留且只允許讀,除位7、位20為1外,其余都為0。位63分別為URL(鎖定寄存器加鎖位)、SRl(狀態(tài)寄存器加鎖位)、CRL(控制寄存器加鎖位)與TCL(定時(shí)器補(bǔ)償寄存器加鎖位),為0時(shí),相應(yīng)的寄存器加鎖,不允許對其進(jìn)行寫操作,為1時(shí),允許對其進(jìn)行寫操作。8)RTC中斷使能寄存器(RTC_IER)
51、域描述:位331預(yù)留用,位02,即TAIE、TOIE、TIIE,分別為定時(shí)器報(bào)警中斷使能位、定時(shí)器溢出中斷使位、定時(shí)器無效中斷使能位,都是為0時(shí)禁用中斷,為1時(shí)使能中斷。9)RTC寫訪問寄存器(RTC_WAR)域描述:位318為預(yù)留,只讀且始終為0。位70,即IERW、LRW、SRW、CRW、TCRW、TARW、TPRW、TSRW,分別為中斷使能寄存器的寫操作位、加鎖寄存器的寫操作位、狀態(tài)寄存器的寫操作位、控制寄存器的寫操作位、定時(shí)器補(bǔ)償寄存器的寫操作位、報(bào)警寄存器的寫操作位、定時(shí)器預(yù)分頻寄存器的寫操作位、定時(shí)器秒寄存器的寫操作位,當(dāng)它們?yōu)?時(shí),不能進(jìn)行寫操作,為1時(shí),可以進(jìn)行寫操作。10)
52、RTC讀訪問寄存器(RTC_RAR)域描述:位318為預(yù)留,只讀且始終為0。位70,即IERR、LRR、SRR、CRR、TCRR、TARR、TPRR、TSRR,分別為中斷使能寄存器的讀操作位、加鎖寄存器的讀操作位、狀態(tài)寄存器的讀操作位、控制寄存器的讀操作位、定時(shí)器補(bǔ)償寄存器的讀操作位、報(bào)警寄存器的讀操作位、定時(shí)器預(yù)分頻寄存器的讀操作位、定時(shí)器秒寄存器的讀操作位,當(dāng)它們?yōu)?時(shí),不能對寄存器進(jìn)行讀操作,為1時(shí),可以進(jìn)行讀操作。6.7.3 RTC模塊概要與編程要點(diǎn)1.電源、時(shí)鐘和復(fù)位RTC模塊是一個(gè)獨(dú)立供電的模塊,在芯片掉電時(shí)由備用電池(VBAT)供電,確保RTC寄存 器保持狀態(tài)與RTC計(jì)時(shí)器正常運(yùn)
53、行。RTC模塊的時(shí)鐘頻率為32.768 kHz,該時(shí)鐘是由一個(gè)外部晶體振蕩器提供的。每當(dāng)RTC模塊上電時(shí),其自身的模擬POR塊產(chǎn)生一個(gè)上電復(fù)位信號(hào),將所有的RTC寄存器初始化為默認(rèn)狀態(tài);RTC自身的軟件復(fù)位控制位,也會(huì)初始化所有的RTC寄存器。2.RTC振蕩器RTC振蕩器為RTC提供時(shí)鐘源,其結(jié)構(gòu)圖如6-11所示。其中EXTAL32為振蕩器輸入信號(hào),XTAL32為振蕩器輸出信號(hào)。該模塊包含一個(gè)放大器(gm),為RTC振蕩器提供負(fù)電阻。振幅探測器(Amplitude Detector)控制放大器的增益,達(dá)到優(yōu)化功耗的目的。使用施密特觸發(fā)器將振蕩 器產(chǎn)生的正弦波轉(zhuǎn)化為脈沖時(shí)鐘輸出,作為RTC的參考時(shí)鐘。在EXTAL32與XTAL32之間連接一個(gè)約100的內(nèi)部反饋電阻(Rf)。另外,在RTC 振蕩器中還有兩個(gè)可變電容C1與C2 (變化范圍 為030pF), 可以作為振蕩器的負(fù)載電容使用。注意,RTC振蕩器沒有復(fù)位狀態(tài),也不會(huì)產(chǎn)生任何中斷。圖6-11 RTC振蕩器框圖3.計(jì)時(shí)
溫馨提示
- 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)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《園林樹木》課程標(biāo)準(zhǔn)
- 2BizBoxERP用戶基礎(chǔ)手冊
- 三角形的翻折課件
- 第1單元 古代亞非文明(高頻選擇題50題)(原卷版)
- 2024年農(nóng)業(yè)和農(nóng)村檔案工作總結(jié)
- 七年級下《保護(hù)野生動(dòng)物》蘇教版-課件
- 農(nóng)業(yè)科創(chuàng):研發(fā)力量展示
- 機(jī)場服務(wù)行業(yè)銷售工作總結(jié)
- 資金借貸合同個(gè)人醫(yī)療保健費(fèi)用貸款支出租賃保險(xiǎn)三篇
- 初一生物教學(xué)工作總結(jié)實(shí)踐探索培養(yǎng)動(dòng)手能力
- 員工月度績效考核管理辦法
- 2023年云南保山電力股份有限公司招聘筆試題庫及答案解析
- GB/T 41904-2022信息技術(shù)自動(dòng)化基礎(chǔ)設(shè)施管理(AIM)系統(tǒng)要求、數(shù)據(jù)交換及應(yīng)用
- GB/T 41908-2022人類糞便樣本采集與處理
- GB/T 3745.1-1983卡套式三通管接頭
- GB/T 26003-2010無負(fù)壓管網(wǎng)增壓穩(wěn)流給水設(shè)備
- 信息系統(tǒng)運(yùn)維服務(wù)方案
- 簡支梁、懸臂梁撓度計(jì)算程序(自動(dòng)版)
- DB44∕T 2149-2018 森林資源規(guī)劃設(shè)計(jì)調(diào)查技術(shù)規(guī)程
- 統(tǒng)編版小學(xué)四年級語文上冊五六單元測試卷(附答案)
- 商票保貼協(xié)議
評論
0/150
提交評論