找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4468|回复: 2
打印 上一主题 下一主题
收起左侧

为什么步进电机没有一直转,仿真只转了45度就停了

[复制链接]
跳转到指定楼层
楼主
20黑币
include<reg52.h>
int flag;
sbit first_key=P1^0;
/* 按键检测 */
void anjian()
    {
            if( first_key==0 )
            {
            msdelay(5);                  //延时5ms
            if( first_key==0 )
                        flag=1;
                        while( !first_key );  //等待按键释放
            }
    }

/* 一档 */
void first()
    {
        if(flag==1)
        {
        while(1)
            {
        P1=0x01;      //0001 P20=1
        smgdelay(5);  //延时500ms
        P1=0x03;      //0011 P20=1  P21=1
        smgdelay(5);
        P1=0x02;      //0010 P21=1
        smgdelay(5);
        P1=0x06;      //0110 P21=1  P22=1
        smgdelay(5);
        P1=0x04;      //0100 P22=1
        smgdelay(5);
        P1=0x0C;      //1100 P22=1  P23=1
        smgdelay(5);
        P1=0x08;      //1000 P23=1           
        smgdelay(5);
        P1=0x09;      //1001 P23=1  P20=1
        smgdelay(5);
                }
        }
    }


void main()
{
    while(1)
    {
        anjian();
        first();
    }
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:111634 发表于 2017-11-9 19:19 | 只看该作者
本帖最后由 zl2168 于 2017-11-9 19:25 编辑

电机驱动先Proteus仿真一下,确认有效。
实例99  驱动二相步进电机
实例99 二相步进电机.rar (36.2 KB, 下载次数: 15)

实例98  驱动四相步进电机
实例98 四相步进电机.rar (35.83 KB, 下载次数: 14)

以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil CProteus》清华大学出版社ISBN 978-7-302-41682-1内有常用的单片机应用100案例,用于仿真实验操作,电路与程序真实可靠可信可行。书中电路和程序设计有详细说明,程序语句条条有注解。仿真电路和Hex文件能在清华出版社网站免费下载,程序源代码只能到书上看了。到图书馆借,或到新华书店翻阅,或到网上书店打折购买。
回复

使用道具 举报

板凳
ID:247795 发表于 2017-11-9 19:43 | 只看该作者
编程有错误
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表