将整个字符串转换为ASCII

时间:2014-02-23 18:26:00

标签: c++ windows serial-port

我正在使用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);

0 个答案:

没有答案