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

📄 aaaa.pas

📁 可读写串口 232 简单明了 使用初学者学习用 我自己写的,能力有限 难免出错 请批评指正 压缩包里有说明
💻 PAS
字号:
unit aaaa;

interface

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

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    Button1: TButton;
    CommPortDriver1: TCommPortDriver;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    GroupBox2: TGroupBox;
    Edit3: TEdit;
    Edit4: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    Shape1: TShape;
    Memo1: TMemo;
    Memo2: TMemo;
    ComboBox1: TComboBox;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button14: TButton;
    Button15: TButton;
    Button16: TButton;
    Button17: TButton;
    Button18: TButton;
    Button19: TButton;
    Button20: TButton;
    Button21: TButton;
    Button22: TButton;
    Button23: TButton;
    Button24: TButton;
    Button25: TButton;
    Button26: TButton;
    Button27: TButton;
    Button28: TButton;
    Button29: TButton;
    Button30: TButton;
    Button31: TButton;
    Button32: TButton;
    Edit1: TEdit;
    Button33: TButton;
    CheckBox1: TCheckBox;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure Button11Click(Sender: TObject);
    procedure Button12Click(Sender: TObject);
    procedure Button13Click(Sender: TObject);
    procedure Button14Click(Sender: TObject);
    procedure Button15Click(Sender: TObject);
    procedure Button16Click(Sender: TObject);
    procedure Button17Click(Sender: TObject);
    procedure Button18Click(Sender: TObject);
    procedure Button19Click(Sender: TObject);
    procedure Button20Click(Sender: TObject);
    procedure Button21Click(Sender: TObject);
    procedure Button31Click(Sender: TObject);
    procedure Button22Click(Sender: TObject);
    procedure Button23Click(Sender: TObject);
    procedure Button24Click(Sender: TObject);
    procedure Button25Click(Sender: TObject);
    procedure Button26Click(Sender: TObject);
    procedure Button27Click(Sender: TObject);
    procedure Button28Click(Sender: TObject);
    procedure Button29Click(Sender: TObject);
    procedure Button30Click(Sender: TObject);
    procedure Button32Click(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure Button33Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
CommPortDriver1.Connect;//建立连接
Shape1.Brush.Color:=clLime;//连接指示
CheckBox1.Enabled:=true; //开启反弹项
Memo1.Text:='CommPortDriver1.Connect';
Memo2.Text:='建立连接';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
CommPortDriver1.Disconnect;//断开连接
Shape1.Brush.Color:=clRed;//连接指示
CheckBox1.Enabled:=false;//关闭反弹项
Memo1.Text:='CommPortDriver1.Disconnect';
Memo2.Text:='断开连接';
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
CommPortDriver1.SendByte(3);
Memo1.Text:='CommPortDriver1.SendByte(3)';
Memo2.Text:='发送数据3';
Edit3.Text:='3';
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
CommPortDriver1.SendByte(4);
Memo1.Text:='CommPortDriver1.SendByte(4)';
Memo2.Text:='发送数据4';
Edit3.Text:='4';
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Itemindex=0 then CommPortDriver1.Port:=pnCOM1;
if ComboBox1.Itemindex=1 then CommPortDriver1.Port:=pnCOM2;
if ComboBox1.Itemindex=2 then CommPortDriver1.Port:=pnCOM3;
if ComboBox1.Itemindex=3 then CommPortDriver1.Port:=pnCOM4;
if ComboBox1.Itemindex=4 then CommPortDriver1.Port:=pnCOM5;
Memo1.Text:='CommPortDriver1.Port:='+ 'pnCOM*';
Memo2.Text:='串口选择, * 代表数字';
edit3.Text :=commportdriver1.PortName ;
end;

procedure TForm1.Button6Click(Sender: TObject);
var a:byte ;
begin
CommPortDriver1.SendByte(0);
Memo1.Text:='CommPortDriver1.SendByte(0)';
Memo2.Text:='发送数据0';
Edit3.Text:='0';
end;

procedure TForm1.Button7Click(Sender: TObject);
var a:byte ;
begin
CommPortDriver1.SendByte(1);
Memo1.Text:='CommPortDriver1.SendByte(1)';
Memo2.Text:='发送数据1';
Edit3.Text:='1';
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
CommPortDriver1.SendByte(2);
Memo1.Text:='CommPortDriver1.SendByte(2)';
Memo2.Text:='发送数据2';
Edit3.Text:='2';
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
CommPortDriver1.SendByte(5);
Memo1.Text:='CommPortDriver1.SendByte(5)';
Memo2.Text:='发送数据5';
Edit3.Text:='5';
end;

procedure TForm1.Button9Click(Sender: TObject);
begin
CommPortDriver1.SendByte(6);
Memo1.Text:='CommPortDriver1.SendByte(6)';
Memo2.Text:='发送数据6';
Edit3.Text:='6';
end;

procedure TForm1.Button10Click(Sender: TObject);
begin
CommPortDriver1.SendByte(7);
Memo1.Text:='CommPortDriver1.SendByte(7)';
Memo2.Text:='发送数据7';
Edit3.Text:='7';
end;

procedure TForm1.Button11Click(Sender: TObject);
begin
CommPortDriver1.SendByte(8);
Memo1.Text:='CommPortDriver1.SendByte(8)';
Memo2.Text:='发送数据8';
Edit3.Text:='8';
end;

procedure TForm1.Button12Click(Sender: TObject);
begin
CommPortDriver1.SendByte(9);
Memo1.Text:='CommPortDriver1.SendByte(9)';
Memo2.Text:='发送数据9';
Edit3.Text:='9';
end;

procedure TForm1.Button13Click(Sender: TObject);
begin
CommPortDriver1.SendChar('a');
Memo1.Text:='CommPortDriver1.SendChar('+'a'+')';
Memo2.Text:='发送数据a';
Edit3.Text:='a';
end;

procedure TForm1.Button14Click(Sender: TObject);
begin
CommPortDriver1.SendChar('b');
Memo1.Text:='CommPortDriver1.SendChar('+'b'+')';
Memo2.Text:='发送数据b';
Edit3.Text:='b';
end;

procedure TForm1.Button15Click(Sender: TObject);
begin
CommPortDriver1.SendChar('c');
Memo1.Text:='CommPortDriver1.SendChar('+'c'+')';
Memo2.Text:='发送数据c';
Edit3.Text:='c';
end;

procedure TForm1.Button16Click(Sender: TObject);
begin
CommPortDriver1.SendChar('d');
Memo1.Text:='CommPortDriver1.SendChar('+'d'+')';
Memo2.Text:='发送数据d';
Edit3.Text:='d';
end;

procedure TForm1.Button17Click(Sender: TObject);
begin
CommPortDriver1.SendChar('e');
Memo1.Text:='CommPortDriver1.SendChar('+'e'+')';
Memo2.Text:='发送数据e';
Edit3.Text:='e';
end;

procedure TForm1.Button18Click(Sender: TObject);
begin
CommPortDriver1.SendChar('f');
Memo1.Text:='CommPortDriver1.SendChar('+'f'+')';
Memo2.Text:='发送数据f';
Edit3.Text:='f';
end;

procedure TForm1.Button19Click(Sender: TObject);
begin
CommPortDriver1.SendChar('g');
Memo1.Text:='CommPortDriver1.SendChar('+'g'+')';
Memo2.Text:='发送数据g';
Edit3.Text:='g';
end;

procedure TForm1.Button20Click(Sender: TObject);
begin
CommPortDriver1.SendChar('h');
Memo1.Text:='CommPortDriver1.SendChar('+'h'+')';
Memo2.Text:='发送数据h';
Edit3.Text:='h';
end;

procedure TForm1.Button21Click(Sender: TObject);
begin
CommPortDriver1.SendChar('i');
Memo1.Text:='CommPortDriver1.SendChar('+'i'+')';
Memo2.Text:='发送数据i';
Edit3.Text:='i';
end;

procedure TForm1.Button31Click(Sender: TObject);
begin
CommPortDriver1.SendChar('j');
Memo1.Text:='CommPortDriver1.SendChar('+'j'+')';
Memo2.Text:='发送数据j';
Edit3.Text:='j';
end;

procedure TForm1.Button22Click(Sender: TObject);
begin
CommPortDriver1.SendChar('A');
Memo1.Text:='CommPortDriver1.SendChar('+'A'+')';
Memo2.Text:='发送数据A';
Edit3.Text:='A';
end;

procedure TForm1.Button23Click(Sender: TObject);
begin
CommPortDriver1.SendChar('B');
Memo1.Text:='CommPortDriver1.SendChar('+'B'+')';
Memo2.Text:='发送数据B';
Edit3.Text:='B';
end;

procedure TForm1.Button24Click(Sender: TObject);
begin
CommPortDriver1.SendChar('C');
Memo1.Text:='CommPortDriver1.SendChar('+'C'+')';
Memo2.Text:='发送数据C';
Edit3.Text:='C';
end;

procedure TForm1.Button25Click(Sender: TObject);
begin
CommPortDriver1.SendChar('D');
Memo1.Text:='CommPortDriver1.SendChar('+'D'+')';
Memo2.Text:='发送数据D';
Edit3.Text:='D';
end;

procedure TForm1.Button26Click(Sender: TObject);
begin
CommPortDriver1.SendChar('E');
Memo1.Text:='CommPortDriver1.SendChar('+'E'+')';
Memo2.Text:='发送数据E';
Edit3.Text:='E';
end;

procedure TForm1.Button27Click(Sender: TObject);
begin
CommPortDriver1.SendChar('F');
Memo1.Text:='CommPortDriver1.SendChar('+'F'+')';
Memo2.Text:='发送数据F';
Edit3.Text:='F';
end;

procedure TForm1.Button28Click(Sender: TObject);
begin
CommPortDriver1.SendChar('G');
Memo1.Text:='CommPortDriver1.SendChar('+'G'+')';
Memo2.Text:='发送数据G';
Edit3.Text:='G';
end;

procedure TForm1.Button29Click(Sender: TObject);
begin
CommPortDriver1.SendChar('H');
Memo1.Text:='CommPortDriver1.SendChar('+'H'+')';
Memo2.Text:='发送数据H';
Edit3.Text:='H';
end;

procedure TForm1.Button30Click(Sender: TObject);
begin
CommPortDriver1.SendChar('I');
Memo1.Text:='CommPortDriver1.SendChar('+'I'+')';
Memo2.Text:='发送数据I';
Edit3.Text:='I';
end;

procedure TForm1.Button32Click(Sender: TObject);
begin
CommPortDriver1.SendChar('J');
Memo1.Text:='CommPortDriver1.SendChar('+'J'+')';
Memo2.Text:='发送数据J';
Edit3.Text:='J';
end;

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked=true then
begin
CommPortDriver1.SendChar('@');
Memo1.Text:='CommPortDriver1.SendChar('+'@'+')';
Memo2.Text:='发送数据@';
Edit3.Text:='@';
timer1.enabled:=true;
end
else
begin
CommPortDriver1.SendChar('!');
Memo1.Text:='CommPortDriver1.SendChar('+'!'+')';
Memo2.Text:='发送数据!';
Edit3.Text:='!';
timer1.enabled:=false;
end;
end;

procedure TForm1.Button33Click(Sender: TObject);
begin
CommPortDriver1.SendString(Edit1.Text);
Memo1.Text:='CommPortDriver1.SendString(Edit1.Text)';
Memo2.Text:='发送字符串数据';
Edit3.Text:=Edit1.Text;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var a:byte;
begin
commportdriver1.readbyte(a);
if a<>0 then edit4.Text:=inttostr(a);
end;

end.

⌨️ 快捷键说明

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