2016-04-09 32 views
0

QtはCOMポート経由のデータをすべて読み取ることができません。私はボーレート4800を使用します。データが失われてしまいます。何故ですか。私が20行を送った場合、私は15/16しか受け取りません。ここでQtシリアル読み取りデータがありません

は、コードは次のとおりです。

if (arduino - > canReadLine()) 
{ 
QByteArray serialData = arduino->readLine() ; 
QString serialBuffer = QString :: fromStdString(SerialData.toStdString()); 
ui->listWidget->addItem(serialBuffer) ; 
} 

私listWidgetは、残りは失われ、わずか数着信データが表示されます。

Qt Serial Port Settings : 
Baud Rate = 4800 
Data Bits = Data8 
Flow Control = NoFlowControl 
Parity = NoParity 
Stop Bits = OneStop 


Arduino (Transmitter) baud rate = 4800 

。ここで

+2

COMパラメータでコードを入力してください。また、読んでいるデバイスのCOMパラメータを追加します。 – Ilya

+0

私のコードは以下に示されています –

+0

'QString serialBuffer = serialData;' std :: stringで渡さないでください。 – MKAROL

答えて

0

は、コードは次のとおりです。

if (arduino - > canReadLine()) 
{ 
    QByteArray serialData = arduino->readLine() ; 
    QString serialBuffer = QString :: fromStdString(SerialData.toStdString()); 
    ui->listWidget->addItem(serialBuffer) ; 
} 

私listWidgetは、残りは失われ、わずか数着信データが表示されます。

+0

COMポートが表示されません(ポートを開いているとき)。それは答えではありません。あなたの質問にコードを追加し、あなたの答えを削除してください。 – Ilya

+0

はCOMパラメータを更新しました –

関連する問題