Einzelnen Beitrag anzeigen

Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#1

CPort: Comport auslesen DOS-> Delphi

  Alt 6. Mär 2012, 09:35
hi,
ich habe ein DOS Programm, dass Daten über den ComPort von einem Windows CE Gerät runter lädt.
Das muss ich jetzt in Delphi umsetzen...
hier mal der Basic Code:
Code:
Close #96
Open "COM2:9600,N,8,1,CS,DS" As #96
ITry = 0
Do While ITry < 10 AND IFound = 0
    ITry = ITry + 1 
    Print #96, Chr$(6) + Chr$(13);
    Call WaitSec(0.5)
    If Not EOF(96) Then
        ATmp = Input$(1,#96)
        If ATmp = Chr$(6) Then IFound = 1
    end if
Loop
Es wird also erst der Comport als #96 geöffnet, anschließend Chr6 und Chr13 geschrieben und dann ausgelesen.
... leider funktioniert das in Delphi nicht.
Delphi-Quellcode:
   try
      iTry := 0;
      bFound := False;
      AComPort:=Concat('COM',Edit1.Text);
      tmpWeightString := '';
      FirstStart:= Now();

      ComPort := TComport.Create(fHandscannerCOM);
      ComPort.Port := AComPort;
      ComPort.BaudRate := br9600;
      ComPort.Parity.Bits := prNone;
      ComPort.DataBits := dbEight;
      ComPort.StopBits := sbOneStopBit;
           ComPort.Open;
      comport.WriteStr(CHR(6)+ CHR(13));
      sleep(500);

      i:=1;
      while (not bFound) and (i< 10) do
      begin
         AStr := '';
         inc(i);
                        ComPort.ReadStr(AStr,1);
         if Astr='then
            Astr:=IntToStr(i);
         Memo1.Lines.Add(AStr);

         if AStr = CHR(6) then
            bFound := True;
         sleep(10);
      end;
   finally
      FreeAndNil(ComPort);
   end;
Kann mir jemand da einen Tip geben?
bei einem anderen Gerät (einer Waage) habe ich das auslesen in ähnlicher form bereits hin bekommen ...
Interessant wäre auch, was CS und DS Bedeuten soll.

Über Hilfe würde ich mich sehr freuen.

Mfg
  Mit Zitat antworten Zitat