【发布时间】:2015-01-19 08:58:27
【问题描述】:
我是 Qt 的初学者。现在我想用Qt5通过uart发送一个9字节的命令。 这是我的命令:
FFFFFF5550464DAA0E
我想将我的命令传输到一个 Qstring 对象。当我这样写代码时,它告诉我 const 太大了。
QString str=0xFFFFFF5550464DAA0E;
所以我选择了这样一个数组,但是还是不行。
char cmd[9]={0xFF,0xFF,0xFF,0x55,0x50,0x46,0x4D,0xAA,0x0E};
for(int i=0;i<9;i++)
{
QString str=cmd[i];
QByteArray outData=str.toLatin1();
int size=outData.size();
outData=myHelper::HexStrToByteArray(str);
size=outData.size();
myCom->write(outData);
}
我也试试这个,又失败了
char cmd[9]={0xFF,0xFF,0xFF,0x55,0x50,0x46,0x4D,0xAA,0x0E};
QString str=cmd;
QByteArray outData=str.toLatin1();
int size=outData.size();
outData=myHelper::HexStrToByteArray(str);
size=outData.size();
myCom->write(outData);
那么谁能告诉我该怎么做?
【问题讨论】:
-
你知道
0xFF和"0xFF"的区别吗? -
感谢@paxdiablo 的帮助,现在它可以工作了。我真的很感激
-
感谢您的努力@Adriano Repetti,我认为您的回答可以帮助初学者很多
-
@ctxrr 欢迎您,希望对您有所帮助。小提示:在未来的 SO 问题中尝试发布更多关于 context 的信息(例如,您希望通过 wirte 发送的确切数据),它可能会减少对几行代码的回答(无需 猜测) ;)
-
@Adriano Repetti 好的,我会的。谢谢你的推荐。我不仅是 Qt 的初学者,也是堆栈溢出的新手。