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

📄 current2.lst

📁 基于485的51单片机多机通讯程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE CURRENT2
OBJECT MODULE PLACED IN E:\NEWMAC~1\051013\CURRENT\CURRENT2.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE E:\NEWMAC~1\051013\CURRENT\CURRENT2.C DB SB OE

stmt level    source

   1          #include <current.h>
   2          sbit con_hf=P4^0;
   3          sbit con_water=P4^1;
   4          sbit con_gas1=P4^6;
   5          sbit con_gas2=P4^7;
   6          sbit current_out=P4^4;
   7          sbit current_enable=P4^5;
   8          sbit send_enable=P3^4;
   9          sbit stop=P3^5;
  10          sbit gate=P4^2;
  11          
  12          xdata unsigned char sbuffer[7]  _at_ 0x7000;
  13          xdata unsigned char rbuffer[55] _at_ 0x7007;
  14          xdata unsigned int  *point      _at_ 0x703E;
  15          xdata unsigned int  adl         _at_ 0x7040;
  16          xdata unsigned int  adh         _at_ 0x7042;
  17          xdata unsigned int  ad          _at_ 0x7044;
  18          xdata unsigned int  numbers     _at_ 0x7046;
  19          xdata unsigned int  I1          _at_ 0x7048;
  20          xdata unsigned int  I2          _at_ 0x704A;
  21          xdata unsigned int  ad_v        _at_ 0x704C;
  22          xdata unsigned int  ad_i        _at_ 0x704E;
  23          xdata unsigned long delt        _at_ 0x7050;
  24          xdata unsigned long delt1       _at_ 0x7054;
  25          xdata unsigned long c_t0        _at_ 0x7058;
  26          xdata unsigned long AD1         _at_ 0x705C;
  27          xdata unsigned long AD2         _at_ 0x7060;
  28          xdata unsigned long AD3         _at_ 0x7064;
  29          xdata unsigned long AD4         _at_ 0x7068;
  30          xdata unsigned long AD5         _at_ 0x706C;
  31          xdata unsigned long da          _at_ 0x7070;
  32          xdata unsigned char c_cm1       _at_ 0x7074;
  33          xdata unsigned char n_pulse     _at_ 0x7075;
  34          xdata unsigned char n_base      _at_ 0x7076;
  35          xdata unsigned int IM_ahf       _at_ 0x7077;
  36          xdata unsigned int IMM_ahf      _at_ 0x7079;
  37          xdata unsigned int IB_ahf       _at_ 0x707B;
  38          xdata unsigned int IBB_ahf      _at_ 0x707D;
  39          xdata unsigned char IML_ahf     _at_ 0x707F;
  40          xdata unsigned char IMH_ahf     _at_ 0x7080;
  41          xdata unsigned char IMML_ahf    _at_ 0x7081;
  42          xdata unsigned char IMMH_ahf    _at_ 0x7082;
  43          xdata unsigned char IBL_ahf     _at_ 0x7083;
  44          xdata unsigned char IBH_ahf     _at_ 0x7084;
  45          xdata unsigned char IBBL_ahf    _at_ 0x7085;
  46          xdata unsigned char IBBH_ahf    _at_ 0x7086;
  47          xdata unsigned char COMM        _at_ 0X7087;
  48          xdata unsigned char SLA         _at_ 0X7088;
  49          xdata unsigned char FF          _at_ 0X7089;
  50          xdata unsigned char GET         _at_ 0X708A;
  51          xdata unsigned char S_ANSW      _at_ 0X708B;
  52          xdata unsigned char R_ANSW      _at_ 0X708C;
  53          xdata unsigned char POINTER0    _at_ 0X708D;
  54          xdata unsigned char POINTER1    _at_ 0X708E;
  55          xdata unsigned char work        _at_ 0X708F;
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 2   

  56          xdata unsigned char RSUM        _at_ 0X7090;
  57          xdata unsigned char SSUM        _at_ 0X7091;
  58          xdata unsigned char err         _at_ 0x7092;
  59          xdata unsigned char tab2        _at_ 0x7093;
  60          xdata unsigned char tab3        _at_ 0x7094;
  61          xdata unsigned char c_adc       _at_ 0x7095;
  62          xdata unsigned char c_t1        _at_ 0x7096;
  63          xdata unsigned char p_sec       _at_ 0x7097;
  64          xdata unsigned char s_byte_nums _at_ 0x7098;
  65          xdata unsigned char r_byte_nums _at_ 0x7099;
  66          xdata unsigned char nonce_sec   _at_ 0x709A;
  67          xdata unsigned char c_cm2       _at_ 0X709B;
  68          xdata unsigned char avc_ok      _at_ 0X709C;
  69          xdata unsigned char delt_state  _at_ 0X709D;
  70          xdata unsigned int  I11         _at_ 0X709E;
  71          xdata unsigned int  I12         _at_ 0X70A0;
  72          xdata unsigned int  I21         _at_ 0X70A2;
  73          xdata unsigned int  I22         _at_ 0X70A4;
  74          xdata unsigned int  delt_ahf    _at_ 0X70A6;
  75          xdata unsigned long t           _at_ 0X70A8;
  76          xdata unsigned long c_ahf_p     _at_ 0X70AC;
  77          xdata unsigned long c_ahf_b     _at_ 0X70B0;
  78          xdata unsigned int  IM          _at_ 0x70B4;
  79          xdata unsigned int  IB          _at_ 0x70B6;
  80          xdata unsigned char IML         _at_ 0x70B8;
  81          xdata unsigned char IMH         _at_ 0x70B9;
  82          xdata unsigned char IBL         _at_ 0x70BA;
  83          xdata unsigned char IBH         _at_ 0x70BB;
  84          xdata unsigned long out1        _at_ 0x70BC;
  85          xdata unsigned long out2        _at_ 0x70C0;
  86          xdata float temp_delt           _at_ 0X70C4;
  87          
  88          bit receive_p_out,receive_p_in,demand,in_sector,YOUHU,ad_finish,
  89              pre_melt_ok,igniting,new_sec,close_gas1,close_gas2,i_v,decrease,overtime,
  90              start,urgent_stop,edge,resend,send,called,open_gas1,open_gas2,close_gas1_ok,
  91              close_gas2_ok,close_gas_ok,ans,i_slope_ok,need_para,to_begin,ignit_ok,
  92              current_add,current_dec,kk,err_ok,current_err,ahf_ok,ahf_p_b;
  93          
  94          void delay(unsigned int num)
  95          {
  96   1        data unsigned int i,ii;
  97   1        for(i=0;i<num;i++)
  98   1         {
  99   2           for(ii=0;ii<255;ii++);
 100   2         }
 101   1      }
 102          
 103          void start_i2()
 104          {
 105   1         data unsigned int time;
 106   1         P1_6=1;              //SCL
 107   1         P1_7=1;              //SDA
 108   1         S1CON=0x47;          //ENS1=1 STA=0 STO=0 SI=0 AA=1
 109   1         PS1=1;FF=0;
 110   1         EA=1;
 111   1         ES1=1;
 112   1         STA=1;
 113   1         time=0;
 114   1         do
 115   1           {
 116   2            time++;
 117   2            if(time>10000)
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 3   

 118   2                {
 119   3                 FF=1;
 120   3                }
 121   2           }while(FF==0);
 122   1         FF=0;
 123   1         ES1=0;
 124   1      }
 125          
 126          void start_i2a()
 127          {
 128   1         P1_6=1;              //SCL
 129   1         P1_7=1;              //SDA
 130   1         S1CON=0x47;          //ENS1=1 STA=0 STO=0 SI=0 AA=1
 131   1         PS1=1;
 132   1         EA=1;
 133   1         ES1=1;
 134   1         STA=1;
 135   1      }
 136          
 137          void ini_sbuf(unsigned char a,b,c,d,e,f,g)
 138          {
 139   1              sbuffer[0]=a;
 140   1              sbuffer[1]=b;
 141   1              sbuffer[2]=c;
 142   1              sbuffer[3]=d;
 143   1              sbuffer[4]=e;
 144   1              sbuffer[5]=f;
 145   1              sbuffer[6]=g;
 146   1      }
 147          
 148          unsigned char get_byte_nums(unsigned char type)
 149          {
 150   1              unsigned char numbers;
 151   1              switch(type)
 152   1              {
 153   2                      case    infor_sec:
 154   2                      case    command:
 155   2                      case    program:
 156   2                      case    answer:         numbers=4;
 157   2                                              break;
 158   2                      case    err_infor:
 159   2                      case    parameter1:     numbers=5;
 160   2                                              break;
 161   2                      case    parameter:
 162   2                      case    infor:          numbers=6;
 163   2                                              break;
 164   2                      case    parameter2:     numbers=7;
 165   2                                              break;
 166   2                      case    call_result:    numbers=8;
 167   2                                              break;
 168   2                      case    p_out_sec:      numbers=55;
 169   2                                              break;
 170   2                      case    p_in_sec:       numbers=24;
 171   2                                              break;
 172   2                      case    edit_sec:       numbers=64;
 173   2                                              break;
 174   2                      default:                break;
 175   2              }
 176   1              return numbers;
 177   1      }
 178          
 179          void TR_noans()
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 4   

 180          {
 181   1              REN=0;
 182   1              POINTER0=0;
 183   1              SSUM=0;
 184   1              send=1;
 185   1              send_enable=0;
 186   1              c_t1=0;
 187   1              TR1=1;
 188   1              while(POINTER0<s_byte_nums);
 189   1              TR1=0;
 190   1              send_enable=1;
 191   1              REN=1;
 192   1      }
 193          
 194          void TR_ans()
 195          {
 196   1              ans=1;
 197   1              REN=0;
 198   1              POINTER1=0;
 199   1              RSUM=0;
 200   1      //      TB8=1;
 201   1              POINTER0=0;
 202   1              SSUM=0;
 203   1              send=1;
 204   1              send_enable=0;
 205   1              c_t1=0;
 206   1              TR1=1;
 207   1              while(POINTER0<s_byte_nums);
 208   1              TR1=0;
 209   1              send_enable=1;
 210   1              if(overtime==1)
 211   1                      overtime=0;
 212   1      
 213   1              REN=1;
 214   1              send=0;
 215   1              c_t1=0;
 216   1              TR1=1;
 217   1              while(POINTER1<r_byte_nums&&overtime==0);
 218   1              TR1=0;
 219   1              POINTER1=0;
 220   1              RSUM=0;
 221   1              if(overtime==1)
 222   1              {
 223   2                      err=2;
 224   2                      overtime=0;
 225   2              }
 226   1              ans=0;
 227   1      }
 228          
 229          void com_type()
 230          {
 231   1              switch(rbuffer[2])
 232   1              {
 233   2                      case com_calling:       called=1;break;
 234   2                      case com_start:         start=1;break;
 235   2                      case com_decrease:      decrease=1;break;       //衰减
 236   2      //              case com_decrease_ok:   kk=0;break;
 237   2                      case com_current_add:   current_add=1;break;    //电流加
 238   2                      case com_current_dec:   current_dec=1;break;    //电流减
 239   2                      case com_demand:        demand=1;break;
 240   2                      case com_open_gas1:     open_gas1=1;break;
 241   2                      case com_open_gas2:     open_gas2=1;break;
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 5   

 242   2                      case com_close_gas1:    close_gas1=1;break;
 243   2                      case com_close_gas2:    close_gas2=1;break;
 244   2                      case com_ignit:         igniting=1;break;
 245   2                      case com_ignit_ok:      ignit_ok=1;break;
 246   2                      case com_i_slope_ok:    i_slope_ok=1;break;
 247   2                      case com_pre_melt_ok:   pre_melt_ok=1;break;
 248   2                      case com_need_para:     need_para=1;break;
 249   2                      case com_goto_begin:    to_begin=1;break;
 250   2                      case com_err_ok:        err_ok=1;break;
 251   2                      default:                 break;
 252   2              }
 253   1      }
 254          
 255          void data_type()                                                //对接收到的数据分辨类型

⌨️ 快捷键说明

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