单片机驱动步进电机时出了点问题!哪位高手进来指点一下

[复制链接]
2275|1
 楼主| 许世霞 发表于 2007-12-19 19:38 | 显示全部楼层 |阅读模式
#include&ltreg51.h&gt&nbsp;<br />#include&ltintrins.h&gt&nbsp;<br />typedef&nbsp;unsigned&nbsp;char&nbsp;&nbsp;BYTE;<br />typedef&nbsp;unsigned&nbsp;int&nbsp;&nbsp;&nbsp;WORD;<br />typedef&nbsp;bit&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BOOL;<br />#define&nbsp;M_PORT&nbsp;&nbsp;&nbsp;P1<br />code&nbsp;&nbsp;BYTE&nbsp;MCW[]={1,2};&nbsp;//{1,3,2}<br />code&nbsp;&nbsp;BYTE&nbsp;MCCW[]={2,1};&nbsp;//{2,3,1}<br />Delay(WORD&nbsp;ms)<br />{BYTE&nbsp;i;<br />&nbsp;while(ms--)<br />&nbsp;&nbsp;{for(i=0;i&lt100;i++)<br />&nbsp;&nbsp;&nbsp;{_nop_();<br />&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;}<br />}<br />main()<br />{BOOL&nbsp;Direction;<br />&nbsp;BYTE&nbsp;i;<br />&nbsp;&nbsp;&nbsp;while(1)<br />&nbsp;&nbsp;&nbsp;{if(Direction=1)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;i&lt2;i++)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{M_PORT=MCW;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(50);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;i&lt2;i++)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{M_PORT=MCCW;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(50);}<br />&nbsp;&nbsp;&nbsp;}<br />}<br />硬件电路:单片机的P1.0&nbsp;P1.1加在ULN2003的一侧,另一侧接两相的步进电机。12V供电。现在问题是我把程序下进去,只是振动,不转动。我的软件仿真没有问题呀。请高手指点<br /><br />
 楼主| 许世霞 发表于 2007-12-20 16:18 | 显示全部楼层

帮个忙看

我用的是AT89S52&nbsp;单片机,我是个新手,很多地方有不明白的地方,现在进行不下去了!&nbsp;我也不知哪里出现了问题!&nbsp;有个高手说我的延时有问题我就把延时设置大了!没想到连振都不振了。&nbsp;按说是很简单的。可是对于新手来说就是感觉比较难的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

439

主题

3781

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部