Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将十六进制数据发送到串行端口?_C++_Serial Port_Hex - Fatal编程技术网

C++ 将十六进制数据发送到串行端口?

C++ 将十六进制数据发送到串行端口?,c++,serial-port,hex,C++,Serial Port,Hex,我有一个GPS连接到USB0,我可以完美地读取所有内容,但现在我正在尝试向它写入数据。它用于发送和接收十六进制数据。我试着向GPS发送数据。假设我想把0xb60x62发送到端口,我怎么能在C++中完成。我用过这个,但我不知道我是对还是错有人能帮我吗 int main() { unsigned char bytestosend[2] = {0xB5, 0x62}; write(fd,&bytestosend,2); } 当然,我打开了文件描述符fd的端口。基本上,如果G

我有一个GPS连接到USB0,我可以完美地读取所有内容,但现在我正在尝试向它写入数据。它用于发送和接收十六进制数据。我试着向GPS发送数据。假设我想把0xb60x62发送到端口,我怎么能在C++中完成。我用过这个,但我不知道我是对还是错有人能帮我吗

int main()
{
    unsigned char bytestosend[2] = {0xB5, 0x62};

    write(fd,&bytestosend,2);
}

当然,我打开了文件描述符fd的端口。

基本上,如果GPS读取的是十六进制字节,那么您所做的是正确的。但它也可以读取字符串编码的十六进制值,所以请确保这一点。所以从你所说的,我认为你写的是对的


您没有说明如何打开串行端口,但请小心使用termios并正确设置连接,否则可能会出现问题。您不能像打开标准文件一样打开端口。如果你还没做过,好好读一读吧

基本上,如果GPS读取的是十六进制字节,那么您所做的是正确的。但它也可以读取字符串编码的十六进制值,所以请确保这一点。所以从你所说的,我认为你写的是对的


您没有说明如何打开串行端口,但请小心使用termios并正确设置连接,否则可能会出现问题。您不能像打开标准文件一样打开端口。如果你还没做过,好好读一读吧

您是如何接收“十六进制”数据的?是
B5
0xB5
还是
“B5”
?您是如何接收“十六进制”数据的?是
B5
0xB5
还是
“B5”