


全文預覽已結束
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
STM32定時器與PWM快速使用入門要求:在萬利的開發(fā)板EK-STM32F上產(chǎn)生周期為1秒,占空比分別為5010的PWM并且點亮板上的LD1,LD2燈閃爍。做法很簡單。STM32的PWM是由定時器來產(chǎn)生的??梢钥闯?。定時器3的通道1至4在GPIO端口的映像。如果是完全映射。各通道的連接引腳如下:CH1=PC6,CH2=PC7,CH3=PC8,CH4=PC9這樣,剛好與板上的LD1,LD2燈符合,因為LD1連接到PC7,LD2連接到PC6引腳。關于PWM一些知識.STM32的TIMx是TIMx_ARR寄存器確定頻率(周期)、由TIMx_CCRx寄存器確定占空比的信號。使用定時器3。而TIM2、3、4的時鐘源是APB1即是PCLK1(APB1對應PCLK1)PCLK1=APB1=HCLK/2=SYSCLK/2=36MHZ(36,000,000HZ)但是注意:倍頻器會自動倍2,即是【72MHZ】!代碼如下:voidSTM32_PWM_GPIO_Configuration(void)/11:完全映像STM32_Afio_Regs->mapr.bit.TIM3_REMAP=3;/LD1=P7LD2=PC6/*GPIOAConfiguration:(PC6PC7)TIM3channel1and2asalternatefunctionpush-pull*/STM32_Gpioc_Regs->crl.bit.CNF6=Output_Af_push_pull;/PC.06復用功能推挽輸出模式STM32_Gpioc_Regs->crl.bit.MODE6=Output_Mode_50mhz;/PC.06輸出模式,最大速度50MHzSTM32_Gpioc_Regs->crl.bit.CNF7=Output_Af_push_pull;/PC.07復用功能推挽輸出模式STM32_Gpioc_Regs->crl.bit.MODE7=Output_Mode_50mhz;/PC.07輸出模式,最大速度50MHz/endsubvoidSTM32_TIM3_Configuration(void)/TIM_DeInit(TIM3);/復位TIM3定時器STM32_Rcc_Regs->apb1rstr.all|=RCC_TIM3RST;STM32_Rcc_Regs->apb1rstr.all&=RCC_TIM3RST;/時鐘使能STM32_Rcc_Regs->apb1enr.all|=RCC_TIM3EN;/*TIM3baseconfiguration*/TIM_TimeBaseStructure.TIM_Period=9999;/TIM_TimeBaseStructure.TIM_Prescaler=7200;/TIM_TimeBaseStructure.TIM_ClockDivision=0x0;/TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;/TIM_TimeBaseInit(TIM3,&TIM_TimeBaseStructure);STM32_Tim3_Regs->arr.all=9999;/定時周期,PWM頻率!10毫秒*100=1秒STM32_Tim3_Regs->psc.all=720;/7200分頻72MHZ/72,0072,000,000/72,00=10,000STM32_Tim3_Regs->cr1.bit.CKD=0;/時鐘分頻因子STM32_Tim3_Regs->cr1.bit.DIR=0;/0:計數(shù)器向上計數(shù)/*ClearTIM3updatependingflag清除TIM3溢出中斷標志*/TIM_ClearFlag(TIM3,TIM_FLAG_Update);STM32_Tim3_Regs->sr.bit.UIF=0;/更新中斷標記由軟件清0,例如當上溢或下溢時,軟件對CNT重新初始化/*PWM1Modeconfiguration:Channel1Channel2*/TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM1;/TIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable;/TIM_OCInitStructure.TIM_Pulse=CCR1_Val;/TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;/TIM_OC1Init(TIM3,&TIM_OCInitStructure);/timer3的通道1是PC6引腳,AFIO完全映射STM32_Tim3_Regs->ccer.bit.CC1P=0;/輸入/捕獲1輸出極性0:OC1高電平有效1:OC1低電平有效STM32_Tim3_Regs->ccer.bit.CC1E=1;/輸入/捕獲1輸出使能1:開啟OC1信號輸出到對應的輸出引腳。STM32_Tim3_Regs->ccer.bit.CC2P=0;/輸入/捕獲2輸出極性0:OC1高電平有效1:OC1低電平有效STM32_Tim3_Regs->ccer.bit.CC2E=1;/輸入/捕獲2輸出使能1:開啟OC2信號輸出到對應的輸出引腳。STM32_Tim3_Regs->ccmr1.ou_bit.CC1S=0;/00:輸出比較1通道1被配置為輸出STM32_Tim3_Regs->ccmr1.ou_bit.CC2S=0;/00:輸出比較2通道2被配置為輸出STM32_Tim3_Regs->ccmr1.ou_bit.OC1M=6;/0110:PWM模式1STM32_Tim3_Regs->ccmr1.ou_bit.OC2M=6;/0110:PWM模式1STM32_Tim3_Regs->ccr1.all=5000;/占空比50STM32_Tim3_Regs->ccr2.all=1000;/10/TIM_OC1PreloadConfig(TIM3,TIM_OCPreload_Enable);STM32_Tim3_Regs->ccmr1.ou_bit.OC1PE=1;/OC1PE:輸出比較1預裝載使能1:開啟TIMx_CCR1寄存器的預裝載功能STM32_Tim3_Regs->ccmr1.ou_bit.OC2PE=1;/OC1PE:輸出比較2預裝載使能1:開啟TIMx_CCR2寄存器的預裝載功能/TIM_ARRPreloadConfig(TIM3,ENABLE);STM32_Tim3_Regs->cr1.bit.ARPE=1;/7自動重裝載預裝載允許位0:TIM1_ARR寄存器沒有緩沖/TIM3enablecounter/TIM_Cmd(TIM3,ENABL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年榆林市公共交通總公司招聘(57人)筆試參考題庫附帶答案詳解
- 紡織品設計師證書考試評估體系試題及答案
- 幼兒園聘用幼兒教師臨時用工勞動合同書
- 家電營銷策劃合同協(xié)議書
- 中小學送餐合同協(xié)議書
- 合股協(xié)議書合同
- 個人保安員合同協(xié)議書
- 分錢合同協(xié)議書
- 合同協(xié)議書合同模板
- 合同協(xié)議書定金
- 2025統(tǒng)編版語文六年級下冊第二單元解析+任務目標+大單元教學設計
- 災后救援與重建
- 上海第二工業(yè)大學《高等數(shù)學B(上)》2023-2024學年第二學期期末試卷
- 2025屆上海市(春秋考)高考英語考綱詞匯對照表清單
- 醫(yī)院臨床輸血工作總結
- AIGC背景下視覺傳達專業(yè)的教學模式淺談
- 2025年黑龍江齊齊哈爾市網(wǎng)絡輿情中心招聘5人歷年高頻重點提升(共500題)附帶答案詳解
- 區(qū)域代理方案(3篇)
- 八年級期中英語試卷分析及整改措施
- 2025年新勞動合同范本
- 養(yǎng)老院藝術療愈活動方案
評論
0/150
提交評論