admin管理员组

文章数量:1558977

2024年1月23日发(作者:)

GPIO__Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure);

/* Time base configuration */ TIM__Period =0xffff; TIM__Prescaler = 71; TIM__ClockDivision = 0; TIM__CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); TIM__Channel = TIM_Channel_2; TIM__ICPolarity = TIM_ICPolarity_Rising; TIM__ICSelection = TIM_ICSelection_DirectTI; TIM__ICPrescaler = TIM_ICPSC_DIV1; TIM__ICFilter = 0x02; TIM_PWMIConfig(TIM3, &TIM_ICInitStructure); /* Enable the TIM3 global Interrupt */ NVIC__IRQChannel = TIM3_IRQn; NVIC__IRQChannelPreemptionPriority = 0; NVIC__IRQChannelSubPriority = 1; NVIC__IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure);

// /* Select the TIM3 Input Trigger: TI2FP2 */ TIM_SelectInputTrigger(TIM3, TIM_TS_TI2FP2); /* Select the slave Mode: Reset Mode */ TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset); /* Enable the Master/Slave Mode */ TIM_SelectMasterSlaveMode(TIM3, TIM_MasterSlaveMode_Enable); /* TIM enable counter */ TIM_Cmd(TIM3, ENABLE); /* Enable the CC2 Interrupt Request */ TIM_ITConfig(TIM3, TIM_IT_CC2, ENABLE);}extern u32 Last_Data;u32 IC1Value=0;u32 IC2Value=0;u32 DutyCycle=0,Frequency=0;void TIM3_IRQHandler(void){ if(TIM_GetITStatus(TIM3, TIM_IT_CC2)!=RESET) { /* Clear TIM3 Capture compare interrupt pending bit */ TIM_ClearITPendingBit(TIM3, TIM_IT_CC2); IC1Value=TIM3->CCR1; IC2Value=TIM3->CCR2; if (IC2Value != 0) { DutyCycle = ((IC1Value+1) * 100) / (IC2Value+1); Frequency = (1000000)/ (IC2Value+1); } else { DutyCycle = 0; Frequency = 0; }Last_Data=Frequency; }}

本文标签: 赛题省赛