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

📄 final.lst

📁 用单片机控制电话报警的简单程序 在keil7.0编写
💻 LST
字号:
C51 COMPILER V7.06   FINAL                                                                 05/02/2006 20:20:22 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE FINAL
OBJECT MODULE PLACED IN final.OBJ
COMPILER INVOKED BY: D:\Keil7.0\C51\BIN\C51.EXE final.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include<stdio.h>
   2          #include<c8051f020.h>
   3          sbit tel_switch=P0^3;/*tel_switch是电话的总开关*/
   4          sbit tel_dail=P0^2;/*tel_dail是电话的重播按键控制端*/
   5          void initial(void);/*tel_swtich,tel_dail,以及中断控制寄存器和中断标志寄存器的初始化*/
   6          void delay(void);/*延时程序,大约延时0.6s左右,因为暂时不知道系统时钟*/
   7          void dail(void);/*拨号程序,实质是控制重播的完成*/
   8          void main()
   9          {
  10   1        initial();
  11   1        while(1)/*等待外部中断0,来自p3_2口*/
  12   1        {;}
  13   1      }
  14          void initial()
  15          {
  16   1        tel_switch=0;/*电话机的总开关关闭*/
  17   1        printf("initial:tel_switch is closed\n");/*无用*/
  18   1        tel_dail=0;/*重播功能未接通*/
  19   1        printf("initial:tel_dail is colsed\n");/*无用*/
  20   1        IE=0x81;/*开启所有中断,开启外部中断0*/
  21   1        TCON=0x01;/*外部中断0为脉冲中断,由高变低*/
  22   1      }
  23          void extern0_isr() interrupt 0
  24          {
  25   1        tel_switch=1;/*打开电话总的开关*/
  26   1        delay();/*延时一段时间*/
  27   1        dail();/*拨打电话*/
  28   1      }
  29          void delay()/*延时程序,大约为0.6s左右*/
  30          {
  31   1        unsigned char i,j;
  32   1        i=1000;
  33   1        while(i--)
  34   1        {
  35   2          for(j=0;j<600;j++){;}
  36   2        }
  37   1      }
  38          void dail()
  39          {
  40   1        tel_dail=1;/*开启重播*/
  41   1        printf("tel_dail is opened!\n");/*无用*/
  42   1        delay();/*延时一段时间*/
  43   1        tel_dail=0;/*停止重播*/
  44   1        printf("tel_switch is closed!\n");
  45   1        TMOD=0x01;/*计数器1的工作方式为1,16位计数*/
  46   1        TH0=0;/*高8位为0*/
  47   1        TL0=0;/*低8位为0*/
  48   1        TR0=1;/*开启计数*/
  49   1        for(;;)
  50   1        {
  51   2          if(TF0)/*计数溢出*/
  52   2          {
  53   3            tel_switch=0;printf("tel_switch is closed!\n");/*关闭整个电话的总开关*/
  54   3          }
  55   2        }
C51 COMPILER V7.06   FINAL                                                                 05/02/2006 20:20:22 PAGE 2   

  56   1      }


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