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

📄 current_1027.lst

📁 基于485的51单片机多机通讯程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.06   CURRENT_1027                                                          01/13/2006 15:18:05 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE CURRENT_1027
OBJECT MODULE PLACED IN E:\NEWMAC~1\060107\CURRENT\CURRENT_1027.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE E:\NEWMAC~1\060107\CURRENT\CURRENT_1027.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          sbit tight_lose=P1^1;
  12          
  13          xdata unsigned char sbuffer[7]  _at_ 0x7000;
  14          xdata unsigned char rbuffer[55] _at_ 0x7007;
  15          xdata unsigned int  *point      _at_ 0x703E;
  16          xdata unsigned int  adl         _at_ 0x7040;
  17          xdata unsigned int  adh         _at_ 0x7042;
  18          xdata unsigned int  ad          _at_ 0x7044;
  19          xdata unsigned int  numbers     _at_ 0x7046;
  20          xdata unsigned int  I1          _at_ 0x7048;
  21          xdata unsigned int  I2          _at_ 0x704A;
  22          xdata unsigned int  ad_v        _at_ 0x704C;
  23          xdata unsigned int  ad_i        _at_ 0x704E;
  24          xdata unsigned long delt        _at_ 0x7050;
  25          xdata unsigned long delt1       _at_ 0x7054;
  26          xdata unsigned long c_t0        _at_ 0x7058;
  27          xdata unsigned long AD1         _at_ 0x705C;
  28          xdata unsigned long AD2         _at_ 0x7060;
  29          xdata unsigned long AD3         _at_ 0x7064;
  30          xdata unsigned long AD4         _at_ 0x7068;
  31          xdata unsigned long AD5         _at_ 0x706C;
  32          xdata unsigned long da          _at_ 0x7070;
  33          xdata unsigned char c_cm1       _at_ 0x7074;
  34          xdata unsigned char n_pulse     _at_ 0x7075;
  35          xdata unsigned char n_base      _at_ 0x7076;
  36          xdata unsigned int IM_ahf       _at_ 0x7077;
  37          xdata unsigned int IMM_ahf      _at_ 0x7079;
  38          xdata unsigned int IB_ahf       _at_ 0x707B;
  39          xdata unsigned int IBB_ahf      _at_ 0x707D;
  40          xdata unsigned char IML_ahf     _at_ 0x707F;
  41          xdata unsigned char IMH_ahf     _at_ 0x7080;
  42          xdata unsigned char IMML_ahf    _at_ 0x7081;
  43          xdata unsigned char IMMH_ahf    _at_ 0x7082;
  44          xdata unsigned char IBL_ahf     _at_ 0x7083;
  45          xdata unsigned char IBH_ahf     _at_ 0x7084;
  46          xdata unsigned char IBBL_ahf    _at_ 0x7085;
  47          xdata unsigned char IBBH_ahf    _at_ 0x7086;
  48          xdata unsigned char COMM        _at_ 0X7087;
  49          xdata unsigned char SLA         _at_ 0X7088;
  50          xdata unsigned char FF          _at_ 0X7089;
  51          xdata unsigned char GET         _at_ 0X708A;
  52          xdata unsigned char S_ANSW      _at_ 0X708B;
  53          xdata unsigned char R_ANSW      _at_ 0X708C;
  54          xdata unsigned char POINTER0    _at_ 0X708D;
  55          xdata unsigned char POINTER1    _at_ 0X708E;
C51 COMPILER V7.06   CURRENT_1027                                                          01/13/2006 15:18:05 PAGE 2   

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

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

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

 242   2                      case com_current_dec:   current_dec=1;break;    //电流减
 243   2                      case com_demand:        demand=1;break;
 244   2                      case com_open_gas1:     open_gas1=1;break;
 245   2                      case com_open_gas2:     open_gas2=1;break;
 246   2                      case com_close_gas1:    close_gas1=1;break;
 247   2                      case com_close_gas2:    close_gas2=1;break;
 248   2                      case com_ignit:         igniting=1;break;
 249   2                      case com_ignit_ok:      ignit_ok=1;break;
 250   2                      case com_i_slope_ok:    i_slope_ok=1;break;
 251   2                      case com_pre_melt_ok:   pre_melt_ok=1;break;
 252   2                      case com_need_para:     need_para=1;break;
 253   2                      case com_goto_begin:    to_begin=1;break;
 254   2                      case com_err_ok:        err_ok=1;break;
 255   2                      case com_tight:         tight=1;break;
 256   2                      case com_lose:          lose=1;break;

⌨️ 快捷键说明

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