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

📄 formrun.pas

📁 16 relay output channels and 16 isolated digital input channels LED indicators to show activated
💻 PAS
字号:
unit formrun;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, Driver, Global;

type
  Tfrmrun = class(TForm)
    txtCountRead: TEdit;
    CmdRead: TButton;
    CmdExit: TButton;
    GroupSample: TGroupBox;
    hscrFreq: TScrollBar;
    labStart: TLabel;
    labEnd: TLabel;
    tmrRead: TTimer;
    procedure CmdExitClick(Sender: TObject);
    procedure hscrFreqChange(Sender: TObject);
    procedure tmrReadTimer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure CmdReadClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmrun: Tfrmrun;

implementation

uses formstar;

var
   Response       : Integer;
{$R *.DFM}

procedure Tfrmrun.CmdExitClick(Sender: TObject);
begin
     frmRun.Close;
     Formstar.frmstart.Show;
     tmrRead.Enabled := False;
end;

procedure Tfrmrun.hscrFreqChange(Sender: TObject);
begin
     if hscrFreq.Position = 0 then
        tmrRead.Interval := 0
     else
        tmrRead.Interval := trunc(10000 / hscrFreq.Position);
     tmrRead.Enabled := True;
end;

procedure Tfrmrun.tmrReadTimer(Sender: TObject);
var
  overflow : Integer;
  count : Longint;
begin
  ptCounterEventRead.counter := ptCounterEventStart.counter;
  ptCounterEventRead.overflow := @overflow;
  ptCounterEventRead.count := @count;
  ErrCde := DRV_CounterEventRead(DeviceHandle, ptCounterEventRead);
  If (ErrCde <> 0) Then
  begin
       DRV_GetErrorMessage(ErrCde, pszErrMsg);
       Response := Application.MessageBox(pszErrMsg, 'Error!!', MB_OK);
       Exit;
  end;
  txtCountRead.Text := IntToStr(count);
end;

procedure Tfrmrun.FormCreate(Sender: TObject);
begin
     hscrFreq.Position := 10;
     tmrRead.Enabled   := False;
end;

procedure Tfrmrun.CmdReadClick(Sender: TObject);
var
  overflow : Integer;
  count    : Longint;
begin
     tmrRead.Enabled := False;

     ptCounterEventRead.counter := ptCounterEventStart.counter;
     ptCounterEventRead.overflow := @overflow;
     ptCounterEventRead.count := @count;
     ErrCde := DRV_CounterEventRead(DeviceHandle, ptCounterEventRead);
     If (ErrCde <> 0) Then
     begin
          DRV_GetErrorMessage(ErrCde, pszErrMsg);
          Response := Application.MessageBox(pszErrMsg, 'Error!!', MB_OK);
          Exit;
     end;
     txtCountRead.Text := IntToStr(count);
end;

end.

⌨️ 快捷键说明

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