51单片机C语言程序按键控制步进电机转速

51单片机C语言程序按键控制步进电机转速,第1张

sbit K1=P1^0

sbit K2=P1^1

char y=0

while(1)

{

pangduan()

for(i=0i<4i++) //4相

{

/*P1=F_Rotation[i] //输出对应的相 可以自行换成反转表格

Delay(500)//改变这个参数可以调整电机转速

Delay(5000)*/

P1=B_Rotation[i]

Delay(265+y)

P1=F_Rotation[i]

Delay(265+y)

}

}

void pangduan()

{

if(K1==0)

{ y++ //加

while(~k1)

}

if(K2==0)

{ y--

while(~k2)//减

}

}

}

没有下上限要是调的话 需要判断显示延时时间

用一个定时器计数

另一个定时

开始

main()

{

同时打开计数器定时器

计数器计数

}

定时器1秒钟到

{

关闭定时器

和计数器

计算转数

//转数=(1s计数值÷电机转一圈的脉冲数)×60

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11958897.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存