找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4108|回复: 4
收起左侧

步进电机的控制

[复制链接]
ID:167950 发表于 2017-3-3 18:23 | 显示全部楼层 |阅读模式
51单片机做的步进电机的控制系统

22QH9C$T}Y[)200YJ`1}``H.png

源程序:
  1. #include <reg51.h>
  2. #include <absacc.h>
  3. sbit p10=P1^0;
  4. sbit p11=P1^1;
  5. sbit p12=P1^2;

  6. #define  UP   20
  7. #define  DOWN  30
  8. #define  STOP  40

  9. void delay()//延时程序
  10. {
  11.         unsigned i,j,k;
  12.         for(i=0;i<0x02;i++)
  13.                 for(j=0;j<0x02;j++)
  14.                         for(k=0;k<0xff;k++);
  15. }

  16. main()
  17. {
  18.         unsigned char temp;
  19.         while(1)
  20.         {
  21.                 if(p10==0)
  22.                 {
  23.                         temp=UP;//控制正转
  24.                         P2=0X00;
  25.                         delay();
  26.                 }
  27.                 if(p11==0)
  28.                 {
  29.                         temp=DOWN;//控制反转
  30.                         P2=0X00;
  31.                         delay();
  32.                 }
  33.                 if(p12==0)
  34.                 {
  35.                         temp=STOP;//控制停止
  36.                 }
  37.                 switch(temp)
  38.                 {
  39.                 case DOWN : P2=0X01;//控制反转 //0011
  40.                                         delay();
  41.                                         delay();
  42.                                         P2=0X02;//0110
  43.                                         delay();
  44.                                         delay();
  45.                                         P2=0X04;//1100
  46.                                         delay();
  47.                                         delay();
  48.                                         P2=0X08;//1001
  49.                                         delay();
  50.                                         delay();
  51.                                         break;
  52.                 case UP :        P2=0X08;//控制正转
  53.                                         delay();
  54.                                         delay();
  55.                                         P2=0X04;
  56.                                         delay();
  57.                                         delay();
  58.                                         P2=0X02;
  59.                                         delay();
  60.                                         delay();
  61.                                         P2=0X01;
  62.                                         delay();
  63.                                         delay();
  64.                                         break;
  65.                 case  STOP ://控制停止
  66.                                         P2=0X00;
  67.                                         delay();
  68.                                         delay();                                       
  69.                                         break;
  70.                 }
  71.    }
  72. }
复制代码
0.png

步进电机控制.rar

67.06 KB, 下载次数: 24, 下载积分: 黑币 -5

程序与图

评分

参与人数 2黑币 +55 收起 理由
i51ns + 5 共享资料的黑币奖励!
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:167979 发表于 2017-3-3 20:43 | 显示全部楼层
可以用
回复

使用道具 举报

ID:163285 发表于 2017-3-3 21:00 | 显示全部楼层
能不能增加加减速控制键?
回复

使用道具 举报

ID:105451 发表于 2017-3-3 21:23 | 显示全部楼层
谢谢楼主的分享!
回复

使用道具 举报

ID:151348 发表于 2017-3-6 16:23 | 显示全部楼层
可以用,但我觉得不太好
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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