久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6211|回復: 1
收起左側

STM32學習(設置TIM4輸出4路 pwm J-LINK仿真驗證)源碼與教程

[復制鏈接]
ID:81424 發表于 2018-11-26 13:14 | 顯示全部樓層 |閱讀模式
STM32F103C8T6:
stm32的pwm輸出只要設置好在主循環前調用一次即可, 對用的IO就可以持續的輸出PWM
TIM4配置PWM過程程序:
A.png


J-LINK仿真配置

1. 選擇“ Options for Target” 選項

1.png

2. 在“ Debug” 中選擇“Use Simulator" 注意下面的配置
2.png

3. 配置好編譯下
3.png



4.  選擇Debug模式調試
4.png

5. 進入Debug模式后選擇
5.png
6. 配置pwm輸出引腳
6.png

7.png



8.png

配置好輸出引腳直接”close“掉

7. 開始仿真運行

9.png


0.png


貼一下程序記錄下:
  1. /*
  2. //TIM4 CH1 PWM 輸出設置
  3. //PWM 輸出初始化
  4. //arr:自動重裝值
  5. //psc:時鐘預分頻數
  6. STM32F103C8T6
  7. PB6 - TIM4_CH1
  8. PB7 - TIM4_CH2
  9. PB8 - TIM4_CH3
  10. PB9 - TIM4_CH4
  11. */
  12. void Tim4_PWM_Init(u16 arr,u16 psc)
  13. {
  14.         GPIO_InitTypeDef GPIO_InitStructure;
  15.     TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
  16.     TIM_OCInitTypeDef TIM_OCInitStructure;

  17.         RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE); //使能 TIMx 外設
  18.     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //使能 PB 時鐘
  19.         TIM_DeInit(TIM4);

  20.   //設置該引腳為復用輸出功能,輸出 TIM4 CH1 的 PWM 脈沖波形
  21.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9; //TIM4_CH1
  22.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //復用功能輸出
  23.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  24.         GPIO_Init(GPIOB, &GPIO_InitStructure); //初始化 GPIO

  25.         TIM_TimeBaseStructure.TIM_Period = arr; //設置自動重裝載周期值
  26.         TIM_TimeBaseStructure.TIM_Prescaler =psc; //設置預分頻值 不分頻
  27.         TIM_TimeBaseStructure.TIM_ClockDivision = 0; //設置時鐘分割:TDTS = Tck_tim
  28.         TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //向上計數
  29.         TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure); //初始化 TIMx
  30.         
  31.         
  32.         TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2; //CH1 PWM2 模式
  33.         TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比較輸出使能
  34.         TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Disable;
  35.         
  36.         
  37.         TIM_OCInitStructure.TIM_Pulse = 200; //設置待裝入捕獲比較寄存器的脈沖值
  38.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC1 高電平有效
  39.         TIM_OC1Init(TIM4, &TIM_OCInitStructure); //根據指定的參數初始化外設 TIMx
  40.         TIM_OC2PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH1 預裝載使能
  41.         
  42.         
  43.         TIM_OCInitStructure.TIM_Pulse = 400; //設置待裝入捕獲比較寄存器的脈沖值
  44.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC2 高電平有效
  45.         TIM_OC2Init(TIM4, &TIM_OCInitStructure); //根據指定的參數初始化外設 TIMx
  46.         TIM_OC2PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH2 預裝載使能
  47.         
  48.         
  49.         TIM_OCInitStructure.TIM_Pulse = 600; //設置待裝入捕獲比較寄存器的脈沖值
  50.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC1 高電平有效
  51.         TIM_OC3Init(TIM4, &TIM_OCInitStructure); //根據指定的參數初始化外設 TIMx
  52.         TIM_OC3PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH3 預裝載使能
  53.         
  54.         
  55.         TIM_OCInitStructure.TIM_Pulse = 800; //設置待裝入捕獲比較寄存器的脈沖值
  56.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC1 高電平有效
  57.         TIM_OC4Init(TIM4, &TIM_OCInitStructure); //根據指定的參數初始化外設 TIMx
  58.         TIM_OC4PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH4 預裝載使能
  59.         
  60.         
  61.         TIM_ARRPreloadConfig(TIM4, ENABLE); //使能 TIMx 在 ARR 上的預裝載寄存器
  62. //        TIM_CtrlPWMOutputs(TIM4,ENABLE);  //MOE 主輸出使能,高級定時器必須開啟
  63.         TIM_Cmd(TIM4, ENABLE); //使能 TIMx
  64. }
復制代碼

評分

參與人數 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:406128 發表于 2018-11-27 10:07 | 顯示全部樓層
多謝大佬的教程,很多時候我也想發些什么,但是技術達不到,怕誤人
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩国产精品一区二区三区 | 国产精品久久久久久中文字 | av一区二区三区 | 日韩欧美在线不卡 | www.youjizz.com日韩 | 不卡av在线 | 国产在线高清 | 日韩欧美中文在线 | 99精品国自产在线观看 | 日韩精品欧美精品 | 毛片大全 | 新超碰97| 久久精品99国产精品日本 | 一本色道精品久久一区二区三区 | 久久伦理中文字幕 | 久久精品二区 | 亚洲在线免费观看 | 在线观看中文字幕一区二区 | 午夜视频在线免费观看 | 在线观看中文字幕 | www.4虎影院 国产999精品久久久影片官网 | 亚洲一区二区三区视频免费观看 | 久久成人免费 | 国产精品国产自产拍高清 | 欧洲免费毛片 | 久久91| 久久久久久国产精品 | 国产区视频在线观看 | 久久久久久久一区 | 精品视频一区二区三区 | 国产精品美女久久久久 | 超碰3 | 国产乱肥老妇国产一区二 | 国产这里只有精品 | 中文字幕高清在线 | 久久国产精品亚洲 | 国产精品视频一二三 | 一级看片免费视频 | www.jizzjizz| 久久久久久久国产精品影院 | 91精品国产一区二区三区 |