使用我的主应用程序发送字节,并将它们作为无符号字符(0x80 及以上)发送。我创建了一个小型支持应用程序,它接收这些数据,将它们写入终端,然后将它们发送回来作为成功传输的确认。但是在支持应用程序中使用此代码:
switch(c) // c being byte from received QByteArray
{
case 0xFF: cout << "Header 1" << endl;
break;
case -1: cout << "0xFF = 255 = -1" << endl;
break;
} //other case statements and default omitted
如果我通过串口发送 0xFF,我会在 cout 上得到“0xFF = 255 = -1”。我确实知道这个数字由 1111 1111 表示(实际上在这种情况下 255 等于 -1),这要归功于 SOF 上的另一篇文章。但是我应该如何接收代码以在终端上获取“Header 1”?