標(biāo)題: 為什么STM32單片機(jī)配置四路PWM,但是只有PWM通道4可以用,求大佬們解答 [打印本頁]

作者: rong666    時間: 2023-4-9 15:36
標(biāo)題: 為什么STM32單片機(jī)配置四路PWM,但是只有PWM通道4可以用,求大佬們解答
// 定時器頻率 = 系統(tǒng)時鐘頻率 / (預(yù)分頻器 + 1) / (自動重裝載值 + 1)
    // 定時器預(yù)分頻器設(shè)置為72-1,計數(shù)器自動重裝載值設(shè)置為2000-1,周期為1/20kHz=50us
    TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; // 定義定時器時間基準(zhǔn)結(jié)構(gòu)體變量

    TIM_OCInitTypeDef TIM_OCInitStructure; // 定義定時器輸出比較結(jié)構(gòu)體變量

    /* 初始化定時器8為PWM模式 */
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM8, ENABLE);
    // 使能TIM8的時鐘,使用APB2總線上的定時器8

    // 定時器預(yù)分頻器設(shè)置為72-1,計數(shù)器自動重裝載值設(shè)置為2000-1,周期為1/20kHz=50us
    TIM_TimeBaseStructure.TIM_Prescaler = 72 - 1;
    TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
    TIM_TimeBaseStructure.TIM_Period = 2000 - 1;
    TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
    TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;
    TIM_TimeBaseInit(TIM8, &TIM_TimeBaseStructure); // 初始化TIM8

    // PWM模式選擇、輸出比較通道和輸出極性配置
    TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
    TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
    TIM_OCInitStructure.TIM_Pulse = 0;
    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;

    TIM_OC1Init(TIM8, &TIM_OCInitStructure);          // 配置TIM8的比較輸出通道1
    TIM_OC1PreloadConfig(TIM8, TIM_OCPreload_Enable); // 使能TIM8比較輸出通道1的預(yù)裝載寄存器

    TIM_OC2Init(TIM8, &TIM_OCInitStructure);          // 配置TIM8的比較輸出通道2
    TIM_OC2PreloadConfig(TIM8, TIM_OCPreload_Enable); // 使能TIM8比較輸出通道2的預(yù)裝載寄存器

    TIM_OC3Init(TIM8, &TIM_OCInitStructure);          // 配置TIM8的比較輸出通道3
    TIM_OC3PreloadConfig(TIM8, TIM_OCPreload_Enable); // 使能TIM8比較輸出通道3的預(yù)裝載寄存器

    TIM_OC4Init(TIM8, &TIM_OCInitStructure);          // 配置TIM8的比較輸出通道4
    TIM_OC4PreloadConfig(TIM8, TIM_OCPreload_Enable); // 使能TIM8比較輸出通道4的預(yù)裝載寄存器

  TIM_CtrlPWMOutputs(TIM8, ENABLE);   // MOE 主輸出使能
  TIM_ARRPreloadConfig(TIM8, ENABLE); //使能TIMx在ARR上的預(yù)裝載寄存器
  TIM_Cmd(TIM8, ENABLE);              //使能TIM8


作者: rong666    時間: 2023-4-9 15:37
其他通道不可以




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1