📄 mainform.~pas
字号:
unit mainform;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, CMPhoenix, ExtCtrls;
//function Connect: Cardinal; External 'PhoenixUSB.dll';
//procedure Disconnect; External 'PhoenixUSB.dll';
type
TForm1 = class(TForm)
btnConnect: TButton;
lblStatus: TLabel;
lblProtocol: TLabel;
pnlButtons: TPanel;
Button3: TButton;
Button4: TButton;
Button2: TButton;
btnT1: TButton;
btnDisconnect: TButton;
btnT0: TButton;
Button1: TButton;
Button5: TButton;
Button6: TButton;
Memo1: TMemo;
Button7: TButton;
txtSend: TEdit;
btnSend: TButton;
procedure btnConnectClick(Sender: TObject);
procedure btnDisconnectClick(Sender: TObject);
procedure btnT0Click(Sender: TObject);
procedure btnT1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure btnSendClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btnConnectClick(Sender: TObject);
begin
if Connect = 1 then
begin
lblStatus.Caption := 'Connected';
lblStatus.Font.Color := clGreen;
pnlButtons.Enabled := true;
end
else
begin
lblStatus.Caption := 'Not Connected';
lblStatus.Font.Color := clRed;
pnlButtons.Enabled := false;
end;
end;
procedure TForm1.btnDisconnectClick(Sender: TObject);
begin
Disconnect;
lblStatus.Caption := 'Not Connected';
lblStatus.Font.Color := clRed;
pnlButtons.Enabled := false;
end;
procedure TForm1.btnT0Click(Sender: TObject);
begin
SetProtocol(0);
lblProtocol.Caption := 'T=0';
end;
procedure TForm1.btnT1Click(Sender: TObject);
begin
SetProtocol(1);
lblProtocol.Caption := 'T=1';
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
SetProtocol(0);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
greenOn;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
greenOff;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
redOn;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
redOff;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
//setBaudRate(0);
reset;
end;
procedure TForm1.Button6Click(Sender: TObject);
var
l,i: Integer;
pr: String;
res: PChar;
begin
res := AllocMem(50);
l := receive(res,20);
pr := '';
for i:=0 to (l*2)-1 do
pr := pr + res[i];
// for i:=0 to l-1 do
// pr := pr + IntToHex(Byte(res[i]),2);
if Length(pr) > 0 then
Memo1.Lines.Add(pr);
FreeMem(res);
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
setBaudRate(0);
end;
procedure TForm1.btnSendClick(Sender: TObject);
var
i: Integer;
currByteS: String;
currByte: Byte;
begin
{ for i:=0 to (length(txtSend.Text) div 2)-1 do
begin
currByteS := txtSend.Text[i*2+1] + txtSend.Text[i*2+2];
currByte := StrToInt('$' + currByteS);
transmit(@currByte,1);
end;}
transmit(PChar(txtSend.Text),length(txtSend.Text) div 2);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -