Einzelnen Beitrag anzeigen

Carsten1812

Registriert seit: 20. Okt 2011
27 Beiträge
 
Delphi 7 Personal
 
#27

AW: Waagenwerte über com-Schnittstelle einlesen

  Alt 21. Okt 2011, 10:45
Die Com-Port-Komponente habe ich in dem Programm aufgerufen und habe die Einstellungen so gewählt wie in dem Gerätemanager.
9600 baud, Data bits 8, und Stop bits 1.
Also ich habe jetzt schonmal einen ähnlichen Quellcode den ich schreiben muss gefunden und auf mich abgewandelt.

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    ComPort1: TComPort;
    Edit1: TEdit;
    procedure FormActivate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  hcomm : THandle;
  COM_enum : integer;

implementation

{$R *.dfm}

procedure usbset_data(hcomm : Thandle);
begin
EscapeCommFunction(hcomm,SETDTR); // DTR auf HIGH setzen
sleep(0);
end;

procedure usbres_data(hcomm : Thandle);
begin
EscapeCommFunction(hcomm,CLRDTR); // DTR auf LOW setzen
sleep(0);
end;

// Liefert Ergebnis von Handshake-Signalen der COM zurück
function GetInCount(hcomm : Thandle):DWORD;
var com_status : DWORD;
begin
 Result := 0;
   if hcomm <> INVALID_HANDLE_VALUE then
        begin
         GetCommModemStatus(hcomm,com_status);
         Result := com_status;
        end;
end;

// handle für COM holen
function gethdc_comport(xcom:word):Thandle;stdcall;export;
var hcomm : Thandle;
begin
if (xcom = 7) then
hcomm:=CreateFile('COM7',GENERIC_READ or GENERIC_WRITE,0,nil,OPEN_EXISTING,0,0);
gethdc_comport := Thandle(hcomm);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
 hcomm := gethdc_comport(7);
 COM_enum := 7;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  closeHandle(hcomm);
  close;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
//Wenn ich diesen Button drücke möchte ich den aktuellen Waagenwert in das edit1 übergeben
end;

end.
  Mit Zitat antworten Zitat