Untitled

mail@pastecode.io avatar
unknown
plain_text
2 years ago
1.8 kB
1
Indexable
Never
// Her er det n� TIM2 CH2 som skal brukast, og g�r ut p� PA1.

 //Deklarasjon av initialiseringsstrukturane.
   TIM_TimeBaseInitTypeDef  TIM2oppsett;
   TIM_OCInitTypeDef        TIM2OCoppsett;

// Oppsett av TIM2 CH2 som PWM-utgang

 //Slepp f�rst til klokka paa TIM2.
   RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);


   /* Time base configuration */
   TIM2oppsett.TIM_Period = 250; //
   TIM2oppsett.TIM_Prescaler = 71; // 0
   TIM2oppsett.TIM_ClockDivision = 0;
   TIM2oppsett.TIM_CounterMode = TIM_CounterMode_Up;

   TIM_TimeBaseInit(TIM2, &TIM2oppsett);

   /* PWM1 Mode configuration: Channel2 */
   TIM2OCoppsett.TIM_OCMode = TIM_OCMode_PWM1;
   TIM2OCoppsett.TIM_OutputState = TIM_OutputState_Enable;
   TIM2OCoppsett.TIM_Pulse = 250;
   TIM2OCoppsett.TIM_OCPolarity = TIM_OCPolarity_High;

   TIM_OC2Init(TIM2, &TIM2OCoppsett);

//   TIM_OC2PreloadConfig(TIM2, TIM_OCPreload_Enable);



//S� oppsett av GPIO-pinnen PA1 som blir brukt av TIM2-modulen
//------------------------------------------
//Deklarasjon av initialiseringsstrukturen.
	GPIO_InitTypeDef GPIO_InitStructure_TIM2;

  //Slepp til klokka paa GPIO-portA.
	RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE); // | RCC_AHBPeriph_AFIO

  //Konfigurer PA1.
	GPIO_InitStructure_TIM2.GPIO_Pin = GPIO_Pin_1;
	GPIO_InitStructure_TIM2.GPIO_Mode = GPIO_Mode_AF;
	GPIO_InitStructure_TIM2.GPIO_Speed = GPIO_Speed_Level_1;
	GPIO_InitStructure_TIM2.GPIO_PuPd  = GPIO_PuPd_NOPULL;

  //Initialiser, dvs. last ned konfigurasjonen i modulen
	GPIO_Init(GPIOA, &GPIO_InitStructure_TIM2);

  //Knytt TIM2-pinnane til AF */
	GPIO_PinAFConfig(GPIOA, GPIO_PinSource1, GPIO_AF_1); //!!!! Ikkje AF_2 som det og st�r i dok.



// Aktiver til slutt TIM2

    TIM_Cmd(TIM2, ENABLE);