//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "YbCommDevice"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
try
{
YbCommDevice1->PortName ="COM3";
YbCommDevice1->Baud = TYbCommDevice::br9600 ;
YbCommDevice1->Active = true;
YbCommDevice1->PackageType = cptFrameTimeout; //使用超时的方法识别每帧数据
YbCommDevice1->UsePackage = true; //启动 Package
}
catch(Exception &e)
{
Application->MessageBox(e.Message.w_str(),L"错误信息",MB_OK|MB_ICONSTOP);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
unsigned char Buf[1000]; //接收缓存
int n = YbCommDevice1->ReadPackage(Buf,1000);
if(n>0) //收到数据的字节数
{
UnicodeString s;
for(int i=0; i<n; i++)
s += IntToHex(Buf[i],2) + " ";
Memo1->Lines->Add(s); //在 Memo1 里显示出收到的数据, 将会是完整的一帧数据
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
YbCommDevice1->SettingsDialog(this,true);
}
//---------------------------------------------------------------------------