c语言控制两相步进电机

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

//P1_0为脉冲输出端,P1_1为方向输出端//2相1.8度步进电机,16细分状态下正转1圈后反转1圈//本测试程序运行在8051系列单片机环境下#includereg51.h#defineunitunsignedintsbitP1_0=P1^0;sbitP1_1=P1^1;unittime;intm;delay(){for(m=0;m10000;m++){;}for(m=0;m10000;m++){;}for(m=0;m10000;m++){;}for(m=0;m10000;m++){;}for(m=0;m10000;m++){;}}voidtimer0(void)interrupt1using1{if(time=3200)/*16细分×200脉冲/周=3200个脉冲/周如果是其他细分数,请改换相应的数据*/{TR0=0;P1_0=!P1_0;for(m=0;m30;m++){;}P1_0=!P1_0;time++;}else{TR0=0;time=1;P1_1=!P1_1;delay();}TH0=(65536-500)/256;TL0=(65536-500)%256;TR0=1;}voidmain(void){time=1;TMOD=0x01;P1_0=0;P1_1=0;delay();TH0=(65536-500)/256;TL0=(65536-500)%256;EA=1;ET0=1;TR0=1;do{}while(1);}想调速度的话,调整定时器设置

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功