STM32F103输出固定数量脉冲用于控制步进电机

	因为前段时间需要用STM32F103控制步进电机,所以写了了可用于控住GPIO口输出固定数量脉冲的函数,可直接输入脉冲数,并且可以调节PWM的频率(每个脉冲的周期)。
	参考了网上大神的指导,我的思路是:用两个定时器(一个用于PWM输出,一个用于中断PWM输出),通过对PWM的周期和输出时间的控制,来达到输出固定脉冲数的目的。
	下面为主要代码:
#include <sys.h>
#include <pwn.h>
#include <interrupt.h>
#include <step.h>
//输出固定脉冲数量
//speed为输出脉冲的频率
//pulse为输出脉冲数量
//在调脉冲频率时,需同时调x
void pulse_putput(u16 speed, u16 pulse)
{
   
   
 	TIM2_init(pulse*10);       //设置脉冲数量(10为speed/100)
	TIM_Cmd(TIM2, ENABLE);            //使能TIM4
	TIM_ClearITPendingBit(TIM2, TIM_IT_Update);         //清除中断标志位
	TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE);          //使能更新中断
	
	TIM3_PWM_Init(speed);                                 //设置PWM输出的频率
	
	TIM_Cmd(TIM3, ENABLE);             //使能定时器3                 
                   
}

然后就是PWM的初始化代码(这一段是基础的PWM初始化)

//TIM3 PWN²¿·Ö³õʼ»¯
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Orange--Lin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值