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

📄 run.lst

📁 无刷电机的控制程序
💻 LST
字号:
C51 COMPILER V7.06   RUN                                                                   12/08/2008 14:15:19 PAGE 1   


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

stmt level    source

   1          //--------------------------------------------------
   2          // 运行部分的程序
   3          // 包括起动,停车,换相程序
   4          //--------------------------------------------------
   5          #include "sfr.h"
   6          #include "port.h"
   7          //--------------------------------------------------
   8          unchar dutycycle = 0;
   9          unchar hall_value = 0;          //HALL信号的值
  10          extern bit motor_status;
  11          //--------------------------------------------------
  12          extern void set_bridge(void);
  13          extern void set_pwm_wideth (unchar x);
  14          extern void sensor_read (void);
  15          //--------------------------------------------------
  16          
  17          /*---------------延时程序----------------*/
  18          void delay_ms(unint i)     //i=1就延时1ms
  19          {
  20   1          unint j =0;
  21   1          unint k = 0;
  22   1          for( k = 0; k < i; k++ )
  23   1              for( j = 0; j < 383; j++ );
  24   1      }
  25          
  26          void delay_us(unint i)     //i=1就延时1ms
  27          {
  28   1          unint j =0;
  29   1          unint k = 0;
  30   1          for( k = 0; k < i; k++ )
  31   1              for( j = 0; j < 100; j++ );
  32   1      }
  33          
  34          /*---------------启动程序----------------*/
  35          void start(void)
  36          {
  37   1              sensor_read();
  38   1      
  39   1              sb_1 = 1; 
  40   1              sb_3 = 1; 
  41   1              sb_5 = 1;
  42   1      
  43   1              sb_6 = 0;
  44   1              delay_ms(1000);
  45   1              sb_6 = 1;
  46   1      
  47   1              sb_1 = 0;
  48   1              delay_us(1);
  49   1              sb_1 = 1;
  50   1      
  51   1              XBR1 = 0x43; 
  52   1      
  53   1          for( dutycycle = 80; dutycycle < 128; dutycycle++ )
  54   1          {
  55   2              set_pwm_wideth(dutycycle);
C51 COMPILER V7.06   RUN                                                                   12/08/2008 14:15:19 PAGE 2   

  56   2                      sensor_read();
  57   2                      set_bridge();
  58   2                      delay_ms(10);
  59   2      
  60   2          }
  61   1              motor_status = 1;       
  62   1      }
  63          
  64          /*---------------停车程序----------------*/
  65          void stop(void)
  66          {
  67   1          for( ; dutycycle > 0; dutycycle-- )
  68   1          {
  69   2              set_pwm_wideth(dutycycle);
  70   2                      sensor_read();
  71   2                      set_bridge();           
  72   2          }
  73   1              motor_status = 0;
  74   1              XBR1 = 0x40;            
  75   1              sb_1 = 1; 
  76   1              sb_3 = 1; 
  77   1              sb_5 = 1; 
  78   1              sb_4 = 1; 
  79   1              sb_6 = 1; 
  80   1              sb_2 = 1; 
  81   1      }
  82          
  83          /*---------------运行----------------*/
  84          void run (void)
  85          {
  86   1              sensor_read();
  87   1              set_bridge();
  88   1      }


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