1

我有一个连接到 USB0 的 GPS,我可以完美地读取所有内容,但现在我正在尝试向其写入数据。它适用于发送和接收十六进制数据。我试图将数据发送到 GPS。假设我想将 0xB6 0x62 发送到端口,我怎么能在 C++ 中做到这一点。我用过这个,但我不知道天气我是对是错有人可以帮助我吗

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

    write(fd,&bytestosend,2);
}

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

4

1 回答 1

1

基本上,鉴于您的 GPS 读取实际上是十六进制字节,您所做的是正确的。但它也可以读取字符串编码的十六进制值,因此请确保这一点。所以从你所说的来看,我会说你写得对。

而且你没有说你是如何打开串口的,但是要小心使用 termios 并正确设置连接,否则你可能会遇到问题。您不应该像标准文件一样打开端口。如果您还没有这样做,请好好阅读这篇文章!

于 2013-06-06T13:31:15.290 回答