void Send_Sound(void){ TIM2->CR1 &= ~(0X01);TIM2->CNT = 0;NVIC_Configuration_Catch_Enable...
TIM2->CR1 |= 0x01; //CEN=1,使能定时器 } 中断函数如下:void TIM2_IRQHandler(void){ if...
TIM2_CR1 = 0x01; //内部计数器使能;TIM2_ARRH = 0x01;//0140,320分频,16M/320=50K,实测49.75K TIM2_ARRL = 0x3e;//自动装载寄存器低位;实测013e正好为50.0K /*PWM通道1设置*/ TIM2_CCER1 |= 0x01; //开启OC1信号输出脚 TIM2_CCMR1 = 0x60; //PWM1模式 TIM2_...
TIM2->CR1|=0x01; // 使能定时器2,在这里TIM2可以用,但是TIM5就不行,单独使用TIM5也不行...
TIM2的PWM功能解析
//使能捕获功能TIM2_IER_CC1IE=1;//开启捕获中断TIM2_IER_CC2IE=1;//开启捕获中断TIM2_CR1_CEN...
#define TIM2_CR1_CEN((uint8_t)0x01)/ *!<计数器启用掩码。 * / #define TIM2_IER_...
// while(!(CLK_PCKENR1 & 0x01));TIM2_CR1 = 0x00;TIM2_PSCR = 0x00;//16/2^4 TIM2_...
TIM2和TIM3时,由于不能同时使能,所以两个定时器里产生出来的PWM不能同步,有一个相位差。 用库函数使能如下,发现相位差较大。 TIM_Cmd(TIM2,ENABLE);//使能TIM2 TIM_Cmd(TIM3,ENABLE);//使能TIM3 改用寄存器使能如下: TIM2->CR1|=0x01; //使能定时器2...
TIM2_CR1 |= 0x81; //TIM2_IER |= 0x00; } void Init_GPIO(void) { /*设置为推挽输出,PD2接了LED灯*/ PD_DDR |= 0X04; //设置PD2端口为输出模式 PD_CR1 |= 0X04; //设置PD2端口为推挽输出模式 PD_CR2 &= 0XFD; PA_DDR |= 0X08; //设置PA3端口为输出模式 ...