我正在使用PLC,我认为只接受ASCII命令,我有一个试图向它发送命令的程序(使用CreateFile,WriteFile,ReadFile),我知道char的ASCII值只是它的整数值。
我不确定整个字符串的ASCII值是什么,例如Hello World?它只是连接在一起的每个字符串的ASCII值吗?这是用于向PLC发送命令,因为发送字符串似乎不起作用而且我不能发送每个字符1到PLC的时间,因为命令必须是整个字符串(表示为ASCII)。
// Write to the COM
static char data[21]="%01#RDD0010000107**\r";
int size = strlen(data);
DWORD dwWritten, dwReading;
DWORD err;
int j;
WriteFile(hCom,data,(DWORD)size,&dwWritten,NULL);
if(!dwWritten)
{
err=GetLastError();
std::cout << err;
}
char datarecv[22];
ReadFile(hCom,datarecv,sizeof(datarecv),&dwReading,NULL);
if(!dwReading)
{
err=GetLastError();
std::cout << err << "\n";
}
std::cout << datarecv << "\n";
CloseHandle(hCom);