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

📄 yaan.lst

📁 这个是安防用的控制键盘C源程序,采用KEIL C51开发.用于控制前端解码器!
💻 LST
字号:
C51 COMPILER V7.01  YAAN                                                                   04/29/2006 16:28:40 PAGE 1   


C51 COMPILER V7.01, COMPILATION OF MODULE YAAN
OBJECT MODULE PLACED IN yaan.OBJ
COMPILER INVOKED BY: F:\Keil\C51\BIN\C51.EXE yaan.c DEBUG OBJECTEXTEND

stmt level    source

   1          #include "reg52.h"
   2          #include "main.h"
   3          #include "intrins.h"
   4          
   5          extern Uchar CamAddress;
   6          extern Uchar AuxNumb;
   7          extern Uchar U_DTemp;
   8          extern Uchar L_RTemp;
   9          extern Uchar KeyValue;
  10          extern Uchar TimeValue;
  11          
  12          extern void send_char_com (unsigned char ch);
  13          extern void shortdelay(unsigned char count);
  14          Uchar code My_Array2[4]={0x04,0x08,0x02,0x01};
  15          Uchar code My_Array3[]={0x01,0x02,0x80,0x40,0x20,0x10};
  16          
  17                                                                                                                    
             -                                                                                                                  
  18          void YAAN (Uchar i)
  19          {
  20   1      Uint k=0;
  21   1      Uchar tbuf[12];
  22   1      Uchar Temp;
  23   1      Uchar V_Rate;
  24   1      Uchar H_Rate;
  25   1      RT_CON=1;
  26   1      Temp=i;
  27   1      Code_Led=1;
  28   1      if(U_DTemp>=0x80)
  29   1      V_Rate=2*(U_DTemp-0x81);
  30   1      else
  31   1      V_Rate=2*(0x7F-U_DTemp);
  32   1      
  33   1      if(L_RTemp>=0x80)
  34   1      H_Rate=2*(L_RTemp-0x81);
  35   1      else
  36   1      H_Rate=2*(0x7F-L_RTemp);
  37   1      /*---------------------------云台控制--------------------------------------*/
  38   1        if(Temp<4 || Temp==22)
  39   1      
  40   1        {
  41   2        tbuf[0]=0x02;
  42   2        tbuf[1]=CamAddress;
  43   2        tbuf[2]=0x01;
  44   2        if(Temp<4)
  45   2        tbuf[3]=My_Array2[Temp];
  46   2        else
  47   2        tbuf[3]=0x00;
  48   2        tbuf[4]=0x00;
  49   2        tbuf[5]=tbuf[0]+tbuf[1]+tbuf[2]+tbuf[3]+tbuf[4];
  50   2        tbuf[6]=0x02;
  51   2        tbuf[7]=CamAddress;
  52   2        tbuf[8]=0x0E;
  53   2      
  54   2        if(Temp<2)
C51 COMPILER V7.01  YAAN                                                                   04/29/2006 16:28:40 PAGE 2   

  55   2        {
  56   3         tbuf[9]=0x00;
  57   3         tbuf[10]=V_Rate;
  58   3        }
  59   2        else
  60   2        {
  61   3        if(Temp!=22)
  62   3        tbuf[9]=H_Rate;
  63   3        else
  64   3        tbuf[9]=0x00;
  65   3        tbuf[10]=0x00;
  66   3        }
  67   2        
  68   2        
  69   2        
  70   2       tbuf[11]=tbuf[6]+tbuf[7]+tbuf[8]+tbuf[9]+tbuf[10];
  71   2      
  72   2       
  73   2       do
  74   2        {
  75   3         send_char_com(tbuf[k]);
  76   3         shortdelay(1);
  77   3          k++;
  78   3        } while( k<12 );
  79   2       }
  80   1      /*-------------------------镜头控制--------------------------------------*/
  81   1       if(Temp>=4 && Temp<10)                                            
  82   1       {
  83   2        tbuf[0]=0x02;
  84   2        tbuf[1]=CamAddress;
  85   2        tbuf[2]=0x01;
  86   2        if(Temp==4 || Temp==5)
  87   2        {
  88   3         tbuf[3]=0x00;
  89   3         tbuf[4]=My_Array3[Temp-4];
  90   3        }
  91   2        else
  92   2        {
  93   3         tbuf[3]=My_Array3[Temp-4];
  94   3         tbuf[4]=0x00;
  95   3        }
  96   2        tbuf[5]=tbuf[0]+tbuf[1]+tbuf[2]+tbuf[3]+tbuf[4];
  97   2      
  98   2         do
  99   2        {
 100   3         send_char_com(tbuf[k]);
 101   3         shortdelay(1);
 102   3          k++;
 103   3        } while( k<6 );
 104   2      
 105   2       }
 106   1      /*--------------------------------------------------------------------------------------*/
 107   1       if(Temp>22 && Temp<29)
 108   1       {
 109   2        tbuf[0]=0x02;
 110   2        tbuf[1]=CamAddress;
 111   2        switch(Temp)
 112   2        {
 113   3         case 23:tbuf[2]=0x05;                              //保存预置点
 114   3                 tbuf[3]=KeyValue;
 115   3                 break;
 116   3         case 24:tbuf[2]=0x02;                              //调用预置点
C51 COMPILER V7.01  YAAN                                                                   04/29/2006 16:28:40 PAGE 3   

 117   3                 tbuf[3]=KeyValue;
 118   3                 break;
 119   3         case 25:tbuf[2]=0x08;                              //清除巡航点
 120   3                 tbuf[3]=0x00;
 121   3                 break;
 122   3         case 26:tbuf[2]=0x03;                              //自动巡航
 123   3                 tbuf[3]=0x00;
 124   3                 break;
 125   3         case 27:tbuf[2]=0x06;                              //添加巡航点
 126   3                 tbuf[3]=KeyValue;
 127   3                 break;
 128   3         case 28:tbuf[2]=0x0B;                              //设置巡航停留时间
 129   3                 tbuf[3]=TimeValue;
 130   3                 break;
 131   3         default:break;
 132   3        }
 133   2        tbuf[4]=tbuf[0]+tbuf[1]+tbuf[2]+tbuf[3];
 134   2      
 135   2           do
 136   2        {
 137   3         send_char_com(tbuf[k]);
 138   3         shortdelay(1);
 139   3          k++;
 140   3        } while( k<5 );
 141   2        
 142   2       }
 143   1      /*--------------------------------------------------------------------------------------*/ 
 144   1       if(Temp>28 ||Temp==16 || Temp==17)
 145   1       {
 146   2        tbuf[0]=0x02;
 147   2        tbuf[1]=CamAddress;
 148   2        tbuf[2]=0x0f;
 149   2        switch(Temp)
 150   2        {
 151   3          case 16:tbuf[3]=0x03;                         //云台自动
 152   3                  tbuf[4]=0x00;
 153   3                  break;
 154   3          case 17:break;
 155   3          case 29:tbuf[3]=0x01;                        //水平自动速度
 156   3                  tbuf[4]=TimeValue;
 157   3                  break;
 158   3          case 30:tbuf[3]=0x02;                        //设定左边界
 159   3                  tbuf[4]=0x01;
 160   3                  break;
 161   3          case 31:tbuf[3]=0x02;                        //设定右边界
 162   3                  tbuf[4]=0x02;
 163   3                  break;
 164   3          default:break;
 165   3        }
 166   2        tbuf[5]=tbuf[0]+tbuf[1]+tbuf[2]+tbuf[3]+tbuf[4];
 167   2      
 168   2          do
 169   2        {
 170   3         send_char_com(tbuf[k]);
 171   3         shortdelay(1);
 172   3          k++;
 173   3        } while( k<6);
 174   2       }
 175   1      /*--------------------------------------------------------------------------------------*/
 176   1      
 177   1       RT_CON=0;
 178   1       Code_Led=0;
C51 COMPILER V7.01  YAAN                                                                   04/29/2006 16:28:40 PAGE 4   

 179   1      } 


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    544    ----
   CONSTANT SIZE    =     10    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      17
   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 + -