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

📄 su.~pas

📁 使用Delphi 6.0开发用于控制空调的程序
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:

procedure TSU.StateConUNITNO(strLineNo_1:string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'StateConUNITNO错误,应该为1位,而非:' + IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end;
    strTemp := #02 + '310' + strLineNo_1 + #03;
    strCommand := strTemp + BCC(strTemp);
end;
procedure TSU.StateConLimitInte(strLineNo_1: string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'StateConLimitInte错误,应该为1位,而非:' + IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end;
    strTemp := #02 + '320' + strLineNo_1 + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.CollCumulativeInte(strLineNo_1, strUnitNo_2: string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'CollCumulativeInte LINE错误,应该为1位,而非:' + IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end
    else
    if Length(strUnitNo_2) <> 2 then
    begin
      strError := 'CollCumulativeInte UNIT_NO错误,应该为2位,而非:' + IntToStr(Length(strUnitNo_2)) + '位';
      Exit ;
    end;
    if (strLineNo_1 <> '0') and (strLineNo_1 <>'1') and (strLineNo_1 <>'2') then
    begin
       strError := 'CollCumulativeInte LINE_NO错误,应该为0,1,2,而非:' + IntToStr(Length(strLineNo_1)) ;
      Exit ;
    end;
    strTemp := #02 + '400' + strLineNo_1 + strUnitNo_2 + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.CollTransmittersResult;
var
  strTemp:string;
begin
    strTemp := #02 + '410' + #03;
    strCommand := strTemp + BCC(strTemp);
end;
procedure TSU.ACDataInit;
var
  strTemp:string;
begin
    strTemp := #02 + '500' + #03;
    strCommand := strTemp + BCC(strTemp);

end;
procedure TSU.ACCTRun(strLineNo_1, strState_1: string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'ACCTRun LINE错误,应该为1位,而非:' +
       IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end
    else
    if Length(strState_1) <> 1 then
    begin
      strError := 'ACCTRun错误,应该为1位,而非:' +
       IntToStr(Length(strState_1)) + '位';
      Exit ;
    end;
   // ShowMessage('ACCTRun strLineNo_1:'+strLineNo_1 );
    if (strLineNo_1 <> '0') and (strLineNo_1 <>'1') and (strLineNo_1 <>'2') then
    begin
       strError := 'ACCTRun LINE_NO错误,应该为0,1,2,而非:' +  strLineNo_1 ;
      Exit ;
    end;
    //else
    if (strState_1 <> '0') and (strState_1 <> '1') and (strState_1 <> '3') then
    begin
       strError := 'ACCTRun错误,应该为0,1,3,而非:' + strState_1 ;
      Exit ;
    end ;
    strTemp := #02 + '600' + strLineNo_1 + strState_1 + #03;
    strCommand := strTemp + BCC(strTemp);
    strError := '命令正确';
end;

procedure TSU.ACCTCleaning(strLineNo_1: string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'ACCTCleaning错误,应该为2位,而非:' + IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end;
    if (strLineNo_1 <> '0') and (strLineNo_1 <>'1') and (strLineNo_1 <>'2') then
    begin
       strError := 'ACCTCleaning LINE_NO错误,应该为0,1,2,而非:' +
       IntToStr(Length(strLineNo_1)) ;
      Exit ;
    end;
    strTemp := #02 + '610' + strLineNo_1 + #03;
    strCommand := strTemp + BCC(strTemp);
    strError := '命令正确';

end;
procedure TSU.ACCTRunModel(strLineNo_1, strModel_1: string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'ACCTRunModel LINE错误,应该为1位,而非:' +
       IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end
    else
    if Length(strModel_1) <> 1 then
    begin
      strError := 'ACCTRunModel UNIT_NO错误,应该为2位,而非:' +
       IntToStr(Length(strModel_1)) + '位';
      Exit ;
    end;

    if (strLineNo_1 <> '0') and (strLineNo_1 <>'1') and (strLineNo_1 <>'2') then
    begin
       strError := 'ACCTRunModel LINE_NO错误,应该为0,1,2,而非:' + strLineNo_1 ;
      Exit ;
    end;
    if (strModel_1 <> '0') and (strModel_1 <> '1') and (strModel_1 <> '2') and
       (strModel_1 <> '3') and (strModel_1 <> '4') and (strModel_1 <> '7') then
    begin
       strError := 'ACCTRunModel UNIT_NO错误,应该为0,1,3,而非:' + strModel_1 ;
      Exit ;
    end;
    strTemp := #02 + '620' + strLineNo_1 + strModel_1 + #03;
    strCommand := strTemp + BCC(strTemp);

end;

procedure TSU.ACCTSetTemp(strLineNo_1, strColdSetTemp_3,
  strHotSetTemp_3: string);
var
  strTemp:string;
begin
    if Length(strLineNo_1) <> 1 then
    begin
      strError := 'ACCTSetTemp LINE NO错误,应该为1位,而非:' +
       IntToStr(Length(strLineNo_1)) + '位';
      Exit ;
    end
    else
    if (Length(strColdSetTemp_3) <> 3) and (Length(strHotSetTemp_3) <> 3)then
    begin
      strError := 'ACCTSetTemp 温度错误,应该为3位,而非:' +
      strColdSetTemp_3 +':'+ IntToStr(Length(strColdSetTemp_3)) + '位,'+
      strHotSetTemp_3 +':'+ IntToStr(Length(strHotSetTemp_3)) + '位';
      Exit ;
    end;

    if (strLineNo_1 <> '0') and (strLineNo_1 <>'1') and (strLineNo_1 <>'2') then
    begin
       strError := 'ACCTSetTemp LINE_NO错误,应该为0,1,2,而非:' +
       IntToStr(Length(strLineNo_1)) ;
       Exit ;
    end
    else
    if (StrToInt(strColdSetTemp_3) < 0) or (StrToInt(strColdSetTemp_3) > 127) or
       (StrToInt(strHotSetTemp_3) < 0) or (StrToInt(strHotSetTemp_3) > 127) then
    begin
       strError := 'ACCTSetTemp 温度错误,应该为0-127,而非:' +
      ' 制冷设定温度:' + strColdSetTemp_3 +
      ' 制冷设定温度:' + strHotSetTemp_3 ;
      Exit ;
    end;
    strTemp := #02 + '630' + strLineNo_1 + strColdSetTemp_3 + strHotSetTemp_3 + #03;
    strCommand := strTemp + BCC(strTemp);

end;

procedure TSU.ACCTVAV(strLineAndVAV_5: string);
var
  strTemp:string;
begin
    if Length(strLineAndVAV_5) <> 5 then
    begin
      strError := 'ACCTVAV错误,应该为5位,而非:' + IntToStr(Length(strLineAndVAV_5)) + '位';
      Exit ;
    end;
    strTemp := #02 + '640' + strLineAndVAV_5 + #03;
    strCommand := strTemp + BCC(strTemp);
end;

function TSU.GetCOmmand: string;
begin
   Result := strCommand;
end;

procedure TSU.IDReadCenterTELNO;
var
  strTemp:string;
begin
    strTemp := #02 + '720' + #03;
    strCommand := strTemp + BCC(strTemp);
end;
procedure TSU.IDReadID;
var
  strTemp:string;
begin
    strTemp := #02 + '730' + #03;
    strCommand := strTemp + BCC(strTemp);
end;
procedure TSU.IDReadNowTime;
var
  strTemp:string;
begin
    strTemp := #02 + '740' + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.IDReadTimingSendPaperTime;
var
  strTemp:string;
begin
    strTemp := #02 + '750' + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.IDReadDialingNum;
var
  strTemp:string;
begin
    strTemp := #02 + '780' + #03;
    strCommand := strTemp + BCC(strTemp);    
end;

procedure TSU.IDReadReDialingNum;
var
  strTemp:string;
begin
    strTemp := #02 + '7A0' + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.IDReadAutoMachine;
var
  strTemp:string;
begin
    strTemp := #02 + '7B0' + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.IDReadAutoRunTime;
var
  strTemp:string;
begin
    strTemp := #02 + '7C0' + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.IDReadMinRunGurNum;
var
  strTemp:string;
begin
    strTemp := #02 + '7D0' + #03;
    strCommand := strTemp + BCC(strTemp);
end;

procedure TSU.IDReadDiagling;
var
  strTemp:string;
begin
    strTemp := #02 + '7E0' + #03;
    strCommand := strTemp + BCC(strTemp);

end;

procedure TSU.WriteRAM(strRamAdd_4, strData_2: string);
var
  strTemp:string;
begin
    if Length(strRamAdd_4) <> 4 then
    begin
      strError := 'WriteRAMRAM地址错误,应该为4位,而非:' + IntToStr(Length(strRamAdd_4)) + '位';
      Exit ;
    end
    else
    if Length(strData_2) <> 2 then
    begin
      strError := 'WriteRAM记入数据错误,应该为2位,而非:' + IntToStr(Length(strData_2)) + '位';
      Exit ;
    end;
    strTemp := #02 + '0F0' + strRamAdd_4 + strData_2 + #03;
    strCommand := strTemp + BCC(strTemp);
end;

end.

⌨️ 快捷键说明

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