Plusieurs développements, dont l'implémentation du endian Intel

This commit is contained in:
2023-06-13 17:54:05 -04:00
parent 48e9ca3f9c
commit 9f79fb6390
37 changed files with 4363 additions and 383 deletions
+12 -2
View File
@@ -150,6 +150,10 @@ void CCANViewerPage::MessageSelectionChanged()
//Phys value
//JFM 2023-06-13 changé pour forcer toujours à float
NewItem = new QTableWidgetItem(QString("%1").arg(Msg->mSignalsList.at(signal).mPhysicalValue,0,'f',1));
/*
if(Msg->mSignalsList.at(signal).mValueType == CCANSignal::CAN_SIGNAL_TYPE_UNSIGNED_INT)
{
NewItem = new QTableWidgetItem(QString("%1").arg((quint64)Msg->mSignalsList.at(signal).mPhysicalValue));
@@ -163,7 +167,7 @@ void CCANViewerPage::MessageSelectionChanged()
Msg->mSignalsList.at(signal).mValueType == CCANSignal::CAN_SIGNAL_TYPE_64_BIT_DOUBLE)
{
NewItem = new QTableWidgetItem(QString("%1").arg(Msg->mSignalsList.at(signal).mPhysicalValue,0,'f',1));
}
}*/
ui->mCANSignalTableWidget->setItem(signal,1,NewItem);
//Raw value
@@ -198,6 +202,12 @@ int CCANViewerPage::UpdateSignalsTable()
ui->mCANSignalTableWidget->item(row,0)->setText(Msg->mSignalsList.at(signal).mSignalName);
//Phys value
//JFM 2023-06-13 changé pour forcer toujours à float
//Mais cette fonciton n'est jamais appelée et NE FONCTIONNE PAS.
//TODO: Corriger les index des colonnes des items à afficher
ui->mCANSignalTableWidget->item(row,0)->setText(QString("%1").arg(Msg->mSignalsList.at(signal).mPhysicalValue,0,'f',1));
/*
if(Msg->mSignalsList.at(signal).mValueType == CCANSignal::CAN_SIGNAL_TYPE_UNSIGNED_INT)
{
ui->mCANSignalTableWidget->item(row,0)->setText(QString("%1").arg((quint64)Msg->mSignalsList.at(signal).mPhysicalValue));
@@ -210,7 +220,7 @@ int CCANViewerPage::UpdateSignalsTable()
Msg->mSignalsList.at(signal).mValueType == CCANSignal::CAN_SIGNAL_TYPE_64_BIT_DOUBLE)
{
ui->mCANSignalTableWidget->item(row,0)->setText(QString("%1").arg(Msg->mSignalsList.at(signal).mPhysicalValue,0,'f',1));
}
}*/
//Raw value
ui->mCANSignalTableWidget->item(row,0)->setText(QString("0x%1").arg(Msg->mSignalsList.at(signal).mRawValue,0,16));
@@ -64,6 +64,7 @@ CCANbusSettingsPage::CCANbusSettingsPage(QWidget *parent) :
ui->mDatabaseFileSelectBtn->hide();
ui->mCANBaudrateComboBx->setEnabled(false);
//ui->mCANIDComboBx->setEnabled(false);
ui->mCANDeviceIDSpinBx->setValue(1);
ui->mCANDeviceIDSpinBx->setEnabled(false); //JFM 2023-06-02
ui->mDevicePollPeriodSpinBx->setEnabled(false);
ui->mCancelModifyParamsBtn->hide();
@@ -1,11 +1,13 @@
#include "CCANWatchdogSettingsPage.h"
#include "ui_CCANWatchdogSettingsPage.h"
#include "CANDevice.h"
#include "OtarcikCan.h"
CCANWatchdogSettingsPage::CCANWatchdogSettingsPage(QWidget *parent) :
QWidget(parent),
ui(new Ui::CCANWatchdogSettingsPage)
{
mProgramHandle = 0;
ui->setupUi(this);
connect(ui->mCANWatchdogChangBtn,&QPushButton::pressed,this,&CCANWatchdogSettingsPage::ChangeSettingsButtonPressed);
@@ -67,6 +69,7 @@ void CCANWatchdogSettingsPage::ChangeSettingsButtonPressed()
}
else
{
mIsSettingsChangeMode = false;
ui->mCANWatchdogCancelBtn->setVisible(false);
@@ -74,5 +77,28 @@ void CCANWatchdogSettingsPage::ChangeSettingsButtonPressed()
ui->mCANWatchdogDeviceIDSpinBx->setEnabled(false);
ui->mCANWatchdogTimeoutSpinBx->setEnabled(false);
ui->mCANWatchdogChangBtn->setText("Modifier");
//Save data...
mCANWatchdogConfig.mCANDeviceID = ui->mCANWatchdogDeviceIDSpinBx->value();
mCANWatchdogConfig.mWatchdogTimeout = ui->mCANWatchdogTimeoutSpinBx->value();
mCANWatchdogConfig.mCANDeviceBaudrate = ui->mCANWatchdogBaudrateComboBx->currentData().toInt();
mProgramHandle->SaveCANWatchdogSettingsRequest(&mCANWatchdogConfig);
}
}
int CCANWatchdogSettingsPage::SetCANWatchdogConfig(CCANWatchdogConfig *Config)
{
if(Config == 0)
{
return RET_GENERAL_ERROR;
}
mCANWatchdogConfig = *Config;
ui->mCANWatchdogDeviceIDSpinBx->setValue(mCANWatchdogConfig.mCANDeviceID);
ui->mCANWatchdogTimeoutSpinBx->setValue(mCANWatchdogConfig.mWatchdogTimeout);
ui->mCANWatchdogBaudrateComboBx->setCurrentIndex(ui->mCANWatchdogBaudrateComboBx->findData(mCANWatchdogConfig.mCANDeviceBaudrate));
return RET_OK;
}
@@ -2,6 +2,9 @@
#define CCANWATCHDOGSETTINGSPAGE_H
#include <QWidget>
#include "CANWatchdogConfig.h"
class COtarcikCan;
namespace Ui {
class CCANWatchdogSettingsPage;
@@ -15,10 +18,15 @@ public:
explicit CCANWatchdogSettingsPage(QWidget *parent = 0);
~CCANWatchdogSettingsPage();
bool mIsSettingsChangeMode;
COtarcikCan *mProgramHandle;
int SetCANWatchdogConfig(CCANWatchdogConfig* Config);
private:
Ui::CCANWatchdogSettingsPage *ui;
CCANWatchdogConfig mCANWatchdogConfig;
public slots:
void ChangeSettingsButtonPressed();
void CancelButtonPressed();
@@ -13,6 +13,9 @@ CGeneralStatusPage::CGeneralStatusPage(QWidget *parent) :
connect(ui->mClearGenMsgTxtBtn,&QPushButton::clicked,this,&CGeneralStatusPage::ClearGenMsgAreaBtnPressed);
SetMQTTConnectionStatus(false);
SetCANConnectionStatus(false);
ui->mCANModuleStatusTableWdgt->setColumnCount(3);
ui->mCANModuleStatusTableWdgt->setHorizontalHeaderLabels(QStringList() << "Nom" << "Statut" << "Buffer");
}
CGeneralStatusPage::~CGeneralStatusPage()
@@ -138,3 +141,46 @@ int CGeneralStatusPage::SetCANConnectionStatus(bool Connected)
return RET_OK;
}
int CGeneralStatusPage::UpdateCANModuleStatus(QString ModuleName, QString ModuleStatus, QString Buffer)
{
QList<QTableWidgetItem *> Items = ui->mCANModuleStatusTableWdgt->findItems(ModuleName,Qt::MatchFixedString);
if(Items.isEmpty())
{
//first update, we add the item to the table
QTableWidgetItem *NewItem;
int row = ui->mCANModuleStatusTableWdgt->rowCount();
ui->mCANModuleStatusTableWdgt->setRowCount(row + 1);
NewItem = new QTableWidgetItem(ModuleName);
ui->mCANModuleStatusTableWdgt->setItem(row,0,NewItem);
NewItem = new QTableWidgetItem(ModuleStatus);
ui->mCANModuleStatusTableWdgt->setItem(row,1,NewItem);
if(Buffer == "NOUPDATE")
Buffer = "?";
NewItem = new QTableWidgetItem(Buffer);
ui->mCANModuleStatusTableWdgt->setItem(row,2,NewItem);
}
else if(Items.size() == 1)
{
int row = ui->mCANModuleStatusTableWdgt->row(Items.at(0));
if(ModuleStatus != "NOUPDATE")
{
ui->mCANModuleStatusTableWdgt->item(row,1)->setText(ModuleStatus);
}
if(Buffer != "NOUPDATE")
{
ui->mCANModuleStatusTableWdgt->item(row,2)->setText(Buffer);
}
}
else
{
qDebug("Two CAN modules with same name in the Modules Status Table");
}
return RET_OK;
}
@@ -32,6 +32,7 @@ public:
int SetMQTTConnectionStatus(bool Connected);
int SetCANConnectionStatus(bool Connected);
int UpdateCANModuleStatus(QString ModuleName, QString ModuleStatus, QString Buffer);
private:
+31 -11
View File
@@ -50,8 +50,8 @@
<widget class="QLabel" name="mPuckCANLbl">
<property name="geometry">
<rect>
<x>390</x>
<y>520</y>
<x>1220</x>
<y>210</y>
<width>81</width>
<height>16</height>
</rect>
@@ -68,8 +68,8 @@
<widget class="QLabel" name="mClientMQTTLbl">
<property name="geometry">
<rect>
<x>370</x>
<y>550</y>
<x>1200</x>
<y>240</y>
<width>101</width>
<height>16</height>
</rect>
@@ -86,8 +86,8 @@
<widget class="QLabel" name="mPuckCANConStatLbl">
<property name="geometry">
<rect>
<x>470</x>
<y>520</y>
<x>1300</x>
<y>210</y>
<width>121</width>
<height>16</height>
</rect>
@@ -106,8 +106,8 @@
<widget class="QLabel" name="mClientMQTTConnStatLbl">
<property name="geometry">
<rect>
<x>470</x>
<y>550</y>
<x>1300</x>
<y>240</y>
<width>121</width>
<height>16</height>
</rect>
@@ -123,15 +123,35 @@
<string>Déconnecté</string>
</property>
</widget>
<widget class="QTableWidget" name="tableWidget">
<widget class="QTableWidget" name="mCANModuleStatusTableWdgt">
<property name="geometry">
<rect>
<x>1190</x>
<y>40</y>
<width>371</width>
<height>131</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>1200</x>
<y>20</y>
<width>371</width>
<height>441</height>
<width>221</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>11</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Statut des module CAN </string>
</property>
</widget>
</widget>
<resources/>