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

📄 test51.lst

📁 单片机使用stk642-050芯片控制四相电机。
💻 LST
字号:
C51 COMPILER V7.06   TEST51                                                                02/16/2009 13:59:28 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE TEST51
OBJECT MODULE PLACED IN test51.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE test51.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include<reg52.h>
   2          #define uchar unsigned char
   3          #define uint unsigned int
   4          #define T 100000    // 10ms定时常量宏定义
   5          
   6          sbit M11=P0^0;
   7          sbit M12=P0^1;
   8          sbit M14=P0^2;
   9          sbit M15=P0^3;
  10          sbit EN1=P0^4;
  11          sbit CWB1=P0^5;
  12          sbit RET1=P0^6;
  13          sbit CLK1=P0^7;
  14          
  15          sbit M1=P2^0;
  16          sbit M2=P2^1;
  17          sbit M4=P2^2;
  18          sbit M5=P2^3;
  19          sbit EN=P2^4;
  20          sbit CWB=P2^5;
  21          sbit RET=P2^6;
  22          sbit CLK=P2^7;
  23          
  24          sbit S01=P1^0;
  25          sbit S02=P1^1;
  26          sbit S03=P1^2;
  27          sbit S04=P1^3;
  28          
  29          
  30          void main()
  31          {
  32   1              TMOD=0x11;
  33   1              EA = 1;
  34   1              ET0 = 1;
  35   1              ET1 = 1;
  36   1              /* 设置为4相激励 */
  37   1              M1 = 1;
  38   1              M2 = 1;
  39   1              M11 = 1;
  40   1              M12 = 1;
  41   1              /* 设置为环形转向轨迹 */
  42   1              M4 = 1;
  43   1              M5 = 1;
  44   1              M14 = 1;
  45   1              M15 = 1;
  46   1              EN = 0;                                                 // 切断驱动输出
  47   1              EN1 = 0;        
  48   1              RET = 0;                                                // 归位输入无效
  49   1              RET1 = 0;
  50   1              CWB = 1;                                                // 初始设置为顺时针方向
  51   1              CWB1 = 1;
  52   1              while(1)
  53   1              {
  54   2                              if(S01==0)
  55   2                          {
C51 COMPILER V7.06   TEST51                                                                02/16/2009 13:59:28 PAGE 2   

  56   3                                      EN = 1;                         // 打开驱动输出
  57   3                                      TH0 = -T/256;           // 改变T可以改变步进电机转动速度  
  58   3                                      TL0 = -T%256;
  59   3                                      TR0 = 1;                        // 定时器0开始计数
  60   3                              }
  61   2                              else
  62   2                              {
  63   3                                      TR0=0;
  64   3                                      EN=0;
  65   3                              }
  66   2                              if(S02==0)
  67   2                              {
  68   3                                      EN1 = 1;                                // 打开驱动输出
  69   3                                      TH1 = -T/256;           // 改变T可以改变步进电机转动速度  
  70   3                                      TL1 = -T%256;
  71   3                                      TR1 = 1;                        // 定时器0开始计数
  72   3                              }
  73   2                              else
  74   2                              {
  75   3                                      TR1=0;
  76   3                                      EN1=0;
  77   3                              }
  78   2              }
  79   1      }
  80          
  81          void time0() interrupt 1 using 1  
  82          {
  83   1              /* 定时10ms,产生20ms周期的时钟,也就是50Hz的时钟 */
  84   1              TH0 = -T/256;  
  85   1              TL0 = -T%256;
  86   1              CLK = ~CLK;
  87   1      }
  88          
  89          void time1() interrupt 3 using 3  
  90          {
  91   1              /* 定时10ms,产生20ms周期的时钟,也就是50Hz的时钟 */
  92   1              TH1 = -T/256;  
  93   1              TL1 = -T%256;
  94   1              CLK1 = ~CLK1;
  95   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     95    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   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 + -