?? mainfrm.pas
字號:
{*******************************************************}
{ }
{ CommSend }
{ Date: 2003-12-25 Owner: Han Deyu }
{ }
{ Copyright (c) 2003, NanJing lopu Corporation }
{ }
{ }
{ }
{*******************************************************}
unit MainFrm;
//protocol:9600,n,8,1
//comm port:default comm port 1 ,if have any question it
//will use comm port 2 automatically.
//timer1's interval is 10s
//send 01 or 02
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
OleCtrls, MSCommLib_TLB, ExtCtrls, StdCtrls, Inifiles, Buttons, jpeg;
type
TForm1 = class(TForm)
Timer1: TTimer;
Edit1: TEdit;
Button3: TButton;
Image1: TImage;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
MSComm: TMSComm;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Timer1Timer(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
Title='雙機熱備份控制器 ';
var
Form1: TForm1;
A : Variant;
FlagIni: TInifile;
implementation
{$R *.DFM}
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if MSComm.PortOpen then MSComm.PortOpen := False;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
try
MSComm.Output := A;
Caption := Title + '寫串口正確';
except Caption := Title + '寫串口錯,請再試一次!';
end; //end try
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Timer1.Enabled := False;
MsComm.PortOpen := False;
MsComm.PortOpen := True;
try
MsComm.Output := Edit1.Text;
except
Caption := Title + '手動發送錯誤!';
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MSComm.Settings := '9600,n,8,1';
MSComm._CommPort := 1;
if not MSComm.PortOpen then MSComm.PortOpen := true;
if MSComm.PortOpen then Caption := Title + 'Com1 OK'
else begin
MSComm._CommPort := 2;
MSComm.PortOpen := true;
if MSComm.PortOpen then Caption := Title + 'Com2 OK'
else Caption := Title + 'Com Error'
end;
A := VarArrayCreate([0,1],VarByte);
A[0] := Byte($01);
A[1] := Byte($01);
if MSComm.PortOpen then Timer1.Enabled := True;
SpeedButton1.Enabled := False;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
SpeedButton1.Enabled := False;
SpeedButton2.Enabled := True;
MsComm.PortOpen := False;
A := VarArrayCreate([0,1],VarByte);
A[0] := Byte($01);
A[1] := Byte($01);
MsComm.PortOpen := True;
Timer1.Enabled := True;
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
SpeedButton1.Enabled := True;
SpeedButton2.Enabled := False;
Timer1.Enabled := False;
MsComm.PortOpen := False;
A := VarArrayCreate([0,1],VarByte);
A[0] := Byte($01);
A[1] := Byte($02);
MsComm.PortOpen := True;
Timer1.Enabled := True;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -