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

📄 shiyan.lst

📁 51的PWM
💻 LST
字号:
C51 COMPILER V6.12  SHIYAN                                                                 05/31/2008 10:36:52 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE SHIYAN
OBJECT MODULE PLACED IN .\shiyan.OBJ
COMPILER INVOKED BY: D:\keil\C51\BIN\C51.EXE .\shiyan.c DEBUG OBJECTEXTEND

stmt level    source

   1          #include<AT89x51.H>
   2          sbit P10=P1^0;
   3          //接在电动机中的一个口
   4          sbit P11=P1^1;
   5          //接在电动机中的另一个口
   6          sbit P32=P3^2;
   7          //使电动机快速转动的按钮
   8          sbit P33=P3^3;
   9          //使电动机正转的按钮
  10          sbit P34=P3^4;
  11          //使电动机反转的按钮
  12          sbit P35=P3^5;
  13          //使电动机慢速转动的按钮
  14          /*************延时函数******************/
  15          void delay(unsigned char i)//延时1ms的子程序
  16          {
  17   1      unsigned char j;
  18   1      for(;i>0;i--)
  19   1      for(j=0;j<248;j++);
  20   1      }
  21          /*********主程序**************/
  22          main()
  23          {
  24   1      while(1)
  25   1      //主循环,使单片机一直检测各个端口
  26   1      {
  27   2      //如果没有一个键按下时,则电机停止不动
  28   2       if(P32==1&P33==1&P34==1&P35==1)
  29   2      //如果电机的两个端口电平一样时,电机不转
  30   2       {P10=1;P11=1;}
  31   2      
  32   2      
  33   2      //如果按下快速转动的键时,先软件消抖
  34   2        if(P32==0)
  35   2       {
  36   3        delay(2);
  37   3        if(P32==0)
  38   3        {
  39   4         while(P35==1)   //建立在P35没有按下的基础上,如果按下P34口时
  40   4                         //,然后再建立在没有按下P33和P35时,使电机转动,
  41   4                         //否则跳出循环
  42   4        {
  43   5       if(P34==0)
  44   5          {
  45   6        delay(1);//按下P34口是,有个软件延时
  46   6                 //消除抖动
  47   6       if(P34==0)
  48   6          {
  49   7        while(P33==1&P35==1)  
  50   7       {P10=1;P11=0;}  //使电机向一个方向转动
  51   7           } 
  52   6          }
  53   5      
  54   5           if(P33==0)//按下P33口是,有个软件延时
  55   5          {           //消除抖动
C51 COMPILER V6.12  SHIYAN                                                                 05/31/2008 10:36:52 PAGE 2   

  56   6           delay(1);
  57   6          if(P33==0)
  58   6             {
  59   7         while(P34==1&P35==1)
  60   7       {P10=0;P11=1;}   //使电机向另一个方向转动
  61   7             }
  62   6           }
  63   5         }
  64   4        }
  65   3       }
  66   2      
  67   2      //如果按下慢速转动的键时,先软件消抖
  68   2       if(P35==0)
  69   2      {
  70   3      delay(2);
  71   3       if(P35==0)
  72   3      {
  73   4      while(P32==1)     
  74   4      {
  75   5      
  76   5                       //建立在P32没有按下的基础上,如果按下P33口时
  77   5                      //,然后再建立在没有按下P34和P32时,使电机转动,
  78   5           if(P33==0)    
  79   5           {           //否则跳出循环
  80   6          delay(1);
  81   6         if(P33==0)
  82   6         {
  83   7           P10=0;
  84   7          while(P34==1&P32==1)
  85   7         {  
  86   8          P11=1;
  87   8          P11=0;
  88   8        }
  89   7         }
  90   6           }
  91   5      if(P34==0)//按下P34口是,有个软件延时
  92   5      delay(1);  //消除抖动
  93   5      if(P34==0)
  94   5      {  P11=0;
  95   6        while(P33==1&P32==1)
  96   6         {
  97   7          P10=1;
  98   7          P10=0;
  99   7            }
 100   6           }
 101   5         }
 102   4      }
 103   3      }
 104   2      }
 105   1      }
 106          
 107          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    263    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
C51 COMPILER V6.12  SHIYAN                                                                 05/31/2008 10:36:52 PAGE 3   

END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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