#include <Stdio.h>
#include <Stdlib.h>
#include <bios.h>
#include <dos.h>
#include <conio.h>
#include <string.h>
#include <symbol.h>
#include <DownComm.h>
int main()
{
BYTE byCh;
char buf[256];
CMotorNet mMotorNet; //使用通讯口COM1,波特率9600,8位数据位,1位起始位,1位停止位,无奇偶校验,查询方式
mMotorNet.Init(0x2F8, 9600, 8, 1, 1, NO_PARITY, FALSE); //如果中断方式, FALSE改为TRUE即可。
//发送一个字节
byData = 'W'
mMotorNet.SendData(byData);
//发送一个串
::_fstrcpy(buf, "This is WinSail V2.0!");
mMotorNet.SendBuffer(buf, _strlen(buf) + 1);
//接收一个数据
byCh = mMotorNet.ReceiveData();
if (byCh == 0 && GetLastCommError() == COMM_ERROR_CODE_TIME)
{
//这里没有读到数据
}
else
{
//这里读到了数据
}
//接收一个串,超时为165mS(=3 * 55mS)
int nCount = mMotorNet.ReceiveData(buf, 256, 3);
if (nCoun == 0)
{
//这里完全没有数据
}
else if (nCount != 256)
{
//这里不足256字节的数据
}
else
{
//这里读足了256字节数据
}
//接收8个字节的串,有超时处理
BOOL bSuccess = TRUE;
for (int i = 0; i < 8; i++)
{
if (!mMotorNet.WaitCommData(3)) //3 * 55mS超时
{
bSuccess = FALSE;
break;
}
buf[i] = mMotorNet.ReceiveData();
}
if (bSuccess)
{
//成功读到8个字节
}
else
{
//没有读到8个字节
}
//接收8个字节的串,无超时处理
for (int i = 0; i < 8; i++)
{
while (!mMotorNet.IsCommData())
{
}
buf[i] = mMotorNet.ReceiveData();
}
return(0);
}
#include <Stdlib.h>
#include <bios.h>
#include <dos.h>
#include <conio.h>
#include <string.h>
#include <symbol.h>
#include <DownComm.h>
int main()
{
BYTE byCh;
char buf[256];
CMotorNet mMotorNet; //使用通讯口COM1,波特率9600,8位数据位,1位起始位,1位停止位,无奇偶校验,查询方式
mMotorNet.Init(0x2F8, 9600, 8, 1, 1, NO_PARITY, FALSE); //如果中断方式, FALSE改为TRUE即可。
//发送一个字节
byData = 'W'
mMotorNet.SendData(byData);
//发送一个串
::_fstrcpy(buf, "This is WinSail V2.0!");
mMotorNet.SendBuffer(buf, _strlen(buf) + 1);
//接收一个数据
byCh = mMotorNet.ReceiveData();
if (byCh == 0 && GetLastCommError() == COMM_ERROR_CODE_TIME)
{
//这里没有读到数据
}
else
{
//这里读到了数据
}
//接收一个串,超时为165mS(=3 * 55mS)
int nCount = mMotorNet.ReceiveData(buf, 256, 3);
if (nCoun == 0)
{
//这里完全没有数据
}
else if (nCount != 256)
{
//这里不足256字节的数据
}
else
{
//这里读足了256字节数据
}
//接收8个字节的串,有超时处理
BOOL bSuccess = TRUE;
for (int i = 0; i < 8; i++)
{
if (!mMotorNet.WaitCommData(3)) //3 * 55mS超时
{
bSuccess = FALSE;
break;
}
buf[i] = mMotorNet.ReceiveData();
}
if (bSuccess)
{
//成功读到8个字节
}
else
{
//没有读到8个字节
}
//接收8个字节的串,无超时处理
for (int i = 0; i < 8; i++)
{
while (!mMotorNet.IsCommData())
{
}
buf[i] = mMotorNet.ReceiveData();
}
return(0);
}


