Timer.c c #include"Timer.h"uint16_tnum =0;voidTimer_Init(void){//1.开启时钟RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);//开启定时器2时钟//2.初始化TIM定时器TIM_InternalClockConfig(TIM2);//设置TIM2使用内部时钟 -- 可不写 原因--STM32默认使用内部时钟TIM_TimeBaseInitTypeDef TIM_...
/*AHB = 72MHz,RCC_CFGR的PPRE1 = 2,所以APB1 = 36MHz,TIM2CLK = APB1*2 = 72MHz */ RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); /* Time base configuration */ TIM_TimeBaseStructure.TIM_Period = SystemCoreClock/SYSTICKFREQUENCY -1; TIM_TimeBaseStructure.TIM_Prescaler = 0; ...
时钟配置 在system_stm32f10x.c文件中配置宏定义之后,在此.c文件中的相应的函数才能使用,例如static void SetSysClockTo72(void)函数体, HSE_VALUE 会在stm32f10x_rcc.c中赋值给RCC_Clocks->SYSCLK_Frequency,因此必须设置准确,按照真实的外置高速晶振来 static void SetSysClockTo72(void)这种函数体本质上就...
以下为设置定时器3的过程: 登录后复制1staticvoid timer_setup(void)2{3/* Enable TIM3clock. */4rcc_periph_clock_enable(RCC_TIM3);56/* Enable TIM3interrupt. */7nvic_enable_irq(NVIC_TIM3_IRQ);89/* Timer global mode:10* - No divider11* - Alignment edge12* - Direction up13*/14timer_...
(CPU Clock) * HCLK = SYSCLK / 1 = 168000000 (AHB1Periph) * PCLK2 = HCLK / 2 = 84000000 (APB2Periph) * PCLK1 = HCLK / 4 = 42000000 (APB1Periph) * HSE Frequency(Hz) = 25000000 * PLL_M = 25 * PLL_N = 336 * PLL_P = 2 * PLL_Q = 4 * VDD(V) = 3.3 * Flash ...
/*开启LED的外设时钟*/ RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE); ...
3.在Timer界面选择Tim6,勾选Actived启动Tim6,Prescalar预分频值49999,实际分频值为50000,Counter Period计数周期,也就是自动重装载寄存器ARR的值,设置为500,NVIC界面使能TIM6全局中断及UEV事件中断使能,此时Tim6每500ms产生一次硬件中断。要时勾选One Pulse Mode则只中断一次。
(CPU Clock) * HCLK = SYSCLK / 1 = 168000000 (AHB1Periph) * PCLK2 = HCLK / 2 = 84000000 (APB2Periph) * PCLK1 = HCLK / 4 = 42000000 (APB1Periph) * HSE Frequency(Hz) = 25000000 * PLL_M = 25 * PLL_N = 336 * PLL_P = 2 * PLL_Q = 4 * VDD(V) = 3.3 * Flash ...
TIM3 Frequency = TIM3 counter clock/(ARR + 1) 倒过来: ARR=TIM3 Counter Clock/TIM3 Frequenc - 1 =562.5-1 =561 如果取ARR的值是561的话,那么实际的频率是64.056KHz,即最终生成为的正弦波频率是:500.4Hz 有了ARR,占空比就取决于CCR1的值了,使用EXCEL可以方便地计算出第一象限的16个点的数据: ...
I、原理描述 image.png My Code //double DutyCycle, Frequency, FullCycle;//uint32_t IC2Value;//uint32_t cnt;//uint8_t timer5_cap_sta = 0;//uint16_t timer5_cap_val = 0;PwmValType cap_val[4];PwmValType cap_val_cp[4];voiddrv_pwm_reader_init(){GPIO_InitTypeDef GPIO_InitStructu...