diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/serialbus/can/connectdialog.cpp | 12 | ||||
-rw-r--r-- | examples/serialbus/can/connectdialog.ui | 10 | ||||
-rw-r--r-- | examples/serialbus/can/mainwindow.cpp | 6 | ||||
-rw-r--r-- | examples/serialbus/can/mainwindow.ui | 22 |
4 files changed, 42 insertions, 8 deletions
diff --git a/examples/serialbus/can/connectdialog.cpp b/examples/serialbus/can/connectdialog.cpp index 5d9e33d..920aeef 100644 --- a/examples/serialbus/can/connectdialog.cpp +++ b/examples/serialbus/can/connectdialog.cpp @@ -62,6 +62,8 @@ ConnectDialog::ConnectDialog(QWidget *parent) : m_ui->canFdBox->addItem(tr("false"), QVariant(false)); m_ui->canFdBox->addItem(tr("true"), QVariant(true)); + m_ui->dataBitrateBox->setFlexibleDateRateEnabled(true); + connect(m_ui->okButton, &QPushButton::clicked, this, &ConnectDialog::ok); connect(m_ui->cancelButton, &QPushButton::clicked, this, &ConnectDialog::cancel); connect(m_ui->useConfigurationBox, &QCheckBox::clicked, @@ -162,6 +164,9 @@ void ConnectDialog::revertSettings() value = configurationValue(QCanBusDevice::CanFdKey); m_ui->canFdBox->setCurrentText(value); + + value = configurationValue(QCanBusDevice::DataBitRateKey); + m_ui->dataBitrateBox->setCurrentText(value); } void ConnectDialog::updateSettings() @@ -218,5 +223,12 @@ void ConnectDialog::updateSettings() fdItem.first = QCanBusDevice::CanFdKey; fdItem.second = m_ui->canFdBox->currentData(); m_currentSettings.configurations.append(fdItem); + + // process data bitrate + const int dataBitrate = m_ui->dataBitrateBox->bitRate(); + if (dataBitrate > 0) { + const ConfigurationItem item(QCanBusDevice::DataBitRateKey, QVariant(dataBitrate)); + m_currentSettings.configurations.append(item); + } } } diff --git a/examples/serialbus/can/connectdialog.ui b/examples/serialbus/can/connectdialog.ui index 345ff64..aad6bef 100644 --- a/examples/serialbus/can/connectdialog.ui +++ b/examples/serialbus/can/connectdialog.ui @@ -146,6 +146,16 @@ <item row="5" column="1"> <widget class="QComboBox" name="canFdBox"/> </item> + <item row="6" column="0"> + <widget class="QLabel" name="dataBitrateLabel"> + <property name="text"> + <string>Data Bitrate</string> + </property> + </widget> + </item> + <item row="6" column="1"> + <widget class="BitRateBox" name="dataBitrateBox"/> + </item> </layout> </widget> </item> diff --git a/examples/serialbus/can/mainwindow.cpp b/examples/serialbus/can/mainwindow.cpp index 2e75037..b27baaa 100644 --- a/examples/serialbus/can/mainwindow.cpp +++ b/examples/serialbus/can/mainwindow.cpp @@ -202,7 +202,10 @@ void MainWindow::checkMessages() .arg(frame.timeStamp().seconds(), 10, 10, QLatin1Char(' ')) .arg(frame.timeStamp().microSeconds() / 100, 4, 10, QLatin1Char('0')); - m_ui->receivedMessagesEdit->append(time + view); + const QString flags = frame.hasBitrateSwitch() + ? QStringLiteral(" B - ") : QStringLiteral(" - - "); + + m_ui->receivedMessagesEdit->append(time + flags + view); } } @@ -232,6 +235,7 @@ void MainWindow::sendMessage() const frame.setFrameId(id); frame.setExtendedFrameFormat(m_ui->effBox->checkState()); frame.setFlexibleDataRateFormat(m_ui->fdBox->checkState()); + frame.setBitrateSwitch(m_ui->bitrateSwitchBox->checkState()); if (m_ui->remoteFrame->isChecked()) frame.setFrameType(QCanBusFrame::RemoteRequestFrame); diff --git a/examples/serialbus/can/mainwindow.ui b/examples/serialbus/can/mainwindow.ui index 38e1157..72dc62b 100644 --- a/examples/serialbus/can/mainwindow.ui +++ b/examples/serialbus/can/mainwindow.ui @@ -40,7 +40,7 @@ </property> </widget> </item> - <item row="0" column="2" rowspan="3"> + <item row="0" column="2" rowspan="4"> <widget class="QGroupBox" name="groupBox"> <property name="title"> <string>Frame Type</string> @@ -84,7 +84,7 @@ </property> </widget> </item> - <item row="1" column="3"> + <item row="2" column="3"> <widget class="QCheckBox" name="effBox"> <property name="toolTip"> <string>Allow extended frames with 29 bit identifier. @@ -96,21 +96,21 @@ Otherwise, the standard format with 11 bit idenfier is used.</string> </property> </widget> </item> - <item row="2" column="3"> + <item row="3" column="3"> <widget class="QPushButton" name="sendButton"> <property name="text"> <string>&Send</string> </property> </widget> </item> - <item row="1" column="1"> + <item row="2" column="1"> <widget class="QLineEdit" name="lineEdit"> <property name="placeholderText"> <string>12 34 AB CE</string> </property> </widget> </item> - <item row="1" column="0"> + <item row="2" column="0"> <widget class="QLabel" name="label_2"> <property name="text"> <string>&Data (hex)</string> @@ -120,6 +120,14 @@ Otherwise, the standard format with 11 bit idenfier is used.</string> </property> </widget> </item> + <item row="1" column="3"> + <widget class="QCheckBox" name="bitrateSwitchBox"> + <property name="text"> + <string>&Bitrate Switch +(Higher data rate)</string> + </property> + </widget> + </item> </layout> </item> </layout> @@ -143,7 +151,7 @@ Otherwise, the standard format with 11 bit idenfier is used.</string> <enum>QFrame::StyledPanel</enum> </property> <property name="text"> - <string>Timestamp CAN-ID DLC Data</string> + <string>Timestamp Flags CAN-ID DLC Data</string> </property> </widget> </item> @@ -180,7 +188,7 @@ Otherwise, the standard format with 11 bit idenfier is used.</string> <x>0</x> <y>0</y> <width>551</width> - <height>21</height> + <height>19</height> </rect> </property> <widget class="QMenu" name="menuCalls"> |