一、 步骤:1.先确定配置IP和端口号,并激活连接
2.配置需要通讯的设备(可以不配置)
3.收发报文
二、具体操作流程
1.打开C++ Builder 2010软件,File -> New -> VCL Forms Application - C++Builder 。创建界面。

2.修改name中的 Form1 成 fm1 方便后续操作。

3. 添加 TcpClient 组件。在组件栏(Tool Palette)搜 TcpClient 并拖到主界面中。


4. 切换到代码界面。按 F12 或 双击主界面 或 点击主页面下方的 Unit1.cpp(这里我采用双击主界面)


5.编写代码。
(1)收发报文
void WiFi_Message()
{
// WiFi收发报文
const char datasend[12]={0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x00,0x00,0x00,0x02};
unsigned char datarec[13];
fm1->TcpClient1->SendBuf((char *)datasend,12,0);// 发数据 SendBuf(输入的数据,字节长度,0)
fm1->TcpClient1->ReceiveBuf((char *)datarec,13);// 收数据 13->sizeof(datarec)
}
(2) 配置IP和端口号,并激活连接
void TH_CALC()
{
// WiFi通讯
fm1->TcpClient1 ->RemoteHost = "10.101.23.14"; //下位机(温湿度计)IP:10.101.23.14
fm1->TcpClient1 ->RemotePort = "502"; //下位机(温湿度计)端口号:502
fm1->TcpClient1 ->Open();
fm1->TcpClient1 ->Connect();
if(fm1->TcpClient1 ->Connected ){
ShowMessage("通讯成功");
WiFi_Message();
}
else {ShowMessage("通讯失败");}
}
void __fastcall Tfm1::FormCreate(TObject *Sender)
{
TH_CALC();
}
//---------------------------------------------------------------------------
6.完整代码。上述第5点是代码解析,复制第6点可以直接生成代码。
void WiFi_Message()
{
// WiFi收发报文
const char datasend[12]={0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x00,0x00,0x00,0x02};
unsigned char datarec[13];
fm1->TcpClient1->SendBuf((char *)datasend,12,0);// 发数据 SendBuf(输入的数据,字节长度,0)
fm1->TcpClient1->ReceiveBuf((char *)datarec,13);// 收数据 13->sizeof(datarec)
}
void TH_CALC()
{
// WiFi通讯
fm1->TcpClient1 ->RemoteHost = "10.101.23.14"; //下位机(温湿度计)IP:10.101.23.14
fm1->TcpClient1 ->RemotePort = "502"; //下位机(温湿度计)端口号:502
fm1->TcpClient1 ->Open();
fm1->TcpClient1 ->Connect();
if(fm1->TcpClient1 ->Connected ){
ShowMessage("通讯成功");
WiFi_Message();
}
else {ShowMessage("通讯失败");}
}
void __fastcall Tfm1::FormCreate(TObject *Sender)
{
TH_CALC();
}
//---------------------------------------------------------------------------
7.编译代码并运行。按 F9键 或 Run。

8.源码链接。可直接在桌面运行
https://download.csdn.net/download/God_me_1/89446836?spm=1001.2014.3001.5503

3826

被折叠的 条评论
为什么被折叠?



