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

📄 unit1.pas

📁 这是小弟下载的控制并口的程序
💻 PAS
字号:
//    http://fdlweb.myrice.com

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Buttons, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    ChkBit0: TCheckBox;
    ChkBit1: TCheckBox;
    ChkBit2: TCheckBox;
    ChkBit3: TCheckBox;
    ChkBit4: TCheckBox;
    ChkBit5: TCheckBox;
    ChkBit6: TCheckBox;
    ChkBit7: TCheckBox;
    CheckBox1: TCheckBox;
    Timer1: TTimer;
    Timer2: TTimer;
    CheckBox2: TCheckBox;
    procedure FormCreate(Sender: TObject);
    procedure ChkBit0Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure ReadPortBit;
    procedure CheckBox1Click(Sender: TObject);
    procedure CheckBox2Click(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  tb:BYTE;

implementation

uses conport;

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  tb:=1;
  ReadPortBit;
end;

procedure TForm1.ChkBit0Click(Sender: TObject);
var
  b:BYTE;
begin
  b:=0;
  if ChkBit0.Checked then
    b:=b or $01;
  if ChkBit1.Checked then
    b:=b or $02;
  if ChkBit2.Checked then
    b:=b or $04;
  if ChkBit3.Checked then
    b:=b or $08;
  if ChkBit4.Checked then
    b:=b or $10;
  if ChkBit5.Checked then
    b:=b or $20;
  if ChkBit6.Checked then
    b:=b or $40;
  if ChkBit7.Checked then
    b:=b or $80;
  WritePort(b);
end;

procedure TForm1.ReadPortBit;
var
  rst:BYTE;
begin
  rst:=ReadPort;
  ChkBit0.Checked:=(rst or $FE)=$FF;
  ChkBit1.Checked:=(rst or $FD)=$FF;
  ChkBit2.Checked:=(rst or $FB)=$FF;
  ChkBit3.Checked:=(rst or $F7)=$FF;
  ChkBit4.Checked:=(rst or $EF)=$FF;
  ChkBit5.Checked:=(rst or $DF)=$FF;
  ChkBit6.Checked:=(rst or $BF)=$FF;
  ChkBit7.Checked:=(rst or $7F)=$FF;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if tb=0 then
    tb:=1
  else
    tb:=tb * 2;
  WritePort(tb);
  ReadPortBit;
end;

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  Timer1.Enabled:=CheckBox1.Checked;
end;

procedure TForm1.CheckBox2Click(Sender: TObject);
begin
  Timer2.Enabled:=CheckBox2.Checked;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
  ReadPortBit;
end;

end.

⌨️ 快捷键说明

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