通过控制脉冲输出间隔时间来控制步进电机的转速,但不知道程序怎么写。我的思路是先把步进电机每一个转速运行的时间求出来,求解如下: 1.步进电机型号为28BYJ-48,步距角为5.625°,及电机转一圈所需的脉冲为数位360/5.625=64条。设转速为N(r/min)那么每分钟送的脉冲数据个数为64N,即每送一个脉冲数据时间为T。 T = 1/64N = 60*1000000/64N = 9735000/N(微秒) 2. T0定时的计数初值为Tx = 65536 - 11.05926*T/12 = 65536-864000/N。即当初始速度为20,那么计数初值为N = 20时Tx = 20864(十进制)= 5180(十六进制),即当转速为20r/min时TH0 = 0x51,TL0 = 0x80。如此计算可以得出其他转速的计数初值。 3.现在问各位如何用定时器写程序让步进电机输出20~100的转速,要求转速之间间隔时间30秒。 |