找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3462|回复: 0
收起左侧

关于步进电机的工作原理 带程序和仿真图

[复制链接]
ID:149914 发表于 2016-12-21 21:42 | 显示全部楼层 |阅读模式
用四路I/O口的输出实现环形脉冲的分配,控制步进电机按固定方向连续转动。同时按键控制电机的正反转和停止。
带程序和仿真图。
  1. #include"reg51.h"
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. #define out P2
  5. sbit pos=P0^0;
  6. sbit neg=P0^1;
  7. void delayms(uint);
  8. uchar code turn[]={0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03};
  9. void main(void)
  10. {
  11.         uchar i;
  12.         out=0x03;
  13.         while(1)
  14.         {
  15.                 if(!pos)
  16.                 {
  17.                         i=i<8?i+1:0;
  18.                         out=turn[i];
  19.                         delayms(50);
  20.                 }
  21.                 else if(!neg)
  22.                 {
  23.                         i=i>0?i-1:7;
  24.                         out=turn[i];
  25.                         delayms(50);
  26.                 }
  27.         }
  28. }
  29. void delayms(uint j)
  30. {
  31.         uchar i;
  32.         for(;j>0;j--)
  33.         {
  34.                 i=250;
  35.                 while(--i);
  36.                 i=249;
  37.                 while(--i);
  38.         }
  39. }
复制代码

0.png

资料下载:
步进电机.rar (58.05 KB, 下载次数: 20)

评分

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

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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