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

📄 tenms.lst

📁 最先进的信号机程序,经过很多重要场合测试通过
💻 LST
字号:
C51 COMPILER V6.02  TENMS                                                                  08/02/2006 14:44:14 PAGE 1   


C51 COMPILER V6.02, COMPILATION OF MODULE TENMS
OBJECT MODULE PLACED IN D:\GB_ASC\TENMS.OBJ
COMPILER INVOKED BY: e:\comp51\COMP51V6\C51.EXE D:\GB_ASC\TENMS.C DB SB OE LARGE

stmt level    source

   1           #include <tenms.h>
   2          
   3          /*****************************************************************************************************/
   4          //     定时器0中断
   5          /*****************************************************************************************************/
   6          void timer0_ms() interrupt 1 using 2
   7          {
   8   1          TH0=-(18432/256);  /*9216  10毫秒定时*/
   9   1          TL0=-(18432%256);
  10   1      
  11   1          lei++;
  12   1          if(lei>50)
  13   1          {
  14   2             lei = 0;
  15   2             FrontLed = !FrontLed;
  16   2          }  
  17   1       //   cljc();                //车辆检测
  18   1       //   phase_loop();          //相位流量检测
  19   1          read_state();
  20   1          far_detect();
  21   1          lei++;
  22   1          lei--;
  23   1          IP=0X10;
  24   1      }
  25          /*****************************************************************************************************/
  26          //    输出灯组检测函数
  27          /*****************************************************************************************************/
  28          void  read_state(void)  using 2
  29          {
  30   1          uint    lod;
  31   1          uchar    i;
  32   1          gl_read=XBYTE[0XC200];       //绿灯1-8 /*实际信息,来自硬件端口*/
  33   1          yl_read=XBYTE[0XC201];       //黄灯1-8
  34   1          rl_read=XBYTE[0XC202];       //红灯1-8
  35   1          gh_read=XBYTE[0XC280];       //绿灯9-16
  36   1          yh_read=XBYTE[0XC281];       //黄灯9-16
  37   1          rh_read=XBYTE[0XC282];       //红灯9-16
  38   1      
  39   1          g_read=gh_read*256+gl_read;    /*16位分别代表16个灯组的绿灯情况*/
  40   1          y_read=yh_read*256+yl_read;    /*16位分别代表16个灯组的黄灯情况*/
  41   1          r_read=rh_read*256+rl_read;    /*16位分别代表16个灯组的红灯情况*/
  42   1      
  43   1          g_out=greenh*256+greenl;       /*16位分别代表16个灯组的绿灯程序输出情况*/
  44   1          y_out=yelh*256+yell;           /*16位分别代表16个灯组的黄灯程序输出情况*/
  45   1          r_out=redh*256+redl;           /*16位分别代表16个灯组的红灯程序输出情况*/
  46   1      
  47   1      
  48   1       for(i=0;i<16;i++){
  49   2           lod=0x0001;
  50   2           lod=(lod<<i);
  51   2           if(((g_out&lod)==lod)&&((g_read&lod)!=lod))
  52   2               {if(gtemp1[i]==10)gtemp1[i]=10;
  53   3                else
  54   3                gtemp1[i]++;
  55   3                }
C51 COMPILER V6.02  TENMS                                                                  08/02/2006 14:44:14 PAGE 2   

  56   2           else gtemp1[i]=0;
  57   2           if(((y_out&lod)==lod)&&((y_read&lod)!=lod))
  58   2               {if(ytemp1[i]==10)
  59   3                 ytemp1[i]=10;
  60   3                else
  61   3                ytemp1[i]++;
  62   3                }
  63   2           else ytemp1[i]=0;
  64   2           if(((r_out&lod)==lod)&&((r_read&lod)!=lod))
  65   2               {if(rtemp1[i]==10)
  66   3                rtemp1[i]=10;
  67   3                else
  68   3                rtemp1[i]++;
  69   3                }
  70   2           else rtemp1[i]=0;
  71   2           if(((g_read&lod)==lod)&&((g_out&lod)!=lod))
  72   2                {if(gtemp2[i]==70)
  73   3                 gtemp2[i]=70;
  74   3                else
  75   3                gtemp2[i]++;
  76   3                }
  77   2           else gtemp2[i]=0;
  78   2           if(((y_read&lod)==lod)&&((y_out&lod)!=lod))
  79   2                {if(ytemp2[i]==70)ytemp2[i]=70;
  80   3                else
  81   3                ytemp2[i]++;
  82   3                }
  83   2           else ytemp2[i]=0;
  84   2           if(((r_read&lod)==lod)&&((r_out&lod)!=lod))
  85   2                {if(rtemp2[i]==70)rtemp2[i]=70;
  86   3                else
  87   3                rtemp2[i]++;
  88   3                }
  89   2            else rtemp2[i]=0;
  90   2      
  91   2          if(gtemp1[i]==10)
  92   2           g_load1=(g_load1|lod); /*程序输出但采样没有,驱而不亮*/
  93   2           if(ytemp1[i]==10)
  94   2           y_load1=(y_load1|lod); /*程序输出但采样没有,驱而不亮*/
  95   2      
  96   2           if(rtemp1[i]==10)
  97   2           r_load1=(r_load1|lod); /*程序输出但采样没有,驱而不亮*/
  98   2           if(gtemp2[i]==70)
  99   2           g_load2=(g_load2|lod); /*程序没有输出但采样有,不驱而亮*/
 100   2           if(ytemp2[i]==70)
 101   2           y_load2=(y_load2|lod); /*程序没有输出但采样有,不驱而亮*/
 102   2           if(rtemp2[i]==70)
 103   2           r_load2=(r_load2|lod); /*程序没有输出但采样有,不驱而亮*/
 104   2      
 105   2        }
 106   1      }
