⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 步进电机正反转.lst

📁 LY-51S c语言 程序
💻 LST
字号:
C51 COMPILER V7.06   步进_缁_正__转                                                        08/07/2010 18:02:16 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE 步进_缁_正__转
OBJECT MODULE PLACED IN .\obj\步进电机正反转.obj
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE 步进电机正反转.c BROWSE DEBUG OBJECTEXTEND PRINT(.\obj\步进电机正反转.lst) 
                    -OBJECT(.\obj\步进电机正反转.obj)

stmt level    source

   1          /*-----------------------------------------------
   2            名称:步进电机
   3            论坛:www.doflye.net
   4            编写:shifang
   5            日期:2009.5
   6            修改:无
   7            内容:本程序用于测试4相步进电机常规驱动 含正反转 使用1相励磁
   8                  
   9          
  10           ------------------------------------------------*/
  11          
  12          #include <reg52.h>
  13          
  14          
  15          
  16          sbit A1=P1^0; //定义步进电机连接端口
  17          sbit B1=P1^1;
  18          sbit C1=P1^2;
  19          sbit D1=P1^3;
  20          
  21          
  22          #define Coil_A1 {A1=1;B1=0;C1=0;D1=0;}//A相通电,其他相断电
  23          #define Coil_B1 {A1=0;B1=1;C1=0;D1=0;}//B相通电,其他相断电
  24          #define Coil_C1 {A1=0;B1=0;C1=1;D1=0;}//C相通电,其他相断电
  25          #define Coil_D1 {A1=0;B1=0;C1=0;D1=1;}//D相通电,其他相断电
  26          #define Coil_AB1 {A1=1;B1=1;C1=0;D1=0;}//AB相通电,其他相断电
  27          #define Coil_BC1 {A1=0;B1=1;C1=1;D1=0;}//BC相通电,其他相断电
  28          #define Coil_CD1 {A1=0;B1=0;C1=1;D1=1;}//CD相通电,其他相断电
  29          #define Coil_DA1 {A1=1;B1=0;C1=0;D1=1;}//D相通电,其他相断电
  30          #define Coil_OFF {A1=0;B1=0;C1=0;D1=0;}//全部断电
  31          
  32          unsigned char Speed;
  33          /*------------------------------------------------
  34           uS延时函数,含有输入参数 unsigned char t,无返回值
  35           unsigned char 是定义无符号字符变量,其值的范围是
  36           0~255 这里使用晶振12M,精确延时请使用汇编,大致延时
  37           长度如下 T=tx2+5 uS 
  38          ------------------------------------------------*/
  39          void DelayUs2x(unsigned char t)
  40          {   
  41   1       while(--t);
  42   1      }
  43          /*------------------------------------------------
  44           mS延时函数,含有输入参数 unsigned char t,无返回值
  45           unsigned char 是定义无符号字符变量,其值的范围是
  46           0~255 这里使用晶振12M,精确延时请使用汇编
  47          ------------------------------------------------*/
  48          void DelayMs(unsigned char t)
  49          {
  50   1           
  51   1       while(t--)
  52   1       {
  53   2           //大致延时1mS
  54   2           DelayUs2x(245);
C51 COMPILER V7.06   步进_缁_正__转                                                        08/07/2010 18:02:16 PAGE 2   

  55   2               DelayUs2x(245);
  56   2       }
  57   1      }
  58          /*------------------------------------------------
  59                              主函数
  60          ------------------------------------------------*/
  61          main()
  62          {
  63   1       unsigned int i=512;//旋转一周时间
  64   1       Speed=8;
  65   1       Coil_OFF
  66   1       while(i--)  //正向
  67   1        {         
  68   2           Coil_A1                //遇到Coil_A1  用{A1=1;B1=0;C1=0;D1=0;}代替
  69   2           DelayMs(Speed);         //改变这个参数可以调整电机转速 ,
  70   2                                   //数字越小,转速越大,力矩越小
  71   2           Coil_B1
  72   2           DelayMs(Speed);
  73   2           Coil_C1
  74   2           DelayMs(Speed);
  75   2           Coil_D1
  76   2           DelayMs(Speed);
  77   2        }
  78   1        Coil_OFF
  79   1        i=512;
  80   1        while(i--)//反向
  81   1        {
  82   2           Coil_D1                //遇到Coil_A1  用{A1=1;B1=0;C1=0;D1=0;}代替
  83   2           DelayMs(Speed);         //改变这个参数可以调整电机转速 ,
  84   2                                       //数字越小,转速越大,力矩越小
  85   2           Coil_C1
  86   2           DelayMs(Speed);
  87   2           Coil_B1
  88   2           DelayMs(Speed);
  89   2           Coil_A1
  90   2           DelayMs(Speed);
  91   2        }
  92   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    153    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -