新手入门
- 积分
- 19
- 金钱
- 19
- 注册时间
- 2017-8-15
- 在线时间
- 9 小时
|
1金钱
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_ICInitTypeDef TIM_ICInitStructure;
TIM_DeInit(TIM3);
TIM_TimeBaseStructure.TIM_Period =65535; //自动重装值
TIM_TimeBaseStructure.TIM_Prescaler =72;
TIM_TimeBaseStructure.TIM_ClockDivision = 0; //时钟分割为0
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//向上计数模式
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
TIM_ICInitStructure.TIM_Channel = TIM_Channel_3; //通道选择 PB0
TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising; //上升沿触发
TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;//管脚与寄存器对应关系
TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;//输入预分频。比如选择4分频,则每四个输入周期才做一次捕获。
TIM_ICInitStructure.TIM_ICFilter = 0x0; //滤波设置,经历几个周期跳变认定波形稳定0x0~0xF
TIM_ICInit(TIM3, &TIM_ICInitStructure);
TIM_SelectInputTrigger(TIM3, TIM_TS_TI2FP2); //选择IC1为始终触发源 ******************
TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset);//TIM从模式:触发信号的上升沿重新初始化计数器和触发寄存器的更新事件
TIM_SelectMasterSlaveMode(TIM3, TIM_MasterSlaveMode_Enable); //启动定时器的被动触发
TIM_ClearITPendingBit(TIM3, TIM_IT_Update);
TIM_ClearITPendingBit(TIM3, TIM_IT_CC3);
TIM_ITConfig(TIM3, TIM_IT_CC3, ENABLE);//打开中断使能CC1中断请求
TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE);//打开中断使能TIM3溢出中断请求
TIM_Cmd(TIM3, ENABLE);//启动TIM3
这样配置是不是不对啊
|
|