STM32F103C8T6 TIM2_CH2 PWM出力

STM32F103C8T6、uVisionの開発環境は、例えば、注意を払う、と他の同様のチップを使用するため、この記事では、参考値です
#include "stm32f10x.h"
の#include "stm32f10x_tim.h"


// **************************** **********************************
ボイドGPIO_CFG()// PWM出力端子A1の機能
{
   GPIO_InitTypeDef GPIO_InitStructure。 //宣言GPIO_InitStructure構造変数
   漢シャンの//オリジナルの作成は、引用され、ソースを明記してくださいhttps://www.cnblogs.com/beiyhs/p/11406535.html北
   / *有効GPIOAクロック* /
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA、ENABLE); //スイッチングのポートAにAHBプリスケーラを有効
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO、イネーブル)。

 / * *設定LED対応するピンPAL /
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1; //指定された出力端子
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //指定されたモードは、プッシュプル出力と多重化され
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //セットポート最速の出力50MHzの
 (GPIOA、&GPIO_InitStructure有する)GPIO_Init; // Aポート上のパラメータ設定に従って
}

// ************************************************ *********************************
ボイドTIM2_PWM_Init(uint16_t期間、uint16_tプリスケーラ)
{

TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; //宣言TIM_TimeBaseStructure構造変数
TIM_OCInitTypeDef TIM_OCInitStructure; //変数の構造TIM_OCInitStructureを宣言

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2、ENABLE); // TIM2にAHBプリスケーラを有効
TIM_TimeBaseStructure.TIM_Period =期間; //セット自動的にリロードサイクル値TIM2
TIM_TimeBaseStructure.TIM_Prescaler =プリスケーラ; //セットTIM2のプリスケール値
TIM_TimeBaseStructure.TIM_ClockDivision = 0; //設定されたクロック分周
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //カウントアップ
TIM_TimeBaseInit(TIM2、&TIM_TimeBaseStructureを); // TIM2上記のように初期化パラメータを

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2; // PWM2モード
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //出力イネーブルコンパレータ
TIM_OCInitStructure.TIM_Pulse = 1350; //チャネルデューティファクタ
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low; //出力低い
TIM_OC2Init(TIM2、&TIM_OCInitStructure );上記TIM2として//初期化パラメータ

TIM_OC2PreloadConfig(TIM2、TIM_OCPreload_Enable); //予圧イネーブルレジスタ
TIM_Cmd(TIM2を、ENABLE); // TIM2を有効
}

// **************************** *********************************
INTメイン(ボイド)
{
GPIO_CFG(); // PWM出力端子B1関数
TIM2_PWM_Init(1799、1); //クロック/ PWM初期化関数

ながら(1)
{}
}

 

おすすめ

転載: www.cnblogs.com/beiyhs/p/12312888.html
おすすめ