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

📄 main.lst

📁 利用8051单片机实现简单的红外控制以及中断控制的源码,编译环境为KEIL
💻 LST
字号:
C51 COMPILER V7.10   MAIN                                                                  01/26/2007 08:49:56 PAGE 1   


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

line level    source

   1          #include "reg52.h"
   2          #include "stdio.h"
   3          
   4          sbit int0 = P3^0;
   5          sbit int1 = P3^1;
   6          sbit ira_set = P3^7;
   7          sbit ira_get = P3^6;
   8          
   9          unsigned char Delay(unsigned char  no);
  10          
  11          void ld_int0 (void) interrupt 0 using 1         //外部中断0响应
  12          {
  13   1              Delay(10);
  14   1              {
  15   2                      ira_set = 0;                    //使能红外
  16   2                      printf("enable");
  17   2              }
  18   1      }
  19          
  20          void ld_int1 (void) interrupt 2 using 1         //外部中断1响应
  21          {
  22   1              Delay(10);
  23   1              {
  24   2                      ira_set = 1;                    //禁用红外
  25   2                      printf("disable");
  26   2              }
  27   1      }
  28          
  29          void  main()
  30          {
  31   1          unsigned char cou;
  32   1              
  33   1              /*定义发送缓冲区*/
  34   1              SCON  = 0x50;                   //8位;模式1;允许接收
  35   1          TMOD |= 0x20;               //设定定时器工作方式
  36   1          TH1   = 0xfd;               //设定波特率9600@11.0592M    
  37   1          TR1   = 1;                  //启动定时器1 
  38   1          TI    = 1;                  //设置TI     
  39   1              IE    = 0x85;                   
  40   1      
  41   1              P1 = 0xAA;
  42   1      
  43   1              printf("Start");
  44   1      
  45   1              for(;;)
  46   1              {
  47   2                      if(ira_get == 0)//扫描红外状态
  48   2                      {
  49   3                              Delay(10);//去抖
  50   3                              if(ira_get == 0)
  51   3                              {
  52   4                                      P1 = ~P1;
  53   4                                      SBUF = cou++;//在串口打印次数
  54   4                              }
  55   3                      }
C51 COMPILER V7.10   MAIN                                                                  01/26/2007 08:49:56 PAGE 2   

  56   2              }
  57   1      }
  58          
  59          unsigned char Delay(unsigned char  no)
  60          { 
  61   1              unsigned char  i,j;                                     //延时参数
  62   1      
  63   1              for(; no>0; no--)
  64   1              { 
  65   2                      for(i=0; i<100; i++)
  66   2                      for(j=0; j<100; j++);
  67   2              }
  68   1              return 0; 
  69   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    154    ----
   CONSTANT SIZE    =     21    ----
   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 + -