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

📄 jt 21-3.lst

📁 51单片机开发入门与典型实例
💻 LST
字号:
C51 COMPILER V7.06   JT_21_3                                                               01/07/2007 10:05:40 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE JT_21_3
OBJECT MODULE PLACED IN JT 21-3.OBJ
COMPILER INVOKED BY: C:\Keil7.06\C51\BIN\C51.EXE JT 21-3.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          
   2          /* 文件名:JT 21-3.c */
   3          /* 程序功能:交通信号灯控制 */
   4            #include <AT89X51.H>          /* 头文件 */  
   5            char count;                   /* 声明count为字符变量 */
   6            bit flag;                     /* 声明flag为位变量 */
   7            char sum =0;                   /* 声明sum为字符变量并赋初始值0 */
   8            xhd( );                       /* 信号灯函数xhd( ) */
   9           /* ――――――――  主函数(主程序) ―――――――――――*/
  10            main( )                       /* 主函数 */
  11              {  
  12   1          TMOD=0x01;                  /* 设定T0为模式1 */
  13   1          TH0=-(50000/256);           /* 设定时器初始值50000 */
  14   1          TL0=-(50000%256);  
  15   1          EA=1;                       /* 总允许中断 */
  16   1          ET0=1;                      /* 允许定时器T0中断 */
  17   1          TR0=1;                      /* 启动定时器工作 */
  18   1        
  19   1          P1=0xff;                    /* P1初始值,关闭所有信号灯 */
  20   1          xhd( );                     /* 调用信号灯函数 */
  21   1        }
  22           /* ――――――― 中断函数(中断服务程序) ―――――――― */
  23            T0_srv( ) interrupt 1 using 1  /* 中断服务程序 */
  24            {
  25   1          TH0=-(50000/256);            /* 重装定时器初始值 */
  26   1          TL0=-(50000%256); 
  27   1          count++;                     /* count加1 */ 
  28   1          if(count==20)                /* 判断count是否等于20 */
  29   1           { 
  30   2            count=0;                   /* count清0,以便从新计数 */
  31   2            flag=1;                    /* 标志位为1 */
  32   2           } 
  33   1        }
  34           /* ――――――――  信号灯函数(子程序) ―――――――― */
  35             xhd( )                        /* 信号灯函数 */
  36             {                             
  37   1           while(1)                    /* 无限循环 */ 
  38   1           {
  39   2       /* ―――――――――――――*/
  40   2             P1_3=0; P1_2=0;           /*东西红灯亮,南北绿灯亮 */ 
  41   2             while( sum<15)            /* 循环15次,延时15秒 */
  42   2              {
  43   3                while( ! flag );       /* 等待1秒 */
  44   3                flag=0;                /* 标志位清0 */
  45   3                sum++;                 /* sum加1 */
  46   3              }
  47   2            sum=0;                     /* sum清0,以便从新计数 */
  48   2       /* ―――――――――――――*/
  49   2            P1_2=1; P1_1=0;            /* 南北绿灯灭,黄灯亮 */      
  50   2        while( sum<3)                  /* 循环3次,延时3秒 */
  51   2         {
  52   3           while(! flag);
  53   3           flag=0;
  54   3           sum++;
  55   3          }
C51 COMPILER V7.06   JT_21_3                                                               01/07/2007 10:05:40 PAGE 2   

  56   2         sum=0;
  57   2       /*―――――――――――――*/
  58   2         P1_1=1; P1_0=0;               /* 南北黄灯灭,红灯亮 */
  59   2         P1_3=1; P1_5=0;               /* 东西红灯灭,绿灯亮 */
  60   2        while( sum<10)                 /* 延时10秒 */
  61   2         {
  62   3          while(! flag);
  63   3          flag=0;
  64   3          sum++;
  65   3         }
  66   2        sum=0;
  67   2       /* ―――――――――――――*/
  68   2        P1_5=1; P1_4=0;                /*东西绿灯灭,黄灯亮 */
  69   2        while( sum<3)                  /* 延时3秒 */
  70   2          {
  71   3           while(! flag);
  72   3           flag=0;
  73   3           sum++;
  74   3          }
  75   2         sum=0;
  76   2       /* ――――――――――――― */
  77   2         P1_4=1; P1_0=1;               /* 东西黄灯灭,南北红灯灭 */ 
  78   2        }
  79   1       }
  80          
  81          
  82          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    140    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      2    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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