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

📄 ex.lst

📁 这是购买周立功的试验箱时候松的源代码。很经典的代码。希望学习单片机的朋友好好研究。短小精悍。有意思。这是第一部分。
💻 LST
字号:
C51 COMPILER V7.07   EX                                                                    03/03/2004 11:20:31 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE EX
OBJECT MODULE PLACED IN Ex.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE Ex.c BROWSE INTVECTOR(0X8000) DEBUG OBJECTEXTEND

stmt level    source

   1          #include "reg52.h"
   2          
   3          sbit P1_0=P1^0;
   4          sbit P1_1=P1^1;
   5          sbit P1_2=P1^2;
   6          
   7          unsigned char PWMH;                     //高电平脉冲的个数
   8          unsigned char PWM;                              //PWM周期
   9          unsigned char COUNTER;  
  10          
  11          void K1CHECK();
  12          void K2CHECK();
  13          
  14          void INTTO() interrupt 1 
  15          {
  16   1              COUNTER++;                              //计数值加1
  17   1              if((COUNTER!=PWMH)&&(COUNTER==PWM))             //如果等于高电平脉冲数
  18   1              {
  19   2                      COUNTER=1;                      //计数器复位
  20   2                      P1_0=1;                         //P1.0为高电平
  21   2              }
  22   1              else if(COUNTER==PWMH)
  23   1                      P1_0=0;                         //P1.0变为低电平
  24   1      }
  25          
  26          main()
  27          {
  28   1              PWMH=0x02;      
  29   1              COUNTER=0x01;
  30   1              PWM=0x15;
  31   1              TMOD=0x02;                      //定时器0在模式2下工作
  32   1              TL0=0x38;                       //定时器每200us产生一次溢出
  33   1              TH0=0x38;                       //自动重装的值
  34   1              ET0=1;                          //使能定时器0中断
  35   1              EA=1;                           //使能总中断
  36   1              TR0=1;                          //开始计时
  37   1      
  38   1              while(1)
  39   1              {
  40   2                      if(P1_1==0) 
  41   2                              K1CHECK();//扫描KEY1,
  42   2                      if(P1_2==0)
  43   2                              K2CHECK();//扫描KEY2,如果按下KEY2,跳转到KEY2处理程序
  44   2              }                               
  45   1      }
  46          void K1CHECK()
  47          {
  48   1              while(P1_1==0);
  49   1              if(PWMH!=PWM)
  50   1              {
  51   2                      PWMH++;
  52   2                      if(PWMH==PWM)
  53   2                      {
  54   3                              TR0=0;
  55   3                              P1_0=1; 
C51 COMPILER V7.07   EX                                                                    03/03/2004 11:20:31 PAGE 2   

  56   3                      }
  57   2                      else
  58   2                      {
  59   3                              if(PWMH==0x02)
  60   3                              {
  61   4                                      TR0=1;  
  62   4                              }
  63   3                      }
  64   2              }
  65   1      }
  66          void K2CHECK()
  67          {
  68   1      unsigned char TEMP;
  69   1              while(P1_2==0);
  70   1              if(PWMH!=0x01)
  71   1              {
  72   2                      PWMH--;
  73   2                      TEMP=PWM;
  74   2                      TEMP--;
  75   2                      if(PWMH==0x01)
  76   2                      {
  77   3                              TR0=0;
  78   3                              P1_0=0; 
  79   3                      }
  80   2                      else
  81   2                      {
  82   3                              if(PWMH==TEMP)
  83   3                              {
  84   4                                      TR0=1;  
  85   4                              }
  86   3                      }
  87   2              }
  88   1      }
  89          


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