打印

帮我看看我的步进电机的C语言....

[复制链接]
2007|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zdp1214|  楼主 | 2009-10-12 16:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <reg51.h>
#include <absacc.h>
#define uint unsigned int
#define uchar unsigned char

void out(uchar state);//声明一个out 函数
void delay(uint x);//声明延迟函数

main()
{
for(;;)
{  
      uchar phase=0;
out(phase=++phase&0x03);//0000--0001--0010--0011--0000
}
}


void out(uchar state)
{
code uchar table[]={0x02,0x04,0x08,0x10};
P1=table[state];
delay(8);
}

void delay(uint x)
{
uchar j;
while(x-->0)
{
for(j=0;j <125;j++)
{;}
}
}
先将程序烧进去,将步进电机的红色对准VCC,其他对准ABCD插在板上,然后用杜邦线将ABCD于p1.1p1.2p1.3p1.4短接
机器不转....~~~~为什么..
- -!

相关帖子

沙发
IC_99| | 2009-10-12 20:56 | 只看该作者
这行程序 P1=table[state];  里的  “state”这个变量的值似乎是不变的,那你的编码表有用嘛???

使用特权

评论回复
板凳
IC_99| | 2009-10-12 20:57 | 只看该作者
不知道是不是这个问题呢??呵呵....偶尔看了一下发现的

使用特权

评论回复
地板
ejack| | 2009-10-13 12:04 | 只看该作者
硬件方面:
1.什么51单片机?电源部分是否正常?上电复位电路是否正常?你的线路板上是否有外部狗?
2.不了解步进电机的接口,51的I/O口能否直接驱动?你的Vcc供电能否满足电机要求?
3.其它……

软件方面:编译通过,粗瞅了一下功能代码没发现大毛病……

P.S. IC_99该被打PP……:)

使用特权

评论回复
5
IC_99| | 2009-10-13 23:33 | 只看该作者
呵呵,俺也不懂滴

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

8

帖子

1

粉丝