亲测可用
基于STM32F1的PWM输出(开源2分源码):
实现精确输出脉冲数 控制步进电机
void TIM4_IRQHandler(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
if (TIM_GetITStatus(TIM4,TIM_IT_Update) != RESET)
{
TIM_ClearITPendingBit(TIM4,TIM_IT_Update);
//进入中断后把通道GPIO关闭,达到控制脉冲目的
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_11 | GPIO_Pin_13 | GPIO_Pin_14;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOE, &GPIO_InitStructure);
TIM_Cmd(TIM4,DISABLE);//关闭定时器4
GPIO_SetBits(GPIOE, GPIO_Pin_9);
GPIO_SetBits(GPIOE, GPIO_Pin_11);
GPIO_SetBits(GPIOE, GPIO_Pin_13);
GPIO_SetBits(GPIOE, GPIO_Pin_14);
}
}
当想发送一定脉冲时,配置TIM4ARR寄存器,使能TIM4,即可发送一定数量脉冲


-
- 0000000000000000
-
1888 发帖7917 回复34980 积分
- 私信他 +关注
-
- xiaomiking
-
1147 发帖6357 回复18609 积分
- 私信他 +关注
-
- luochangqing112
-
0 发帖5 回复112 积分
- 私信他 +关注
回复于 2018-06-28
9#
块
导
航
举报
请选择举报类别
- 广告垃圾
- 违规内容
- 恶意灌水
- 重复发帖