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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6031|回復(fù): 1
收起左側(cè)

STM32學(xué)習(xí)(設(shè)置TIM4輸出4路 pwm J-LINK仿真驗(yàn)證)源碼與教程

[復(fù)制鏈接]
ID:81424 發(fā)表于 2018-11-26 13:14 | 顯示全部樓層 |閱讀模式
STM32F103C8T6:
stm32的pwm輸出只要設(shè)置好在主循環(huán)前調(diào)用一次即可, 對(duì)用的IO就可以持續(xù)的輸出PWM
TIM4配置PWM過(guò)程程序:
A.png


J-LINK仿真配置

1. 選擇“ Options for Target” 選項(xiàng)

1.png

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

3. 配置好編譯下
3.png



4.  選擇Debug模式調(diào)試
4.png

5. 進(jìn)入Debug模式后選擇
5.png
6. 配置pwm輸出引腳
6.png

7.png



8.png

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

7. 開(kāi)始仿真運(yùn)行

9.png


0.png


貼一下程序記錄下:
  1. /*
  2. //TIM4 CH1 PWM 輸出設(shè)置
  3. //PWM 輸出初始化
  4. //arr:自動(dòng)重裝值
  5. //psc:時(shí)鐘預(yù)分頻數(shù)
  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 外設(shè)
  18.     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //使能 PB 時(shí)鐘
  19.         TIM_DeInit(TIM4);

  20.   //設(shè)置該引腳為復(fù)用輸出功能,輸出 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; //復(fù)用功能輸出
  23.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  24.         GPIO_Init(GPIOB, &GPIO_InitStructure); //初始化 GPIO

  25.         TIM_TimeBaseStructure.TIM_Period = arr; //設(shè)置自動(dòng)重裝載周期值
  26.         TIM_TimeBaseStructure.TIM_Prescaler =psc; //設(shè)置預(yù)分頻值 不分頻
  27.         TIM_TimeBaseStructure.TIM_ClockDivision = 0; //設(shè)置時(shí)鐘分割:TDTS = Tck_tim
  28.         TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //向上計(jì)數(shù)
  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; //設(shè)置待裝入捕獲比較寄存器的脈沖值
  38.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC1 高電平有效
  39.         TIM_OC1Init(TIM4, &TIM_OCInitStructure); //根據(jù)指定的參數(shù)初始化外設(shè) TIMx
  40.         TIM_OC2PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH1 預(yù)裝載使能
  41.         
  42.         
  43.         TIM_OCInitStructure.TIM_Pulse = 400; //設(shè)置待裝入捕獲比較寄存器的脈沖值
  44.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC2 高電平有效
  45.         TIM_OC2Init(TIM4, &TIM_OCInitStructure); //根據(jù)指定的參數(shù)初始化外設(shè) TIMx
  46.         TIM_OC2PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH2 預(yù)裝載使能
  47.         
  48.         
  49.         TIM_OCInitStructure.TIM_Pulse = 600; //設(shè)置待裝入捕獲比較寄存器的脈沖值
  50.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC1 高電平有效
  51.         TIM_OC3Init(TIM4, &TIM_OCInitStructure); //根據(jù)指定的參數(shù)初始化外設(shè) TIMx
  52.         TIM_OC3PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH3 預(yù)裝載使能
  53.         
  54.         
  55.         TIM_OCInitStructure.TIM_Pulse = 800; //設(shè)置待裝入捕獲比較寄存器的脈沖值
  56.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //OC1 高電平有效
  57.         TIM_OC4Init(TIM4, &TIM_OCInitStructure); //根據(jù)指定的參數(shù)初始化外設(shè) TIMx
  58.         TIM_OC4PreloadConfig(TIM4, TIM_OCPreload_Enable); //CH4 預(yù)裝載使能
  59.         
  60.         
  61.         TIM_ARRPreloadConfig(TIM4, ENABLE); //使能 TIMx 在 ARR 上的預(yù)裝載寄存器
  62. //        TIM_CtrlPWMOutputs(TIM4,ENABLE);  //MOE 主輸出使能,高級(jí)定時(shí)器必須開(kāi)啟
  63.         TIM_Cmd(TIM4, ENABLE); //使能 TIMx
  64. }
復(fù)制代碼

評(píng)分

參與人數(shù) 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

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

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产免费观看一级国产 | 欧美一区中文字幕 | 四虎影视免费在线 | 在线看一区二区三区 | 久久综合一区二区三区 | 日韩三级 | 91免费观看视频 | 精品亚洲视频在线 | 国产精品自产拍在线观看蜜 | 亚洲一区电影 | 九九爱这里只有精品 | 精品在线播放 | 91视频在线看 | 国产成人高清在线观看 | 黄页网址在线观看 | www.国产精 | 精品久久网 | 久久99蜜桃综合影院免费观看 | 九九热精品在线 | 羞羞视频免费观看入口 | 91一区二区 | 99久久99久久精品国产片果冰 | www狠狠爱com | 91精品国产色综合久久不卡98 | 欧美日韩综合 | 99国产精品久久久久老师 | 亚洲精品乱码久久久久久按摩观 | 蜜臀网站 | 一区在线视频 | 黄色网址在线免费观看 | 日韩在线一区二区 | 中文字幕视频网 | 影音av | 亚洲国产精品日韩av不卡在线 | 婷婷福利视频导航 | 一级美国黄色片 | 99热这里都是精品 | 狠狠操电影| 一区二区免费在线观看 | 久草视频在线播放 | 中文字幕精品一区二区三区精品 |