📄 unit1.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
USEFORM("Unit2.cpp", Form2);
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "MSCommLib_OCX"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
MSComm1->CommPort = 1; //串口号
if(MSComm1->PortOpen==false)
{
MSComm1->Settings = "9600,n,8,1"; //通信协议
MSComm1->PortOpen = true; //开串口
}
MSComm1->OutBufferCount = 0; //清空
MSComm1->InBufferCount = 0;
MSComm1->InputMode = 0;
MSComm1->RThreshold = 1; //文本输入
// MSComm1->InputLen =2;
MSComm1->Output = StringToOleStr("!0*");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
String password = Edit3->Text; //密码
if(password.Length() != 6)
ShowMessage("请输入6位密码!");
else
{
MSComm1->Output = StringToOleStr("!1"+password+'*'); //发到单片机
Sleep(600); //等待
String s = MSComm1->Input; //读回确认码“aaa ”
if(s=="!1R*") //判断
{
MSComm1->Output = StringToOleStr("!2*");
Form2->Show();
Edit1->Text = "";
Edit2->Text = "";
}
else
ShowMessage("密码不正确!"); //提示操作
Edit3->Text = "";
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MSComm1Comm(TObject *Sender)
{
Sleep(60); //软件等待
String s = MSComm1->Input; //读姓名卡号
String card_No = s.SubString(3,s.Pos("#")-3); //显示姓名卡号
String name = s.SubString(s.Pos("#")+1,(s.Length()-s.Pos("#")-1));
//String str = MSComm1->Input;
//String card_No = s.SubString(7,3);
Edit1->Text = name;
Edit2->Text = card_No;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->MSComm1->Output = StringToOleStr("!$*");
MSComm1->PortOpen = false ;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender)
{
MSComm1->CommPort = 1; //串口号
if(MSComm1->PortOpen==false)
{
MSComm1->Settings = "9600,n,8,1"; //通信协议
MSComm1->PortOpen = true; //开串口
}
MSComm1->OutBufferCount = 0; //清空
MSComm1->InBufferCount = 0;
MSComm1->InputMode = 0;
MSComm1->RThreshold = 1; //文本输入
// MSComm1->InputLen =2;
//MSComm1->Output = StringToOleStr("!0*");
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -