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

📄 jtd.lst

📁 交通灯程序
💻 LST
字号:
C51 COMPILER V7.06   JTD                                                                   04/06/2009 16:01:38 PAGE 1   


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

stmt level    source

   1          #include <reg52.h>
   2          #define uchar unsigned char
   3          #define uint unsigned int
   4          sbit wei1=P2^4;
   5          sbit wei2=P2^5;
   6          sbit wei3=P2^6;
   7          sbit wei4=P2^7;
   8          uchar code table[]={
   9          0xf0,0xf1,0xf2,0xf3,
  10          0xf4,0xf5,0xf6,0xf7,
  11          0xf9};
  12          uchar t0,shu,shi,ge,flag,temp,gg,dd;
  13          
  14          void delay(uint z)
  15          {
  16   1              uint t1,y;
  17   1              for(t1=z;t1>0;t1--)
  18   1                      for(y=110;y>0;y--);
  19   1      }
  20          void init()
  21          {
  22   1              shu=94;
  23   1              TMOD=0x01;
  24   1              TH0=(65536-50000)/256;
  25   1              TL0=(65536-50000)%256;
  26   1              EA=1;
  27   1              ET0=1;
  28   1              TR0=1;
  29   1              P1=0xf3;//初始状态为状态1
  30   1              flag=0;
  31   1      }
  32          void display()
  33          {               
  34   1                      if(shu<5)
  35   1                              {
  36   2                                      temp=shu;
  37   2                              }
  38   1                      else if(shu<35)
  39   1                              {
  40   2                                      temp=shu-5;
  41   2                              }
  42   1                      else
  43   1                              {
  44   2                                      temp=shu-35;
  45   2                              }
  46   1                      gg=shu/10;
  47   1                      dd=shu%10;
  48   1                      shi=temp/10;
  49   1                      ge=temp%10;
  50   1                      if(flag==0)
  51   1                              {
  52   2                                      P0=table[shi];wei1=1;delay(1);wei1=0;
  53   2                                      P0=table[ge];wei2=1;delay(1);wei2=0;
  54   2                                      P0=table[gg];wei3=1;delay(1);wei3=0;
  55   2                                      P0=table[dd];wei4=1;delay(1);wei4=0;
C51 COMPILER V7.06   JTD                                                                   04/06/2009 16:01:38 PAGE 2   

  56   2                              }
  57   1                      else
  58   1                              {
  59   2                                      P0=table[gg];wei1=1;delay(1);wei1=0;
  60   2                                      P0=table[dd];wei2=1;delay(1);wei2=0;
  61   2                                      P0=table[shi];wei3=1;delay(1);wei3=0;
  62   2                                      P0=table[ge];wei4=1;delay(1);wei4=0;
  63   2                              }
  64   1      }
  65          void state()
  66          {       
  67   1              
  68   1              
  69   1              if(flag==0)
  70   1                {     
  71   2                      if(shu==35)
  72   2                        {
  73   3                              P1=0xb3;//状态2,主干道左转弯灯显示状态
  74   3                        }     
  75   2                              
  76   2                      if(shu==5)
  77   2                        {
  78   3                              P1=0xf5;//状态3,东西道黄灯,南北道红灯 11110101
  79   3                        }
  80   2                      
  81   2                      if(shu==0)
  82   2                        {
  83   3                              shu=94;
  84   3                              P1=0xde;//状态4,东西道红灯,南北道绿灯 11011110
  85   3                          flag=1;
  86   3                        }
  87   2                }
  88   1              
  89   1              else
  90   1                {
  91   2                      if(shu==35)
  92   2                        {
  93   3                              P1=0x5e;//状态5,次干道左转弯显示状态
  94   3                        }     
  95   2                      if(shu==5)
  96   2                        {
  97   3                              P1=0xee;//状态6,东西道红灯,南北道黄灯 11101110
  98   3                        }
  99   2                      if(shu==0)
 100   2                        {
 101   3                              shu=94;
 102   3                              P1=0xf3;//状态1,东西道绿灯,南北道红灯 11110011
 103   3                          flag=0;
 104   3                        }
 105   2                }                     
 106   1      }
 107          
 108          void main()
 109          {
 110   1              wei1=0;
 111   1              wei2=0;
 112   1              wei3=0;
 113   1              wei4=0;
 114   1              init();
 115   1              while(1)
 116   1              {
 117   2                      display();
C51 COMPILER V7.06   JTD                                                                   04/06/2009 16:01:38 PAGE 3   

 118   2                      state();
 119   2              }
 120   1      }
 121          
 122          void timer0() interrupt 1
 123          {
 124   1              TH0=(65536-50000)/256;
 125   1              TL0=(65536-50000)%256;
 126   1              t0++;
 127   1              if(t0==20)
 128   1              {
 129   2                      t0=0;
 130   2                      shu--;
 131   2              }
 132   1      
 133   1      }


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