Victor 串口 VCL 控件,版本 1.5.0.1 for C++ Builder XE2/XE/2010
C++爱好者: http://www.cppfans.com/
【软件简介】
简单实用, 功能强大的 C++ Builder 串口控件!
本控件是免费的, 不需要注册, 有关授权及许可协议详见 license.txt 文件。
1.支持二进制数据和文本数据的收发
2.支持任意格式的数据的收发
3.支持两种数据包协议(识别每帧数据首尾的方法):
①超时判断数据首尾, 适用于与单片机和仪表的通讯
②帧首尾和控制符, 适用于大量复杂的数据传输, 例如文件收发等
【控件特点】
1.完全由 C++ 代码写的, 支持简体中文, 繁体中文, 英文.
2.免费控件, 在主页上可提供示例程序和使用方法
3.免费升级, 如果控件版本升级, 在直接主页上下载新版本控件
使用简单:
用 控件->Active=true; 打开串口
控件->Read()读, 控件->Write()写.
可以处理控件的事件, 但不是必须的.
【控件安装方法】
1.C++ Builder 2010: 打开 Source\C2010\VictorComm.groupproj 工程组;
C++ Builder XE: 打开 Source\CXE\VictorComm.groupproj 工程组。
C++ Builder XE2: 打开 Source\CXE2\VictorComm.groupproj 工程组。
2.编译所有工程,即选择菜单 Project -- Build All Projects
默认情况下,C++ Builder 编译生成的控件放在了以下文件夹里面:
Windows XP:
*.bpl
C:\Documents and Settings\All Users\Documents\RAD Studio\版本\BPL
*.lib, *.bpi
C:\Documents and Settings\All Users\Documents\RAD Studio\版本\DCP
Windows Vista / Windows 7:
*.bpl
C:\Users\Public\Documents\RAD Studio\版本\BPL
*.lib, *.bpi
C:\Users\Public\Documents\RAD Studio\版本\DCP
在某些软件里面,Documents文件夹名称会显示为不同的本地语言
3.安装编译生成的 VictorCommDesign.bpl 设计期控件包
选择菜单 Component -- Install Packages
在打开的对话框里面,点击中间的“Add”按钮,
找到刚才编译的 VictorCommDesign.bpl 确定。
4.如果编译生成的控件不在默认文件夹里面,需要在操作系统的环境变量PATH里面
添加 *.bpl 文件所在的文件夹。
【控件使用注意事项】
在使用上,需要添加 .h 和 .lib 的路径:
选择 C++ Builder 菜单: Project->Options->Directories/Conditionals
首先 Build Configuration 选择 Base
然后 Include Path 和 Library Path 都要添上安装路径(包含*.h和*.lib的文件夹)
①Include Path 右面的“…”按钮,添加包含控件*.h文件的文件夹
②Library Path 右面的“…”按钮,添加包含控件*.lib,*.dfm文件的文件夹
【简单应用】
打开串口:
try
{
YbCommDevice1->Active = true;
}
catch(Exception &e)
{
Application->MessageBox(e.Message.w_str(),"错误信息",MB_OK|MB_ICONSTOP);
}
写数据
YbCommDevice1->Write(任意数据的地址,字节数);
例如
int i=5;
YbCommDevice1->Write(&i,sizeof(int));
AnsiString s = "abc";
YbCommDevice1->Write(s.c_str(), s.Length());
读数据
实际读出字节数 = YbCommDevice1->Read(任意缓存地址,缓存容量);
【新功能:识别完整的数据帧】
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
YbCommDevice1->Active = true; //打开串口
YbCommDevice1->PackageType = cptFrameTimeout; //使用超时的方法识别每帧数据
YbCommDevice1->UsePackage = true; //启动 Package
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
char Buf[3];
Buf[0] = 0x99;
Buf[1] = 0x1b;
Buf[2] = 0x0d;
YbCommDevice1->WritePackage(Buf,3); //发送3个字节: 99 1B 0D
}
//---------------------------------------------------------------------------
void __fastcall TForm1::YbCommDevice1Package(TObject *Sender, int NotifyType)
{
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 里显示出收到的数据, 将会是完整的一帧数据
}
}
//---------------------------------------------------------------------------
谢谢您对Victor串口控件的支持!
欢迎到我的网站上讨论串口控件的问题!
---- Victor Chen
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
VictorComm控件 (185个子文件)
Project1.#00 3.81MB
Project1.#00 3.81MB
Project1.#00 3.81MB
Project1.#00 3.81MB
VictorCommDesign.#00 1.3MB
VictorComm32.#00 1.3MB
VictorComm32.#01 3.63MB
VictorComm32.#02 3.6MB
Unit_YBComm32_About.bmp 630B
YBCommDevice.bmp 406B
Project1.cbproj 12KB
Project1.cbproj 12KB
TestSendFile.cbproj 12KB
Project1.cbproj 12KB
Project1.cbproj 12KB
Project1.cbproj 11KB
Project1.cbproj 11KB
Project1.cbproj 11KB
Project1.cbproj 11KB
VictorComm32.cbproj 11KB
VictorCommDesign.cbproj 10KB
VictorComm32.cbproj 9KB
VictorCommDesign.cbproj 9KB
VictorComm32.cbproj 8KB
VictorCommDesign.cbproj 8KB
VictorComm.chm 46KB
TVictorComm32.cpp 38KB
YbCommDevice.cpp 24KB
Unit_YbCommDevice_Settings.cpp 20KB
TVictorCommPkg.cpp 17KB
UnitDial.cpp 15KB
UnitSendFile.cpp 10KB
Unit_YBComm32_About.cpp 9KB
Unit1.cpp 6KB
Unit1.cpp 6KB
Unit1.cpp 5KB
UnitHang.cpp 4KB
Unit1.cpp 3KB
Unit1.cpp 3KB
Unit1.cpp 2KB
YbCommDesignEditors.cpp 2KB
Unit1.cpp 2KB
Unit1.cpp 2KB
VictorComm32.cpp 1KB
Project1.cpp 1KB
UnitTsData.cpp 1KB
TestSendFile.cpp 1KB
Project1.cpp 1KB
Project1.cpp 1KB
Project1.cpp 1KB
Project1.cpp 1KB
Project1.cpp 1KB
Project1.cpp 1KB
Project1.cpp 1KB
VictorComm32.cpp 731B
VictorComm32.cpp 727B
VictorCommDesign.cpp 528B
VictorCommDesign.cpp 522B
VictorCommDesign.cpp 498B
maintypes.css 2KB
Unit1.ddp 51B
Unit1.ddp 51B
UnitHang.ddp 51B
Unit1.ddp 51B
UnitDial.ddp 51B
Unit1.ddp 51B
Unit1.ddp 51B
Unit1.ddp 51B
Unit1.ddp 51B
UnitSendFile.ddp 51B
Unit1.ddp 51B
UnitDial.dfm 89KB
Unit_YbCommDevice_Settings.dfm 8KB
Unit_YBComm32_About.dfm 5KB
UnitHang.dfm 2KB
Unit1.dfm 2KB
Unit1.dfm 2KB
UnitSendFile.dfm 2KB
Unit1.dfm 2KB
Unit1.dfm 1KB
Unit1.dfm 1KB
Unit1.dfm 1KB
Unit1.dfm 1KB
Unit1.dfm 1KB
Project1.exe 1.16MB
Project1.exe 1.16MB
Project1.exe 1.16MB
topladv.gif 7KB
topradv.gif 5KB
topmadv.gif 3KB
VictorComm.groupproj 2KB
VictorComm.groupproj 2KB
VictorComm.groupproj 2KB
YbCommDevice.h 14KB
TVictorComm32.h 12KB
TVictorCommPkg.h 7KB
Unit_YbCommDevice_Settings.h 7KB
UnitDial.h 4KB
Unit_YBComm32_About.h 4KB
UnitHang.h 2KB
共 185 条
- 1
- 2
资源评论
- skolar2014-05-22可以使用,谢谢
- 爱游泳的猫2018-01-22感谢分享。。。。。。
perter11t
- 粉丝: 2
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功