打印

老x详解步进电机——连载一:啥是步进电机

[复制链接]
楼主: xwj
手机看帖
扫描二维码
随时随地手机跟帖
141
zhiyonghe| | 2010-1-5 13:37 | 只看该作者 回帖奖励 |倒序浏览
留印,学习

使用特权

评论回复
142
zywic5| | 2010-1-5 17:33 | 只看该作者
留印,学习

使用特权

评论回复
143
03024003| | 2010-1-8 08:50 | 只看该作者
强贴
学习了

使用特权

评论回复
144
turmary| | 2010-1-9 00:32 | 只看该作者
好贴留名!

使用特权

评论回复
145
liliancheng| | 2010-1-10 15:42 | 只看该作者
好帖!谢谢楼主!

使用特权

评论回复
146
wuzx-61| | 2010-1-10 20:14 | 只看该作者
老X如孔夫子也,博学多才!后来者受益。

使用特权

评论回复
147
crazyxray| | 2010-1-11 01:58 | 只看该作者
学习了! 俺准备交的毕业设计就是弄这个的驱动细分!

使用特权

评论回复
148
skyto| | 2010-1-11 15:26 | 只看该作者
新手来学习了

使用特权

评论回复
149
xfgood3872| | 2010-4-7 13:58 | 只看该作者
收藏

使用特权

评论回复
150
xfgood3872| | 2010-4-7 20:35 | 只看该作者
正在学这个   再来看看

使用特权

评论回复
151
xiejixk| | 2010-4-28 20:03 | 只看该作者
收购洗碗机



















求步进电机驱动电路图

使用特权

评论回复
152
lxintian| | 2010-5-5 13:04 | 只看该作者
学习了

使用特权

评论回复
153
lonerwolf| | 2010-5-5 13:33 | 只看该作者
....学习了。。。。。。。。。。。。。

使用特权

评论回复
154
cbs110| | 2010-5-8 11:02 | 只看该作者
mark下

使用特权

评论回复
155
szmj| | 2010-5-8 11:35 | 只看该作者
黄瓜菜都等凉了。

使用特权

评论回复
156
linbei1988| | 2010-5-8 14:21 | 只看该作者
是不是被放弃了..

使用特权

评论回复
157
shu081| | 2010-5-8 20:16 | 只看该作者
长见识了:P

使用特权

评论回复
158
nayaix| | 2010-5-12 11:25 | 只看该作者
学习 了

使用特权

评论回复
159
zhzy724| | 2010-5-12 13:00 | 只看该作者
/***************   writer:shopping.w   ******************/
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code FFW[]=          //正转
{
        0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09  
};

uchar code REV[]=        //反转
{
        0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01
};

sbit K1 = P3^0;
sbit K2 = P3^1;
sbit K3 = P3^2;

void DelayMS(uint ms)  //延时
{
        uchar i;
        while(ms--)
        {
                 for(i=0;i<120;i++);
        }
}

void SETP_MOTOR_FFW(uchar n)   //正转
{
        uchar i,j;
        for(i=0;i<1*n;i++)
        {
                 for(j=0;j<8;j++)
                {
                         if(K3 == 0)        break;
                        P1 = FFW[j];
                        DelayMS(25);
                }
        }
}

void SETP_MOTOR_REV(uchar n)  //反转
{
        uchar i,j;
        for(i=0;i<1*n;i++)
        {
                 for(j=0;j<8;j++)
                {
                         if(K3 == 0)        break;
                        P1 = REV[j];
                        DelayMS(25);
                }
        }
}

void main()
{
        uchar N = 1;
        while(1)
        {
                 if(K1 == 0)
                {  while(K1==0);
                         P0 = 0xfe; //正转LED指示
                        SETP_MOTOR_FFW(N);
                        if(K3 == 0) break;
                }
                else if(K2 == 0)
                {        while(K2==0);
                         P0 = 0xfd;        //反转LED指示
                        SETP_MOTOR_REV(N);
                        if(K3 == 0) break;
                }
                else
                {
                         P0 = 0xfb;          //停LED指示
                        P1 = 0x03;
                }
        }
}
当按下K1(K2)时怎么每次都正转72°(反转72°)?
程序怎么改让它只转9°?
请各位大侠帮忙

使用特权

评论回复
160
vifuture| | 2010-12-24 16:39 | 只看该作者
不错,收藏一下

使用特权

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

本版积分规则