Die verfügbaren Mitglieder auf QSerialPort für Schreibdaten sind diese von docs:
write(const char *, qint64) : qint64
write(const char *) : qint64
write(const QByteArray &) : qint64
writeData(const char *, qint64) : qint64
writeData(const char *, qint64) : qint64
Wenn Sie serial->write(250)
die Kompilierung werfen die Nummer zu einem int verwenden und threre ist kein Mitglied für einen int verwalten. Wenn Sie stattdessen serial->write("A")
verwenden, kann das "A" in char *
umgewandelt werden.
Für viele Byte senden Sie verwenden können QByteArray:
QByteArray cmd;
cmd.append('A');
cmd.append('B');
cmd.append('C');
serial -> write (cmd);
Auf diese Weise alle Zeichen senden und es gibt eine Menge nützlicher Qt-Klasse, die ein Objekt in eine QByteArray umwandeln kann; Zum Beispiel wird ein QString einfach wie folgt in QByteArray konvertiert:
QString str = "ABC";
QByteArray cmd = str.toLatin1();
serial -> write (cmd);
Könnten Sie etwas von Ihrem Code zeigen? Bitte veröffentlichen Sie ein [minimales, vollständiges und verifizierbares Beispiel] (http://www.stackoverflow.com/help/mcve). – owacoder
Wenn Sie sagen "250 schreiben", was meinst du? Möchten Sie die Zeichenfolge '" 250 "' oder die Zeichenfolge '" \ xFA "', die aus einem einzelnen Byte mit dem Wert 250 besteht, senden? –
Nein ich möchte 250 im dezimal 0xFA in hex senden – Ale