下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、調(diào)試芯片:STM32F103C8T6外部晶振:8MHz功能介紹:使用Timer3實(shí)現(xiàn)兩路(可四路)PWM波形的輸出代碼如下: 初始化:系統(tǒng)時(shí)鐘初始化,GPIO端口初始化,Timer初始化系統(tǒng)時(shí)鐘初始化:1. /* 配置系統(tǒng)時(shí)鐘為72M */ 2. SystemInit(); GPIO端口初始化:1. /*2. * 函數(shù)名:void GPIO_Config(void) 3. * 描述 :配置復(fù)用輸出PWM時(shí)用到的I/O 4.
2、;* 輸入 :無(wú) 5. * 輸出 :無(wú) 6. * 調(diào)用 :main()調(diào)用 7. */ 8. void GPIO_Config(void) 9. 10. GPIO_InitTypeDef GPIO_InitStructure; 11. 12. /* GPIOA and GP
3、IOB clock enable */ 13. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); 14. 15. /*GPIOA Configuration: TIM3 channel 1 and 2 as alternate function push-pull */ 16.
4、;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; 17. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; / 復(fù)用推挽輸出 18. GPIO_InitStructure.GPIO_Speed =
5、60;GPIO_Speed_50MHz; 19. GPIO_Init(GPIOA, &GPIO_InitStructure); 20. Timer初始化:1. /* 2. * 函數(shù)名:void TIM3_Config(void) 3. * 描述 :配置TIM3輸出的PWM信號(hào)的模式 4. * CH1:輸出 T=2.
6、5ms(f=1/2.5ms=400Hz) D=0.6的PWM波(高電平在前,低電平在后) 5. * CH2:輸出 T=2.5ms(f=1/2.5ms=400Hz) D=0.4的PWM波(高電平在后,低電平在前) 6. * 步驟一:通過(guò)T和TIMxCLK的時(shí)鐘源確定TIM_Period和TIM_Prescaler 7. *
7、60; T=(TIM_Period+1)*(TIM_Prescaler+1)/TIMxCLK=2.5ms 8. * 因?yàn)?#160;TIM_Period<65535,所以 TIM_Prescaler>1,即 TIM_Prescaler=2 9. *
8、160; 所以 TIM_Period=59999=0xEA5F 10. * 步驟二:根據(jù)TIM_Period的值,高低電平的先后D,確定CCR和TIM_OCPolarity 11. * CH1:因?yàn)镈=0.6,先高后低; 12. *
9、; 所以CCR1=(TIM_Period+1)* D=36000;TIM_OCPolarity=TIM_OCPolarity_High 13. * CH2:因?yàn)镈=0.4,先高后低; 14. *
10、0; 所以CCR1=(TIM_Period+1)* (1-D)=36000;TIM_OCPolarity=TIM_OCPolarity_Low 15. * 步驟三:基礎(chǔ)寄存器初始化 16. * 步驟四:通道寄存器初始化 17. * 步驟五:使能TIM3重載
11、寄存器ARR 18. * 步驟六:使能TIM3 19. * 輸入 :無(wú) 20. * 輸出 :無(wú) 21. * 調(diào)用 :main()調(diào)用 22. */ 23. void TIM3_Config(void) 24.
12、 25. TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; 26. TIM_OCInitTypeDef TIM_OCInitStructure; 27. /* PWM信號(hào)電平跳變值 */ 28. u16 CCR1=
13、 36000; 29. u16 CCR2= 36000; 30. /*PCLK1經(jīng)過(guò)2倍頻后作為T(mén)IM3的時(shí)鐘源等于72MHz*/ 31. RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);
14、; 32. /* Time base configuration */
15、 33. TIM_TimeBaseStructure.TIM_Period =0xEA5F; 34. TIM_TimeBaseStructure.TIM_Prescaler = 2;
16、0; /設(shè)置預(yù)分頻:預(yù)分頻=2,即為72/3=24MHz 35. TIM_TimeBaseStructure.TIM_ClockDivision = 0;
17、; /設(shè)置時(shí)鐘分頻系數(shù):不分頻 36. TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
18、60; /向上計(jì)數(shù)溢出模式 37. TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); 38. /* PWM1 Mode configuration: Channel1 */ 39.
19、 TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; /配置為PWM模式1 40. TIM_OCInitStructu
20、re.TIM_OutputState = TIM_OutputState_Enable; 41. TIM_OCInitStructure.TIM_Pulse = CCR1;
21、60; /設(shè)置跳變值,當(dāng)計(jì)數(shù)器計(jì)數(shù)到這個(gè)值時(shí),電平發(fā)生跳變 42. TIM_OCInitStructure.TIM_OCPolarity =TIM_OCPolarity_High;
22、60; /當(dāng)定時(shí)器計(jì)數(shù)值小于CCR1時(shí)為高電平 43. TIM_OC1Init(TIM3, &TIM_OCInitStructure);
23、60; /使能通道1 44. TIM_OC1PreloadConfig(TIM3, TIM_OCPreload_Enable); 45. /*
24、;PWM1 Mode configuration: Channel2 */ 46. TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; 47. TIM_OCInitStructure.TIM_Pulse = CCR2;
25、60; /設(shè)置通道2的電平跳變值,輸出另外一個(gè)占空比的PWM 48. TIM_OCInitStructure.TIM_OCPolarity =
26、0;TIM_OCPolarity_Low; /當(dāng)定時(shí)器計(jì)數(shù)值小于CCR2時(shí)為低電平 49. TIM_OC2Init(TIM3, &TIM_OCInitStructure);
27、60; /使能通道2 50. TIM_OC2PreloadConfig(TIM3, TIM_OCPreload_Enable); 51. T
28、IM_ARRPreloadConfig(TIM3, ENABLE); /使能TIM3重載寄存器ARR 52. /* TIM3 enable counter */ 53. TIM_Cmd(TIM3, ENABLE);
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖南省多校聯(lián)考2024-2025學(xué)年高二上學(xué)期12月聯(lián)考政治試題(含答案)
- 《解析工傷保險(xiǎn)》課件
- 孕期屁股疼的健康宣教
- 孕期肚臍發(fā)黑的健康宣教
- 分泌性中耳炎的健康宣教
- 絲狀角膜病變的臨床護(hù)理
- 羊水過(guò)多的健康宣教
- 星跡步態(tài)的健康宣教
- 腺垂體功能減退癥的臨床護(hù)理
- 中耳癌的健康宣教
- 電氣專(zhuān)業(yè)述職報(bào)告
- 腰椎病的中醫(yī)護(hù)理查房
- 《紙飛機(jī)》課件:讓飛行成為教學(xué)助手
- 2024年湖南省公務(wù)員考試《行測(cè)》真題及答案解析
- 浙江省杭州市2023-2024學(xué)年高二上學(xué)期期末考試歷史試題 含解析
- 成都錦城學(xué)院《操作系統(tǒng)與nux管理》2022-2023學(xué)年期末試卷
- 《弧弦圓心角》說(shuō)課稿課件
- 中職班級(jí)建設(shè)三年規(guī)劃方案
- 2024年中級(jí)安全工程師《(建筑施工)安全生產(chǎn)專(zhuān)業(yè)實(shí)務(wù)》考試題庫(kù)(含答案)
- 弘揚(yáng)抗戰(zhàn)精神課程設(shè)計(jì)
- 康復(fù)護(hù)理完整版
評(píng)論
0/150
提交評(píng)論