C51 COMPILER V6.02  TENMS                                                                  08/02/2006 14:44:14 PAGE 3   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


greenl . . . . . . . . . . . . . . . .  EXTERN   XDATA  U_CHAR   -----  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
T0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
T1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
timer0_ms. . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
RD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
far_detect . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
IP . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B8H  1
g_load1. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0000H  2
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
g_load2. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0002H  2
INT0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
INT1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
g_out. . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0004H  2
read_state . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  lod. . . . . . . . . . . . . . . . .  AUTO     XDATA  U_INT    0000H  2
  i. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0015H  1
FrontLed . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0094H  1
PS . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
redh . . . . . . . . . . . . . . . . .  EXTERN   XDATA  U_CHAR   -----  1
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
g_error1 . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0006H  2
r_load1. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0008H  2
g_error2 . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    000AH  2
r_load2. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    000CH  2
redl . . . . . . . . . . . . . . . . .  EXTERN   XDATA  U_CHAR   -----  1
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
r_out. . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    000EH  2
y_load1. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0010H  2
y_load2. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0012H  2
r_error1 . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0014H  2
r_error2 . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0016H  2
y_out. . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0018H  2
yelh . . . . . . . . . . . . . . . . .  EXTERN   XDATA  U_CHAR   -----  1
yell . . . . . . . . . . . . . . . . .  EXTERN   XDATA  U_CHAR   -----  1
y_error1 . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    001AH  2
y_error2 . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    001CH  2
lei. . . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   001EH  1
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
ing. . . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   001FH  1
IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
TF0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008DH  1
TF1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008FH  1
RB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009AH  1
TH0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008CH  1
EX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A8H  1
IT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0088H  1
gh_read. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   0020H  1
TB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009BH  1
EX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AAH  1
C51 COMPILER V6.02  TENMS                                                                  08/02/2006 14:44:14 PAGE 4   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


IT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008AH  1
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SM0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009FH  1
TL0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008AH  1
gtemp1 . . . . . . . . . . . . . . . .  PUBLIC   XDATA  ARRAY    0021H  16
SM1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009EH  1
gl_read. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   0031H  1
gtemp2 . . . . . . . . . . . . . . . .  PUBLIC   XDATA  ARRAY    0032H  16
SM2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009DH  1
PT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B9H  1
PT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
RS0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D3H  1
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
RS1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D4H  1
TR1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008EH  1
PX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B8H  1
rh_read. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   0042H  1
PX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
rtemp1 . . . . . . . . . . . . . . . .  PUBLIC   XDATA  ARRAY    0043H  16
rl_read. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   0053H  1
rtemp2 . . . . . . . . . . . . . . . .  PUBLIC   XDATA  ARRAY    0054H  16
yh_read. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   0064H  1
ytemp1 . . . . . . . . . . . . . . . .  PUBLIC   XDATA  ARRAY    0065H  16
yl_read. . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_CHAR   0075H  1
ytemp2 . . . . . . . . . . . . . . . .  PUBLIC   XDATA  ARRAY    0076H  16
g_read . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0086H  2
REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
r_read . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    0088H  2
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1
y_read . . . . . . . . . . . . . . . .  PUBLIC   XDATA  U_INT    008AH  2
greenh . . . . . . . . . . . . . . . .  EXTERN   XDATA  U_CHAR   -----  1


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1025    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =    140       2
   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 + -