05-stm32f4通用定時(shí)器詳細(xì)講解_第1頁
已閱讀1頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、STM32F4系列共有14個(gè)定時(shí)器,功能很強(qiáng)大。14個(gè)定時(shí)器分別為:2個(gè)高級定時(shí)器:Timer1和Timer810個(gè)通用定時(shí)器:Timer2~timer5和timer9~timer142個(gè)基本定時(shí)器:timer6和timer7本篇欲以通用定時(shí)器timer3為例,詳細(xì)介紹定時(shí)器的各個(gè)方面,并對其PWM功能做徹底的探討。Timer3是一個(gè)16位的定時(shí)器,有四個(gè)獨(dú)立通道,分別對應(yīng)著PA6PA7PB0PB1主要功能是:1輸入捕獲——測量脈沖長度

2、。2輸出波形——PWM輸出和單脈沖輸出。Timer3有4個(gè)時(shí)鐘源:1:內(nèi)部時(shí)鐘(CK_INT),來自RCC的TIMxCLK2:外部時(shí)鐘模式1:外部輸入TI1FP1與TI2FP23:外部時(shí)鐘模式2:外部觸發(fā)輸入TIMx_ETR,僅適用于TIM2、TIM3、TIM4,TIM3,對應(yīng)著PD2引腳4:內(nèi)部觸發(fā)輸入:一個(gè)定時(shí)器觸發(fā)另一個(gè)定時(shí)器。時(shí)鐘源可以通過TIMx_SMCR相關(guān)位進(jìn)行設(shè)置。這里我們使用內(nèi)部時(shí)鐘。SYSCLK(最高168MHz)A

3、HB_PrescalerAPBx_Prescaler1,2,..512HCLK124..APB1APB2APB1APB2定時(shí)器時(shí)鐘1APBx_precaler=12APBx_precaler!=1定時(shí)器掛在高速外設(shè)時(shí)鐘APB1或低速外設(shè)時(shí)鐘APB2上,時(shí)鐘不超過內(nèi)部高速時(shí)鐘HCLK,故當(dāng)APBx_Prescaler不為1時(shí),定時(shí)器時(shí)鐘為其2倍,當(dāng)為1時(shí),為了不超過HCLK,定時(shí)器時(shí)鐘等于HCLK。例如:我們一般配置系統(tǒng)時(shí)鐘SYSCLK為

4、168MHz,內(nèi)部高速時(shí)鐘AHB=168Mhz,APB1欲分頻為4,(因?yàn)锳PB1最高時(shí)鐘為42Mhz),那么掛在APB1總線上的timer3時(shí)鐘為84Mhz?!禨TM32F4xx中文參考手冊》的424~443頁列出與通用定時(shí)器相關(guān)的寄存器一共20個(gè),以下列出與Timer3相關(guān)的寄存器及重要寄存器的簡單介紹。1TIM3控制寄存器1(TIM3_CR1)這里以向上計(jì)數(shù)為例,即計(jì)數(shù)器TIM3_CNT向上計(jì)數(shù),當(dāng)達(dá)到TIM3_ARR所設(shè)定的值時(shí)

5、,歸零重新計(jì)數(shù),若使能了更新中斷,則在TIM3_CNT歸零時(shí),進(jìn)入中斷。進(jìn)入中斷的時(shí)間為(TIM3_ARR1)個(gè)計(jì)時(shí)器周期而計(jì)時(shí)器單元時(shí)鐘是由定時(shí)器時(shí)鐘分頻得到,每(CK_PSC1)個(gè)定時(shí)器周期計(jì)數(shù)一次。定時(shí)器時(shí)鐘上文已經(jīng)講了,由于Timer3掛在APB1總線上故Timer3進(jìn)入中斷的周期為(CK_PSC1)(TIM3_ARR1)84000000秒頻率為84000000[(CK_PSC1)(TIM3_ARR1)]Hz利用官方庫函數(shù)實(shí)現(xiàn)每

6、500ms進(jìn)入中斷,改變LED燈的電平,程序如下1打開時(shí)鐘,Timer3掛在APB1上,所以命令開啟時(shí)鐘。RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3ENABLE)使能TIM3時(shí)鐘2時(shí)鐘Timer3的配置。TIM_TimeBaseInitStructure.TIM_Period=arr自動(dòng)重裝載值TIM_TimeBaseInitStructure.TIM_Prescaler=psc定時(shí)器分頻TIM

7、_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_Up向上計(jì)數(shù)模式TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1TIM_TimeBaseInit(TIM3初始化TIM33使能中斷TIM_ITConfig(TIM3TIM_IT_UpdateENABLE)允許定時(shí)器3更新中斷。4打開Timer3。TIM_Cmd(TI

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論