This commit is contained in:
jfmartel 2023-01-21 15:31:49 -05:00
parent c6abea01d5
commit ed0678081f
35 changed files with 2750 additions and 1034 deletions

View File

@ -1,400 +1,529 @@
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 07:54:14 Démarrage du logiciel Otarcik CAN le 2023-01-19 à 16:10:49
******************************************************************** ********************************************************************
2023-01-15 07:54:14 OtarcikCan modules starting... 2023-01-19 16:10:49 Démarrage des modules CAN...
2023-01-15 07:54:14 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-19 16:13:32 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 07:54:14 Could not initialize PCAN USB module. Error:The driver is not loaded 2023-01-19 16:13:32 Initialisation du module PCAN USB avec succès
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 09:36:25 Démarrage du logiciel Otarcik CAN le 2023-01-19 à 16:14:06
******************************************************************** ********************************************************************
2023-01-15 09:36:25 OtarcikCan modules starting... 2023-01-19 16:14:06 Démarrage des modules CAN...
2023-01-15 09:36:25 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 09:36:25 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 09:55:00 Démarrage du logiciel Otarcik CAN le 2023-01-19 à 16:14:48
******************************************************************** ********************************************************************
2023-01-15 09:55:00 OtarcikCan modules starting... 2023-01-19 16:14:49 Démarrage des modules CAN...
2023-01-15 09:55:00 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-19 16:14:49 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 09:55:00 PCAN USB init SUCCESS 2023-01-19 16:14:49 Initialisation du module PCAN USB avec succès
2023-01-19 16:15:12 Déinitialisation du module PCAN USB ID 81
2023-01-19 16:15:12 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 09:58:57 Démarrage du logiciel Otarcik CAN le 2023-01-19 à 16:17:21
******************************************************************** ********************************************************************
2023-01-15 09:58:57 OtarcikCan modules starting... 2023-01-19 16:17:21 Démarrage des modules CAN...
2023-01-15 09:58:57 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-19 16:17:21 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 09:58:57 PCAN USB init SUCCESS 2023-01-19 16:17:21 Initialisation du module PCAN USB avec succès
2023-01-19 16:17:32 Déinitialisation du module PCAN USB ID 81
2023-01-19 16:17:32 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 10:09:05 Démarrage du logiciel Otarcik CAN le 2023-01-19 à 16:36:11
******************************************************************** ********************************************************************
2023-01-15 10:09:05 OtarcikCan modules starting... 2023-01-19 16:36:11 Démarrage des modules CAN...
2023-01-15 10:09:05 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-19 16:36:11 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 10:09:05 PCAN USB init SUCCESS 2023-01-19 16:36:11 Initialisation du module PCAN USB avec succès
2023-01-19 16:36:14 Déinitialisation du module PCAN USB ID 81
2023-01-19 16:36:14 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 10:19:19 Démarrage du logiciel Otarcik CAN le 2023-01-19 à 19:35:56
******************************************************************** ********************************************************************
2023-01-15 10:19:19 OtarcikCan modules starting... 2023-01-19 19:35:56 Démarrage des modules CAN...
2023-01-15 10:19:19 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-19 19:35:56 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 10:19:19 PCAN USB init SUCCESS 2023-01-19 19:35:56 Initialisation du module PCAN USB avec succès
2023-01-19 19:36:08 Déinitialisation du module PCAN USB ID 81
2023-01-19 19:36:08 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 10:23:50 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:25:03
******************************************************************** ********************************************************************
2023-01-15 10:23:50 OtarcikCan modules starting... 2023-01-21 10:25:32 Erreur de base de données: impossible de charger le fichier IVT-S_all-variations_12082020
2023-01-15 10:23:51 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 10:23:51 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:13:40 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:27:07
******************************************************************** ********************************************************************
2023-01-15 11:13:40 OtarcikCan modules starting... 2023-01-21 10:27:33 Erreur de base de données: impossible de charger le fichier IVT-S_all-variations_12082020
2023-01-15 11:13:40 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 11:13:40 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:17:28 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:27:37
******************************************************************** ********************************************************************
2023-01-15 11:17:28 OtarcikCan modules starting... 2023-01-21 10:27:37 Erreur de base de données: impossible de charger le fichier IVT-S_all-variations_12082020
2023-01-15 11:17:28 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 10:27:37 Démarrage des modules CAN...
2023-01-15 11:17:28 PCAN USB init SUCCESS 2023-01-21 10:27:37 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 10:27:37 Initialisation du module PCAN USB avec succès
2023-01-21 10:27:46 Déinitialisation du module PCAN USB ID 81
2023-01-21 10:27:46 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:17:43 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:30:11
******************************************************************** ********************************************************************
2023-01-15 11:17:43 OtarcikCan modules starting...
2023-01-15 11:17:43 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 11:17:43 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:19:36 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:30:53
******************************************************************** ********************************************************************
2023-01-15 11:19:36 OtarcikCan modules starting...
2023-01-15 11:19:36 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 11:19:36 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:26:01 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:31:17
******************************************************************** ********************************************************************
2023-01-15 11:26:01 OtarcikCan modules starting... 2023-01-21 10:31:23 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:26:01 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 10:34:22 Démarrage des modules CAN...
2023-01-15 11:26:01 PCAN USB init SUCCESS 2023-01-21 10:34:22 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 10:34:22 Initialisation du module PCAN USB avec succès
2023-01-21 10:34:47 Déinitialisation du module PCAN USB ID 81
2023-01-21 10:34:47 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:27:35 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:36:48
******************************************************************** ********************************************************************
2023-01-15 11:27:35 OtarcikCan modules starting... 2023-01-21 10:36:54 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:27:35 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 11:27:35 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:30:32 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:37:37
******************************************************************** ********************************************************************
2023-01-15 11:30:32 OtarcikCan modules starting... 2023-01-21 10:37:41 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:30:32 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 11:30:32 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:31:26 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 10:41:43
******************************************************************** ********************************************************************
2023-01-15 11:31:26 OtarcikCan modules starting... 2023-01-21 10:41:46 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:31:26 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 11:31:26 PCAN USB init SUCCESS
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:33:12 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 11:18:12
******************************************************************** ********************************************************************
2023-01-15 11:33:12 OtarcikCan modules starting... 2023-01-21 11:18:12 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:33:12 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 11:18:12 Démarrage des modules CAN...
2023-01-15 11:33:12 PCAN USB init SUCCESS 2023-01-21 11:18:12 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 11:18:12 Initialisation du module PCAN USB avec succès
2023-01-21 11:18:26 Déinitialisation du module PCAN USB ID 81
2023-01-21 11:18:26 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:37:57 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 11:22:04
******************************************************************** ********************************************************************
2023-01-15 11:37:57 OtarcikCan modules starting... 2023-01-21 11:22:04 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:37:57 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 11:22:04 Démarrage des modules CAN...
2023-01-15 11:37:57 PCAN USB init SUCCESS 2023-01-21 11:22:04 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 11:22:04 Initialisation du module PCAN USB avec succès
2023-01-21 11:22:12 Déinitialisation du module PCAN USB ID 81
2023-01-21 11:22:12 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:41:48 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 11:36:16
******************************************************************** ********************************************************************
2023-01-15 11:41:48 OtarcikCan modules starting... 2023-01-21 11:36:16 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:41:48 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 11:36:16 Démarrage des modules CAN...
2023-01-15 11:41:48 PCAN USB init SUCCESS 2023-01-21 11:36:16 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 11:36:16 Initialisation du module PCAN USB avec succès
2023-01-21 11:36:27 Déinitialisation du module PCAN USB ID 81
2023-01-21 11:36:27 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:46:15 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 11:48:33
******************************************************************** ********************************************************************
2023-01-15 11:46:15 OtarcikCan modules starting... 2023-01-21 11:48:33 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:46:15 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 11:48:34 Démarrage des modules CAN...
2023-01-15 11:46:15 PCAN USB init SUCCESS 2023-01-21 11:48:34 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 11:48:34 Initialisation du module PCAN USB avec succès
2023-01-21 11:48:46 Déinitialisation du module PCAN USB ID 81
2023-01-21 11:48:46 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:48:09 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 11:53:09
******************************************************************** ********************************************************************
2023-01-15 11:48:09 OtarcikCan modules starting... 2023-01-21 11:53:09 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:48:09 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 11:53:09 Démarrage des modules CAN...
2023-01-15 11:48:09 PCAN USB init SUCCESS 2023-01-21 11:53:09 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 11:53:09 Initialisation du module PCAN USB avec succès
2023-01-21 11:53:51 Déinitialisation du module PCAN USB ID 81
2023-01-21 11:53:51 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:52:26 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 12:15:34
******************************************************************** ********************************************************************
2023-01-15 11:52:26 OtarcikCan modules starting... 2023-01-21 12:15:34 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:52:26 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 12:15:34 Démarrage des modules CAN...
2023-01-15 11:52:26 PCAN USB init SUCCESS 2023-01-21 12:15:34 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 12:15:34 Initialisation du module PCAN USB avec succès
2023-01-21 12:15:44 Déinitialisation du module PCAN USB ID 81
2023-01-21 12:15:44 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:53:09 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 12:18:47
******************************************************************** ********************************************************************
2023-01-15 11:53:09 OtarcikCan modules starting... 2023-01-21 12:18:47 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:53:09 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 12:18:47 Démarrage des modules CAN...
2023-01-15 11:53:09 PCAN USB init SUCCESS 2023-01-21 12:18:47 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 12:18:47 Initialisation du module PCAN USB avec succès
2023-01-21 12:18:57 Déinitialisation du module PCAN USB ID 81
2023-01-21 12:18:58 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 11:58:45 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 12:46:48
******************************************************************** ********************************************************************
2023-01-15 11:58:45 OtarcikCan modules starting... 2023-01-21 12:46:48 Base de données chargée avec succès. Flags: 0x0
2023-01-15 11:58:45 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 12:46:48 Démarrage des modules CAN...
2023-01-15 11:58:45 PCAN USB init SUCCESS 2023-01-21 12:46:49 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 12:46:49 Initialisation du module PCAN USB avec succès
2023-01-21 12:46:54 Déinitialisation du module PCAN USB ID 81
2023-01-21 12:46:54 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:01:26 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:02:57
******************************************************************** ********************************************************************
2023-01-15 12:01:26 OtarcikCan modules starting... 2023-01-21 13:02:57 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:01:26 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:02:57 Démarrage des modules CAN...
2023-01-15 12:01:26 PCAN USB init SUCCESS 2023-01-21 13:02:57 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:02:57 Initialisation du module PCAN USB avec succès
2023-01-21 13:03:21 Déinitialisation du module PCAN USB ID 81
2023-01-21 13:03:21 Module PCAN USB déinitialisé avec succès...
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:05:26 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:03:48
******************************************************************** ********************************************************************
2023-01-15 12:05:26 OtarcikCan modules starting... 2023-01-21 13:03:48 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:05:26 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:03:48 Démarrage des modules CAN...
2023-01-15 12:05:26 PCAN USB init SUCCESS 2023-01-21 13:03:48 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:03:48 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 13:03:48 Impossible d'initialiser le matériel CAN
2023-01-21 13:04:12 Déinitialisation du module PCAN USB ID 83
2023-01-21 13:04:12 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:05:33 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:05:47
******************************************************************** ********************************************************************
2023-01-15 12:05:33 OtarcikCan modules starting... 2023-01-21 13:05:47 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:05:33 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:05:47 Démarrage des modules CAN...
2023-01-15 12:05:33 PCAN USB init SUCCESS 2023-01-21 13:05:47 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:05:47 Initialisation du module PCAN USB avec succès
2023-01-21 13:05:47 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 13:05:47 Démarrage des modules CAN...
2023-01-21 13:05:47 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:05:47 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 13:05:47 Impossible d'initialiser le matériel CAN
2023-01-21 13:06:15 Déinitialisation du module PCAN USB ID 81
2023-01-21 13:06:15 Module PCAN USB déinitialisé avec succès...
2023-01-21 13:06:15 Déinitialisation du module PCAN USB ID 83
2023-01-21 13:06:15 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:06:56 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:07:43
******************************************************************** ********************************************************************
2023-01-15 12:06:56 OtarcikCan modules starting... 2023-01-21 13:07:43 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:06:56 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:07:43 Démarrage d'un module CAN...
2023-01-15 12:06:56 PCAN USB init SUCCESS 2023-01-21 13:07:43 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:07:43 Initialisation du module PCAN USB avec succès
2023-01-21 13:07:43 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 13:07:43 Démarrage d'un module CAN...
2023-01-21 13:07:43 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 13:07:43 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 13:07:43 Impossible d'initialiser le matériel CAN
2023-01-21 13:08:50 Déinitialisation du module PCAN USB ID 81
2023-01-21 13:08:50 Module PCAN USB déinitialisé avec succès...
2023-01-21 13:08:50 Déinitialisation du module PCAN USB ID 83
2023-01-21 13:08:50 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:07:27 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:50:04
******************************************************************** ********************************************************************
2023-01-15 12:07:27 OtarcikCan modules starting... 2023-01-21 13:50:04 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:07:27 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:50:04 Démarrage d'un module CAN...
2023-01-15 12:07:27 PCAN USB init SUCCESS 2023-01-21 13:50:04 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:50:04 Initialisation du module PCAN USB avec succès
2023-01-21 13:50:04 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 13:50:04 Démarrage d'un module CAN...
2023-01-21 13:50:04 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 13:50:04 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 13:50:04 Impossible d'initialiser le matériel CAN
2023-01-21 13:50:31 Déinitialisation du module PCAN USB ID 81
2023-01-21 13:50:31 Module PCAN USB déinitialisé avec succès...
2023-01-21 13:50:31 Déinitialisation du module PCAN USB ID 83
2023-01-21 13:50:31 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:07:42 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:51:32
******************************************************************** ********************************************************************
2023-01-15 12:07:42 OtarcikCan modules starting... 2023-01-21 13:51:44 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:07:42 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:51:45 Démarrage d'un module CAN...
2023-01-15 12:07:42 PCAN USB init SUCCESS 2023-01-21 13:51:45 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:51:45 Initialisation du module PCAN USB avec succès
2023-01-21 13:51:45 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 13:51:45 Démarrage d'un module CAN...
2023-01-21 13:51:45 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 13:51:45 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 13:51:45 Impossible d'initialiser le matériel CAN
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:14:17 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:52:24
******************************************************************** ********************************************************************
2023-01-15 12:14:17 OtarcikCan modules starting... 2023-01-21 13:52:24 Base de données chargée avec succès. Flags: 0x0
2023-01-15 12:14:17 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:52:24 Démarrage d'un module CAN...
2023-01-15 12:14:17 PCAN USB init SUCCESS 2023-01-21 13:52:24 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 13:52:24 Initialisation du module PCAN USB avec succès
2023-01-21 13:52:24 Erreur de base de données: impossible de charger le fichier Database.dbc
******************************************************************** 2023-01-21 13:52:24 Démarrage d'un module CAN...
Otarcik CAN software startup on 2023-01-15 at 12:14:35 2023-01-21 13:52:24 Initialisation d'un module PCAN. Channel:83, Baudrate:22
******************************************************************** 2023-01-21 13:52:24 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-15 12:14:35 OtarcikCan modules starting... 2023-01-21 13:52:24 Impossible d'initialiser le matériel CAN
2023-01-15 12:14:35 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:52:32 Déinitialisation du module PCAN USB ID 81
2023-01-15 12:14:35 PCAN USB init SUCCESS 2023-01-21 13:52:32 Module PCAN USB déinitialisé avec succès...
2023-01-21 13:52:32 Déinitialisation du module PCAN USB ID 83
2023-01-21 13:52:32 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
Otarcik CAN software startup on 2023-01-15 at 12:50:07
******************************************************************** ********************************************************************
2023-01-15 12:50:07 OtarcikCan modules starting... Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:54:27
2023-01-15 12:50:07 Initializing PCAN USB module. Channel:81, Baudrate:28 ********************************************************************
2023-01-15 12:50:07 PCAN USB init SUCCESS 2023-01-21 13:54:27 Base de données chargée avec succès. Flags: 0x0
2023-01-21 13:54:27 Démarrage d'un module CAN...
2023-01-21 13:54:27 Initialisation d'un module PCAN. Channel:81, Baudrate:28
******************************************************************** 2023-01-21 13:54:27 Initialisation du module PCAN USB avec succès
Otarcik CAN software startup on 2023-01-15 at 13:00:09 2023-01-21 13:54:27 Erreur de base de données: impossible de charger le fichier Database.dbc
******************************************************************** 2023-01-21 13:54:27 Démarrage d'un module CAN...
2023-01-15 13:00:09 OtarcikCan modules starting... 2023-01-21 13:54:27 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-15 13:00:10 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:54:27 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-15 13:00:10 PCAN USB init SUCCESS 2023-01-21 13:54:27 Impossible d'initialiser le matériel CAN
2023-01-21 13:56:09 Déinitialisation du module PCAN USB ID 81
2023-01-21 13:56:09 Module PCAN USB déinitialisé avec succès...
******************************************************************** 2023-01-21 13:56:09 Déinitialisation du module PCAN USB ID 83
Otarcik CAN software startup on 2023-01-15 at 13:39:44 2023-01-21 13:56:09 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
2023-01-15 13:39:44 OtarcikCan modules starting...
2023-01-15 13:39:44 Initializing PCAN USB module. Channel:81, Baudrate:28 ********************************************************************
2023-01-15 13:39:44 PCAN USB init SUCCESS Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:58:18
********************************************************************
2023-01-21 13:58:18 Base de données chargée avec succès. Flags: 0x0
******************************************************************** 2023-01-21 13:58:18 Démarrage d'un module CAN...
Otarcik CAN software startup on 2023-01-15 at 13:40:53 2023-01-21 13:58:18 Initialisation d'un module PCAN. Channel:81, Baudrate:28
******************************************************************** 2023-01-21 13:58:18 Initialisation du module PCAN USB avec succès
2023-01-15 13:40:53 OtarcikCan modules starting... 2023-01-21 13:58:18 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-15 13:40:53 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:58:18 Démarrage d'un module CAN...
2023-01-15 13:40:53 PCAN USB init SUCCESS 2023-01-21 13:58:18 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 13:58:18 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 13:58:18 Impossible d'initialiser le matériel CAN
******************************************************************** 2023-01-21 13:58:25 Déinitialisation du module PCAN USB ID 81
Otarcik CAN software startup on 2023-01-15 at 13:43:32 2023-01-21 13:58:25 Module PCAN USB déinitialisé avec succès...
******************************************************************** 2023-01-21 13:58:25 Déinitialisation du module PCAN USB ID 83
2023-01-15 13:43:32 OtarcikCan modules starting... 2023-01-21 13:58:25 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
2023-01-15 13:43:32 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 13:43:32 PCAN USB init SUCCESS
********************************************************************
Démarrage du logiciel Otarcik CAN le 2023-01-21 à 13:58:56
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 13:44:00 2023-01-21 13:58:56 Base de données chargée avec succès. Flags: 0x0
******************************************************************** 2023-01-21 13:58:56 Démarrage d'un module CAN...
2023-01-15 13:44:00 OtarcikCan modules starting... 2023-01-21 13:58:56 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 13:44:00 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:58:56 Initialisation du module PCAN USB avec succès
2023-01-15 13:44:00 PCAN USB init SUCCESS 2023-01-21 13:58:56 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 13:58:56 Démarrage d'un module CAN...
2023-01-21 13:58:56 Initialisation d'un module PCAN. Channel:83, Baudrate:22
******************************************************************** 2023-01-21 13:58:56 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
Otarcik CAN software startup on 2023-01-15 at 13:46:23 2023-01-21 13:58:56 Impossible d'initialiser le matériel CAN
******************************************************************** 2023-01-21 13:59:07 Déinitialisation du module PCAN USB ID 81
2023-01-15 13:46:23 OtarcikCan modules starting... 2023-01-21 13:59:07 Module PCAN USB déinitialisé avec succès...
2023-01-15 13:46:24 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 13:59:07 Déinitialisation du module PCAN USB ID 83
2023-01-15 13:46:24 PCAN USB init SUCCESS 2023-01-21 13:59:07 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 13:50:05 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:02:22
******************************************************************** ********************************************************************
2023-01-15 13:50:05 OtarcikCan modules starting... 2023-01-21 14:02:22 Base de données chargée avec succès. Flags: 0x0
2023-01-15 13:50:05 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:02:22 Démarrage d'un module CAN...
2023-01-15 13:50:05 PCAN USB init SUCCESS 2023-01-21 14:02:22 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 14:02:22 Initialisation du module PCAN USB avec succès
2023-01-21 14:02:22 Erreur de base de données: impossible de charger le fichier Database.dbc
******************************************************************** 2023-01-21 14:02:22 Démarrage d'un module CAN...
Otarcik CAN software startup on 2023-01-15 at 13:50:31 2023-01-21 14:02:22 Initialisation d'un module PCAN. Channel:83, Baudrate:22
******************************************************************** 2023-01-21 14:02:22 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-15 13:50:31 OtarcikCan modules starting... 2023-01-21 14:02:22 Impossible d'initialiser le matériel CAN
2023-01-15 13:50:31 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:02:31 Déinitialisation du module PCAN USB ID 81
2023-01-15 13:50:31 PCAN USB init SUCCESS 2023-01-21 14:02:31 Module PCAN USB déinitialisé avec succès...
2023-01-21 14:02:31 Déinitialisation du module PCAN USB ID 83
2023-01-21 14:02:31 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
Otarcik CAN software startup on 2023-01-15 at 13:52:19
******************************************************************** ********************************************************************
2023-01-15 13:52:19 OtarcikCan modules starting... Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:04:47
2023-01-15 13:52:19 Initializing PCAN USB module. Channel:81, Baudrate:28 ********************************************************************
2023-01-15 13:52:19 PCAN USB init SUCCESS 2023-01-21 14:04:47 Base de données chargée avec succès. Flags: 0x0
2023-01-21 14:04:47 Démarrage d'un module CAN...
2023-01-21 14:04:48 Initialisation d'un module PCAN. Channel:81, Baudrate:28
******************************************************************** 2023-01-21 14:04:48 Initialisation du module PCAN USB avec succès
Otarcik CAN software startup on 2023-01-15 at 13:53:11 2023-01-21 14:04:48 Erreur de base de données: impossible de charger le fichier Database.dbc
******************************************************************** 2023-01-21 14:04:48 Démarrage d'un module CAN...
2023-01-15 13:53:11 OtarcikCan modules starting... 2023-01-21 14:04:48 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-15 13:53:11 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:04:48 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-15 13:53:11 PCAN USB init SUCCESS 2023-01-21 14:04:48 Impossible d'initialiser le matériel CAN
2023-01-21 14:05:09 Déinitialisation du module PCAN USB ID 81
2023-01-21 14:05:09 Module PCAN USB déinitialisé avec succès...
******************************************************************** 2023-01-21 14:05:09 Déinitialisation du module PCAN USB ID 83
Otarcik CAN software startup on 2023-01-15 at 13:54:58 2023-01-21 14:05:09 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
2023-01-15 13:54:58 OtarcikCan modules starting...
2023-01-15 13:54:58 Initializing PCAN USB module. Channel:81, Baudrate:28 ********************************************************************
2023-01-15 13:54:58 PCAN USB init SUCCESS Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:05:43
********************************************************************
2023-01-21 14:05:43 Base de données chargée avec succès. Flags: 0x0
******************************************************************** 2023-01-21 14:05:43 Démarrage d'un module CAN...
Otarcik CAN software startup on 2023-01-15 at 16:53:15 2023-01-21 14:05:43 Initialisation d'un module PCAN. Channel:81, Baudrate:28
******************************************************************** 2023-01-21 14:05:43 Initialisation du module PCAN USB avec succès
2023-01-15 16:53:15 OtarcikCan modules starting... 2023-01-21 14:05:43 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-15 16:53:15 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:05:43 Démarrage d'un module CAN...
2023-01-15 16:53:15 PCAN USB init SUCCESS 2023-01-21 14:05:43 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 14:05:43 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 14:05:43 Impossible d'initialiser le matériel CAN
******************************************************************** 2023-01-21 14:06:27 Déinitialisation du module PCAN USB ID 81
Otarcik CAN software startup on 2023-01-15 at 17:51:15 2023-01-21 14:06:27 Module PCAN USB déinitialisé avec succès...
******************************************************************** 2023-01-21 14:06:27 Déinitialisation du module PCAN USB ID 83
2023-01-15 17:51:15 OtarcikCan modules starting... 2023-01-21 14:06:27 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
2023-01-15 17:51:15 Initializing PCAN USB module. Channel:81, Baudrate:28
2023-01-15 17:51:15 Could not initialize PCAN USB module. Error:The PCAN-Hardware is already being used by a PCAN-Net
********************************************************************
Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:07:33
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 17:51:33 2023-01-21 14:07:33 Base de données chargée avec succès. Flags: 0x0
******************************************************************** 2023-01-21 14:07:33 Démarrage d'un module CAN...
2023-01-15 17:51:33 OtarcikCan modules starting... 2023-01-21 14:07:33 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-15 17:51:33 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:07:33 Initialisation du module PCAN USB avec succès
2023-01-15 17:51:33 Could not initialize PCAN USB module. Error:The PCAN-Hardware is already being used by a PCAN-Net 2023-01-21 14:07:33 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 14:07:33 Démarrage d'un module CAN...
2023-01-21 14:07:33 Initialisation d'un module PCAN. Channel:83, Baudrate:22
******************************************************************** 2023-01-21 14:07:33 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
Otarcik CAN software startup on 2023-01-15 at 17:51:53 2023-01-21 14:07:33 Impossible d'initialiser le matériel CAN
******************************************************************** 2023-01-21 14:08:58 Déinitialisation du module PCAN USB ID 81
2023-01-15 17:51:53 OtarcikCan modules starting... 2023-01-21 14:08:58 Module PCAN USB déinitialisé avec succès...
2023-01-15 17:51:53 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:08:58 Déinitialisation du module PCAN USB ID 83
2023-01-15 17:51:53 PCAN USB init SUCCESS 2023-01-21 14:08:58 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
******************************************************************** ********************************************************************
Otarcik CAN software startup on 2023-01-15 at 17:52:03 Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:09:32
******************************************************************** ********************************************************************
2023-01-15 17:52:03 OtarcikCan modules starting... 2023-01-21 14:09:32 Base de données chargée avec succès. Flags: 0x0
2023-01-15 17:52:03 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:09:32 Démarrage d'un module CAN...
2023-01-15 17:52:03 PCAN USB init SUCCESS 2023-01-21 14:09:32 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 14:09:32 Initialisation du module PCAN USB avec succès
2023-01-21 14:09:32 Erreur de base de données: impossible de charger le fichier Database.dbc
******************************************************************** 2023-01-21 14:09:32 Démarrage d'un module CAN...
Otarcik CAN software startup on 2023-01-15 at 18:24:56 2023-01-21 14:09:32 Initialisation d'un module PCAN. Channel:83, Baudrate:22
******************************************************************** 2023-01-21 14:09:32 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-15 18:24:56 OtarcikCan modules starting... 2023-01-21 14:09:32 Impossible d'initialiser le matériel CAN
2023-01-15 18:24:56 Initializing PCAN USB module. Channel:81, Baudrate:28 2023-01-21 14:11:18 Déinitialisation du module PCAN USB ID 81
2023-01-15 18:24:56 Could not initialize PCAN USB module. Error:The PCAN-Hardware is already being used by a PCAN-Net 2023-01-21 14:11:18 Module PCAN USB déinitialisé avec succès...
2023-01-21 14:11:18 Déinitialisation du module PCAN USB ID 83
2023-01-21 14:11:18 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
Otarcik CAN software startup on 2023-01-15 at 18:25:16
******************************************************************** ********************************************************************
2023-01-15 18:25:16 OtarcikCan modules starting... Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:15:31
2023-01-15 18:25:16 Initializing PCAN USB module. Channel:81, Baudrate:28 ********************************************************************
2023-01-15 18:25:16 PCAN USB init SUCCESS 2023-01-21 14:15:31 Base de données chargée avec succès. Flags: 0x0
2023-01-21 14:15:31 Démarrage d'un module CAN...
2023-01-21 14:15:31 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 14:15:31 Initialisation du module PCAN USB avec succès
2023-01-21 14:15:31 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 14:15:31 Démarrage d'un module CAN...
2023-01-21 14:15:31 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 14:15:31 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 14:15:31 Impossible d'initialiser le matériel CAN
2023-01-21 14:16:21 Déinitialisation du module PCAN USB ID 81
2023-01-21 14:16:21 Module PCAN USB déinitialisé avec succès...
2023-01-21 14:16:21 Déinitialisation du module PCAN USB ID 83
2023-01-21 14:16:22 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:17:50
********************************************************************
2023-01-21 14:17:50 Base de données chargée avec succès. Flags: 0x0
2023-01-21 14:17:50 Démarrage d'un module CAN...
2023-01-21 14:17:50 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 14:17:50 Initialisation du module PCAN USB avec succès
2023-01-21 14:17:50 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 14:17:50 Démarrage d'un module CAN...
2023-01-21 14:17:50 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 14:17:50 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 14:17:50 Impossible d'initialiser le matériel CAN
2023-01-21 14:18:05 Déinitialisation du module PCAN USB ID 81
2023-01-21 14:18:06 Module PCAN USB déinitialisé avec succès...
2023-01-21 14:18:06 Déinitialisation du module PCAN USB ID 83
2023-01-21 14:18:06 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:22:28
********************************************************************
2023-01-21 14:22:28 Base de données chargée avec succès. Flags: 0x0
2023-01-21 14:22:28 Démarrage d'un module CAN...
2023-01-21 14:22:28 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 14:22:28 Initialisation du module PCAN USB avec succès
2023-01-21 14:22:28 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 14:22:28 Démarrage d'un module CAN...
2023-01-21 14:22:29 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 14:22:29 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 14:22:29 Impossible d'initialiser le matériel CAN
2023-01-21 14:26:17 Déinitialisation du module PCAN USB ID 81
2023-01-21 14:26:17 Module PCAN USB déinitialisé avec succès...
2023-01-21 14:26:17 Déinitialisation du module PCAN USB ID 83
2023-01-21 14:26:17 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full
********************************************************************
Démarrage du logiciel Otarcik CAN le 2023-01-21 à 14:27:47
********************************************************************
2023-01-21 14:27:47 Base de données chargée avec succès. Flags: 0x0
2023-01-21 14:27:47 Démarrage d'un module CAN...
2023-01-21 14:27:47 Initialisation d'un module PCAN. Channel:81, Baudrate:28
2023-01-21 14:27:47 Initialisation du module PCAN USB avec succès
2023-01-21 14:27:47 Erreur de base de données: impossible de charger le fichier Database.dbc
2023-01-21 14:27:47 Démarrage d'un module CAN...
2023-01-21 14:27:47 Initialisation d'un module PCAN. Channel:83, Baudrate:22
2023-01-21 14:27:47 Impossible d'initialiser un module USB PCAN. Erreur:The value of a handle (PCAN-Channel, PCAN-Hardware, PCAN-Net, PCAN-Client) is invalid
2023-01-21 14:27:47 Impossible d'initialiser le matériel CAN
2023-01-21 14:28:46 Déinitialisation du module PCAN USB ID 81
2023-01-21 14:28:46 Module PCAN USB déinitialisé avec succès...
2023-01-21 14:28:46 Déinitialisation du module PCAN USB ID 83
2023-01-21 14:28:46 Impossible de déinitialiser un module USB PCAN.. Error:The transmit buffer in CAN controller is full

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -41,9 +41,8 @@ SOURCES += Sources/main.cpp \
Sources/CANMessage.cpp \ Sources/CANMessage.cpp \
Sources/Gui/CANViewerPage.cpp \ Sources/Gui/CANViewerPage.cpp \
Sources/CANDatabase/CANDatabase.cpp \ Sources/CANDatabase/CANDatabase.cpp \
Sources/CANDatabase/CANDBMessage.cpp \ Sources/CANDevice.cpp \
Sources/CANDatabase/CANDBSignal.cpp \ Sources/CANSignal.cpp
Sources/CANDevice.cpp
HEADERS += Sources/MainWindow.h \ HEADERS += Sources/MainWindow.h \
Sources/PCANInterface.h \ Sources/PCANInterface.h \
@ -58,9 +57,8 @@ HEADERS += Sources/MainWindow.h \
Sources/CANMessage.h \ Sources/CANMessage.h \
Sources/Gui/CANViewerPage.h \ Sources/Gui/CANViewerPage.h \
Sources/CANDatabase/CANDatabase.h \ Sources/CANDatabase/CANDatabase.h \
Sources/CANDatabase/CANDBMessage.h \ Sources/CANDevice.h \
Sources/CANDatabase/CANDBSignal.h \ Sources/CANSignal.h
Sources/CANDevice.h
FORMS += Sources/Gui/MainWindow.ui \ FORMS += Sources/Gui/MainWindow.ui \
Sources/Gui/GeneralStatusPage.ui \ Sources/Gui/GeneralStatusPage.ui \

View File

@ -10,6 +10,7 @@ CCANAnalyzer::CCANAnalyzer(QObject *parent) : QObject(parent)
mCANDriverIF = new CPCANInterface; mCANDriverIF = new CPCANInterface;
mIsCANInitialized = false; mIsCANInitialized = false;
mDevicePtr = 0; mDevicePtr = 0;
mDeviceMessagesList = 0;
mCANReadTimer = new QTimer; mCANReadTimer = new QTimer;
mCANReadTimer->setInterval(200); mCANReadTimer->setInterval(200);
@ -22,26 +23,31 @@ CCANAnalyzer::~CCANAnalyzer()
mCANDriverIF->DeInit(); mCANDriverIF->DeInit();
delete mCANDriverIF; delete mCANDriverIF;
delete mCANReadTimer; delete mCANReadTimer;
while (!mLastMessagesList.isEmpty())
{
delete mLastMessagesList.takeFirst();
}
} }
int CCANAnalyzer::Init(TPCANHandle CANDeviceChannel,TPCANBaudrate CANDeviceBaudrate) int CCANAnalyzer::Init(TPCANHandle CANDeviceChannel, TPCANBaudrate CANDeviceBaudrate, QList<CCANMessage *> *MsgList)
{ {
CGeneralMessagesLogDispatcher::instance()->AddLogMessage("OtarcikCan modules starting..."); if(MsgList == 0)
if(mCANDriverIF->Init(CANDeviceChannel,CANDeviceBaudrate) != RET_OK)
{ {
CGeneralMessagesLogDispatcher::instance()->AddLogMessage("Could not initialize CAN hardware",true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS); return RET_GENERAL_ERROR;
}
mCANDeviceChannel = CANDeviceChannel;
CGeneralMessagesLogDispatcher::instance()->AddLogMessage("Démarrage d'un module CAN...");
mDeviceMessagesList = MsgList;
if(mCANDriverIF->Init(mCANDeviceChannel,CANDeviceBaudrate) != RET_OK)
{
CGeneralMessagesLogDispatcher::instance()->AddLogMessage("Impossible d'initialiser le matériel CAN",true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
mIsCANInitialized = false; mIsCANInitialized = false;
return RET_GENERAL_ERROR; return RET_GENERAL_ERROR;
} }
else else
{ {
mCANReadTimer->start(); // mCANReadTimer->start();
mIsCANInitialized = true; mIsCANInitialized = true;
} }
@ -68,50 +74,70 @@ int CCANAnalyzer::ReadCAN()
void CCANAnalyzer::CANTimerExpired() void CCANAnalyzer::CANTimerExpired()
{ {
QList<CCANMessage *> NewMessagesList = mCANDriverIF->ReadCANFullBuffer(0x51U); QList<CCANMessage *> NewMessagesList = mCANDriverIF->ReadCANFullBuffer(mCANDeviceChannel);
for(int i = 0 ; i < NewMessagesList.size(); i++)
{
for(int j = 0; j < mDeviceMessagesList->size(); j++)
{
if(NewMessagesList.at(i)->mCANMsgID == mDeviceMessagesList->at(j)->mCANMsgID)
{
mDeviceMessagesList->at(j)->UpdateValue(NewMessagesList.at(i));
}
}
}
//Don't leak!!
while(!NewMessagesList.isEmpty())
{
delete NewMessagesList.takeFirst();
}
unsigned int DeletedPtrs = 0;
if(NewMessagesList.isEmpty()) if(NewMessagesList.isEmpty())
{ {
mCANReadTimer->start();
return; return;
} }
for(int i = 0; i < NewMessagesList.size(); i++) // for(int i = 0; i < NewMessagesList.size(); i++)
{ // {
if(mLastMessagesList.isEmpty()) // if(mLastMessagesList.isEmpty())
{ // {
mLastMessagesList.append(NewMessagesList.at(i)); // mLastMessagesList.append(NewMessagesList.at(i));
}
else
{
//Check if new message ID for this device already exists in the list.
bool found = false;
for(int j = 0; j < mLastMessagesList.size(); j++)
{
if(NewMessagesList[i]->mCANChannel == mLastMessagesList[j]->mCANChannel &&
NewMessagesList[i]->mCANMsgID == mLastMessagesList[j]->mCANMsgID)
{
//This message ID is already populated in the list. Update the value and delete the new instance
mLastMessagesList[j]->mCANMsgData = NewMessagesList[i]->mCANMsgData;
mLastMessagesList[j]->mCANMsgMicrosecs = NewMessagesList[i]->mCANMsgMicrosecs;
mLastMessagesList[j]->mCANMsgMillisecs = NewMessagesList[i]->mCANMsgMillisecs;
mLastMessagesList[j]->mCANMsgMillisecsOverflow = NewMessagesList[i]->mCANMsgMillisecsOverflow;
delete NewMessagesList[i]; // }
DeletedPtrs++; // else
found = true; // {
break; // //Check if new message ID for this device already exists in the list.
} // bool found = false;
} // for(int j = 0; j < mLastMessagesList.size(); j++)
if(!found) // {
{ // if(NewMessagesList[i]->mCANChannel == mLastMessagesList[j]->mCANChannel &&
//This is the first time we receive this message, just add it to the list. // NewMessagesList[i]->mCANMsgID == mLastMessagesList[j]->mCANMsgID)
mLastMessagesList.append(NewMessagesList[i]); // {
} // //This message ID is already populated in the list. Update the value and delete the new instance
// mLastMessagesList[j]->mCANMsgData = NewMessagesList[i]->mCANMsgData;
// mLastMessagesList[j]->mCANMsgMicrosecs = NewMessagesList[i]->mCANMsgMicrosecs;
// mLastMessagesList[j]->mCANMsgMillisecs = NewMessagesList[i]->mCANMsgMillisecs;
// mLastMessagesList[j]->mCANMsgMillisecsOverflow = NewMessagesList[i]->mCANMsgMillisecsOverflow;
// delete NewMessagesList[i];
// DeletedPtrs++;
// found = true;
// break;
// }
// }
// if(!found)
// {
// //This is the first time we receive this message, just add it to the list.
// mLastMessagesList.append(NewMessagesList[i]);
// }
} // }
} // }
NewMessagesList.clear(); NewMessagesList.clear();

View File

@ -22,13 +22,14 @@ public:
QTimer *mCANReadTimer; QTimer *mCANReadTimer;
int Init(TPCANHandle CANDeviceChannel,TPCANBaudrate CANDeviceBaudrate); int Init(TPCANHandle CANDeviceChannel, TPCANBaudrate CANDeviceBaudrate, QList<CCANMessage *> *MsgList);
int ReadCAN(); int ReadCAN();
QList<CCANMessage *> mLastMessagesList; QList<CCANMessage *> *mDeviceMessagesList;
private: private:
bool mIsCANInitialized; bool mIsCANInitialized;
TPCANHandle mCANDeviceChannel;
signals: signals:

View File

@ -1,15 +0,0 @@
#include "CANDBMessage.h"
CCANDBMessage::CCANDBMessage()
{
// QTimer *testTimer = new QTimer;
// connect(testTimer,&QTimer::timeout,this,&CCANDBMessage::SlotTest);
}
void CCANDBMessage::SlotTest()
{
}

View File

@ -1,18 +0,0 @@
#ifndef CANDBMESSAGE_H
#define CANDBMESSAGE_H
#include "CANDBSignal.h"
#include <QList>
#include "CANAnalyzer.h"
class CCANDBMessage : public CCANAnalyzer
{
Q_OBJECT
public:
CCANDBMessage();
public slots:
void SlotTest();
};
#endif // CANDBMESSAGE_H

View File

@ -1,6 +0,0 @@
#include "CANDBSignal.h"
CCANDBSignal::CCANDBSignal()
{
}

View File

@ -1,11 +0,0 @@
#ifndef CANDBSIGNAL_H
#define CANDBSIGNAL_H
class CCANDBSignal
{
public:
CCANDBSignal();
};
#endif // CANDBSIGNAL_H

View File

@ -1,6 +1,6 @@
#include "defines.h" #include "defines.h"
#include "CANDatabase.h" #include "CANDatabase.h"
#include "kvaDbLib.h" #include "GeneralMessagesLogDispatcher.h"
const char* sigEncToStr(KvaDbSignalEncoding sigEnc); const char* sigEncToStr(KvaDbSignalEncoding sigEnc);
const char* sigRepToStr(KvaDbSignalType sigType); const char* sigRepToStr(KvaDbSignalType sigType);
@ -8,7 +8,7 @@ const char* sigRepToStr(KvaDbSignalType sigType);
CCANDatabase::CCANDatabase(QObject *parent) : QObject(parent) CCANDatabase::CCANDatabase(QObject *parent) : QObject(parent)
{ {
mDatabaseFileLoaded = false;
} }
CCANDatabase::~CCANDatabase() CCANDatabase::~CCANDatabase()
@ -20,214 +20,322 @@ int CCANDatabase::Init(QString DatabaseFileName)
{ {
mDatabaseFileName = DatabaseFileName; mDatabaseFileName = DatabaseFileName;
LoadDatabaseFile(DatabaseFileName); return LoadDatabaseFile(DatabaseFileName);
return RET_OK;
} }
int CCANDatabase::LoadDatabaseFile(QString Filename) int CCANDatabase::LoadDatabaseFile(QString Filename)
{ {
KvaDbStatus status;
unsigned int flags = 0;
mDatabaseFileLoaded = false;
#define printf qDebug // Open a database handle
status = kvaDbOpen(&mDatabaseDriverHandle);
if (status != kvaDbOK)
{
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Impossible d'initialiser la base de données (création du handle impossble"),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
qDebug("Could not create a database handle: %d\n", status);
return RET_GENERAL_ERROR;
}
KvaDbStatus status; // Load the database file
KvaDbHnd dh = 0;
KvaDbMessageHnd mh = 0; status = kvaDbReadFile(mDatabaseDriverHandle, Filename.toLocal8Bit().data());
KvaDbSignalHnd sh = 0; if (status != kvaDbOK)
unsigned int flags = 0; {
char filename[] = "IVT-S_all-variations_12082020.dbc"; CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Erreur de base de données: impossible de charger le fichier %1").arg(Filename),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
qDebug("Could not load '%s': %d\n", Filename.toLocal8Bit().data(), status);
return RET_GENERAL_ERROR;
}
status = kvaDbGetFlags(mDatabaseDriverHandle, &flags);
if (status != kvaDbOK)
{
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Erreur de base de données: impossible de charger les flags"),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
qDebug("kvaDbGetFlags failed: %d\n", status);
return RET_GENERAL_ERROR;
}
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Base de données chargée avec succès. Flags: 0x%1").arg(flags),true);
qDebug(" Database: flags=0x%x\n", flags);
mDatabaseFileLoaded = true;
return RET_OK;
}
int CCANDatabase::BuildMessageList(QList<CCANMessage *> *MsgListPtr)
{
if(mDatabaseFileLoaded == false)
{
qDebug("CCANDatabase error: Trying to build an unloaded database");
return RET_GENERAL_ERROR;
}
if(MsgListPtr == 0)
{
qDebug("CCANDatabase error: Trying to load database in an invalid list pointer...");
return RET_GENERAL_ERROR;
}
KvaDbStatus status;
KvaDbMessageHnd mh = 0;
KvaDbSignalHnd sh = 0;
unsigned int flags = 0;
// Get the first message in the database
status = kvaDbGetFirstMsg (mDatabaseDriverHandle, &mh);
if (status != kvaDbOK)
{
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Erreur de base de données: impossible de charger le premier message"),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
qDebug ("kvaDbGetFirstMsg failed: %d\n", status);
return RET_GENERAL_ERROR;
}
// Go through all messages in the database
while (status == kvaDbOK)
{
CCANMessage *NewMsg = new CCANMessage;
char msg_name[100];
// char msg_qname[200];
char msg_comment[200];
int dlc = 0;
unsigned int id = 0;
// Open a database handle
status = kvaDbOpen (&dh);
if (status != kvaDbOK) {
printf("Could not create a database handle: %d\n", status);
return status;
}
// Load the database file // Clear the strings
status = kvaDbReadFile (dh, filename); memset(msg_name, 0, sizeof(msg_name));
if (status != kvaDbOK) { // memset(msg_qname, 0, sizeof(msg_qname));
printf("Could not load '%s': %d\n", filename, status); memset(msg_comment, 0, sizeof(msg_comment));
return status;
}
status = kvaDbGetFlags(dh, &flags); // Get the properties for each message
if (status != kvaDbOK) { status = kvaDbGetMsgName (mh, msg_name, sizeof (msg_name));
printf ("kvaDbGetFlags failed: %d\n", status); if (status != kvaDbOK)
return status; {
} qDebug ("kvaDbGetMsgName failed: %d\n", status);
printf (" Database: flags=0x%x\n", flags); // return RET_GENERAL_ERROR;
}
NewMsg->mCANMsgName = QString(msg_name);
// status = kvaDbGetMsgQualifiedName (mh, msg_qname, sizeof (msg_qname));
// if (status != kvaDbOK)
// {
// qDebug ("kvaDbGetMsgQualifiedName failed: %d\n", status);
// return RET_GENERAL_ERROR;
// }
status = kvaDbGetMsgComment (mh, msg_comment, sizeof (msg_comment));
if (status != kvaDbOK)
{
qDebug ("kvaDbGetMsgComment failed: %d\n", status);
// return RET_GENERAL_ERROR;
}
NewMsg->mCANMsgComment = QString(msg_comment);
status = kvaDbGetMsgId (mh, &id, &flags);
if (status != kvaDbOK)
{
qDebug ("kvaDbGetMsgId failed: %d\n", status);
// return RET_GENERAL_ERROR;
}
NewMsg->mCANMsgID = id;
NewMsg->mCANMsgFlags = flags;
status = kvaDbGetMsgDlc (mh, &dlc);
if (status != kvaDbOK)
{
qDebug ("kvaDbGetMsgDlc failed: %d\n", status);
// return RET_GENERAL_ERROR;
}
NewMsg->mCANMsgLength = dlc;
// Get the first message in the database // // Print the properties for each message
status = kvaDbGetFirstMsg (dh, &mh); // qDebug (" Msg: name='%s'\n", msg_name);
if (status != kvaDbOK) { // qDebug (" qname='%s', comment='%s'\n", msg_qname, msg_comment);
printf ("kvaDbGetFirstMsg failed: %d\n", status); // qDebug (" id=%x, dlc=%d, flags=%x\n", id, dlc, flags);
return status;
}
// Go through all messages in the database
while (status == kvaDbOK) {
char msg_name[100];
char msg_qname[200];
char msg_comment[200];
int dlc = 0;
unsigned int id = 0;
// Clear the strings
memset(msg_name, 0, sizeof(msg_name));
memset(msg_qname, 0, sizeof(msg_qname));
memset(msg_comment, 0, sizeof(msg_comment));
// Get the properties for each message
status = kvaDbGetMsgName (mh, msg_name, sizeof (msg_name));
if (status != kvaDbOK) {
printf ("kvaDbGetMsgName failed: %d\n", status);
return status;
}
status = kvaDbGetMsgQualifiedName (mh, msg_qname, sizeof (msg_qname));
if (status != kvaDbOK) {
printf ("kvaDbGetMsgQualifiedName failed: %d\n", status);
return status;
}
status = kvaDbGetMsgComment (mh, msg_comment, sizeof (msg_comment));
if (status != kvaDbOK) {
printf ("kvaDbGetMsgComment failed: %d\n", status);
return status;
}
status = kvaDbGetMsgId (mh, &id, &flags);
if (status != kvaDbOK) {
printf ("kvaDbGetMsgId failed: %d\n", status);
return status;
}
status = kvaDbGetMsgDlc (mh, &dlc);
if (status != kvaDbOK) {
printf ("kvaDbGetMsgDlc failed: %d\n", status);
return status;
}
// Print the properties for each message
printf (" Msg: name='%s'\n", msg_name);
printf (" qname='%s', comment='%s'\n", msg_qname, msg_comment);
printf (" id=%x, dlc=%d, flags=%x\n", id, dlc, flags);
// Go through all signals for this message // Go through all signals for this message
status = kvaDbGetFirstSignal (mh, &sh); status = kvaDbGetFirstSignal (mh, &sh);
while (status == kvaDbOK) { while (status == kvaDbOK)
char signal_name[100]; {
char signal_qname[200]; CCANSignal *NewSignal = new CCANSignal;
char signal_comment[200]; char signal_name[100];
char signal_unit[100]; char signal_qname[200];
KvaDbSignalEncoding sigEnc; char signal_comment[200];
KvaDbSignalType sigType; char signal_unit[100];
int startbit = 0; KvaDbSignalEncoding sigEnc;
int length = 0; KvaDbSignalType sigType;
double minval = 0; int startbit = 0;
double maxval = 0; int length = 0;
double factor = 0; double minval = 0;
double offset = 0; double maxval = 0;
double factor = 0;
double offset = 0;
// Reset the strings // Reset the strings
memset(signal_name, 0, sizeof(signal_name)); memset(signal_name, 0, sizeof(signal_name));
memset(signal_qname, 0, sizeof(signal_qname)); memset(signal_qname, 0, sizeof(signal_qname));
memset(signal_comment, 0, sizeof(signal_comment)); memset(signal_comment, 0, sizeof(signal_comment));
memset(signal_unit, 0, sizeof(signal_unit)); memset(signal_unit, 0, sizeof(signal_unit));
// Get the properties for each signal. // Get the properties for each signal.
status = kvaDbGetSignalName (sh, signal_name, sizeof (signal_name)); status = kvaDbGetSignalName (sh, signal_name, sizeof (signal_name));
if (status != kvaDbOK) { if (status != kvaDbOK)
printf ("kvaDbGetSignalName failed: %d\n", status); {
return status; qDebug ("kvaDbGetSignalName failed: %d\n", status);
} // return status;
}
NewSignal->mSignalName = QString(signal_name);
status = kvaDbGetSignalQualifiedName (sh, signal_qname, sizeof (signal_qname)); // status = kvaDbGetSignalQualifiedName (sh, signal_qname, sizeof (signal_qname));
if (status != kvaDbOK) { // if (status != kvaDbOK)
printf ("kvaDbGetSignalQualifiedName failed: %d\n", status); // {
return status; // qDebug ("kvaDbGetSignalQualifiedName failed: %d\n", status);
} //// return status;
// }
status = kvaDbGetSignalComment (sh, signal_comment, sizeof (signal_comment));
if (status != kvaDbOK) {
printf ("kvaDbGetSignalComment failed: %d\n", status);
return status;
}
status = kvaDbGetSignalUnit (sh, signal_unit, sizeof (signal_unit)); status = kvaDbGetSignalComment (sh, signal_comment, sizeof (signal_comment));
if (status != kvaDbOK) { if (status != kvaDbOK)
printf ("kvaDbGetSignalUnit failed: %d\n", status); {
return status; qDebug ("kvaDbGetSignalComment failed: %d\n", status);
} // return status;
}
NewSignal->mSignalComment = QString(signal_comment);
status = kvaDbGetSignalEncoding (sh, &sigEnc); status = kvaDbGetSignalUnit (sh, signal_unit, sizeof (signal_unit));
if (status != kvaDbOK) { if (status != kvaDbOK)
printf ("kvaDbGetSignalEncoding failed: %d\n", status); {
return status; qDebug ("kvaDbGetSignalUnit failed: %d\n", status);
} // return status;
}
NewSignal->mSignalUnit = QString(signal_unit);
status = kvaDbGetSignalRepresentationType(sh, &sigType); status = kvaDbGetSignalEncoding (sh, &sigEnc);
if (status != kvaDbOK) { if (status != kvaDbOK)
printf ("kvaDbGetSignalRepresentationType failed: %d\n", status); {
return status; qDebug ("kvaDbGetSignalEncoding failed: %d\n", status);
} // return status;
}
if(sigEnc == kvaDb_Intel)
{
NewSignal->mEncoding = CCANSignal::CAN_SIGNAL_ENCODING_INTEL;
}
else if(sigEnc == kvaDb_Motorola)
{
NewSignal->mEncoding = CCANSignal::CAN_SIGNAL_ENCODING_MOTOROLA;
}
else
{
NewSignal->mEncoding = CCANSignal::CAN_SIGNAL_ENCODING_INVALID;
qDebug ("kvaDbGetSignalEncoding returned an invalid encoding type: %d\n", sigEnc);
}
status = kvaDbGetSignalValueLimits(sh, &minval, &maxval); status = kvaDbGetSignalRepresentationType(sh, &sigType);
if (status != kvaDbOK) { if (status != kvaDbOK)
printf ("kvaDbGetSignalValueLimits failed: %d\n", status); {
return status; qDebug ("kvaDbGetSignalRepresentationType failed: %d\n", status);
} // return status;
}
switch(sigType)
{
status = kvaDbGetSignalValueScaling(sh, &factor, &offset); case kvaDb_Signed: ///< Signed integer
if (status != kvaDbOK) { {
printf ("kvaDbGetSignalValueScaling failed: %d\n", status); NewSignal->mValueType = CCANSignal::CAN_SIGNAL_TYPE_SIGNED_INT;
return status; break;
} }
case kvaDb_Unsigned: ///< Unsigned integer
{
NewSignal->mValueType = CCANSignal::CAN_SIGNAL_TYPE_UNSIGNED_INT;
break;
}
case kvaDb_Float: ///< Float, strictly 32 bit long
{
NewSignal->mValueType = CCANSignal::CAN_SIGNAL_TYPE_32_BIT_FLOAT;
break;
}
case kvaDb_Double:
{
NewSignal->mValueType = CCANSignal::CAN_SIGNAL_TYPE_64_BIT_DOUBLE;
break;
}
case kvaDb_Invalid: ///< Invalid representation
default:
{
qDebug ("kvaDbGetSignalRepresentationType returned invalid type: %d\n", sigType);
NewSignal->mValueType = CCANSignal::CAN_SIGNAL_TYPE_INVALID;
break;
}
}
status = kvaDbGetSignalValueSize(sh, &startbit, &length); status = kvaDbGetSignalValueLimits(sh, &minval, &maxval);
if (status != kvaDbOK) { if (status != kvaDbOK)
printf ("kvaDbGetSignalValueSize failed: %d\n", status); {
return status; qDebug ("kvaDbGetSignalValueLimits failed: %d\n", status);
} // return status;
}
NewSignal->mMinValue = minval;
NewSignal->mMaxValue = maxval;
printf(" Signal: name='%s', unit='%s'\n", signal_name, signal_unit); status = kvaDbGetSignalValueScaling(sh, &factor, &offset);
printf(" qname='%s'\n", signal_qname); if (status != kvaDbOK)
printf(" comment='%s'\n", signal_comment); {
printf(" encoding='%s'\n", sigEncToStr(sigEnc)); qDebug ("kvaDbGetSignalValueScaling failed: %d\n", status);
printf(" representation='%s'\n", sigRepToStr(sigType)); // return status;
printf(" value min=%.02f, value max=%.02f\n", minval, maxval); }
printf(" scale faktor=%.02f, offset=%.02f\n", factor, offset); NewSignal->mValueFactor = factor;
printf(" startbit=%d, length=%d\n", startbit, length); NewSignal->mValueOffset = offset;
status = kvaDbGetNextSignal (mh, &sh);
}
status = kvaDbGetNextMsg (dh, &mh); status = kvaDbGetSignalValueSize(sh, &startbit, &length);
} if (status != kvaDbOK)
{
qDebug ("kvaDbGetSignalValueSize failed: %d\n", status);
// return status;
}
NewSignal->mStartBit = startbit;
NewSignal->mSignalSize = length;
status = kvaDbClose (dh); qDebug(" Signal: name='%s', unit='%s'\n", signal_name, signal_unit);
if (status != kvaDbOK) { qDebug(" qname='%s'\n", signal_qname);
printf ("kvaDbClose failed: %d\n", status); qDebug(" comment='%s'\n", signal_comment);
return status; qDebug(" encoding='%s'\n", sigEncToStr(sigEnc));
} qDebug(" representation='%s'\n", sigRepToStr(sigType));
printf("\n\n"); qDebug(" value min=%.02f, value max=%.02f\n", minval, maxval);
qDebug(" scale faktor=%.02f, offset=%.02f\n", factor, offset);
qDebug(" startbit=%d, length=%d\n", startbit, length);
return RET_OK; NewMsg->AddSignal(NewSignal);
status = kvaDbGetNextSignal (mh, &sh);
}
MsgListPtr->append(NewMsg);
status = kvaDbGetNextMsg (mDatabaseDriverHandle, &mh);
}
status = kvaDbClose (mDatabaseDriverHandle);
if (status != kvaDbOK)
{
qDebug ("kvaDbClose failed: %d\n", status);
return status;
}
qDebug("\n\n");
return RET_OK;
} }
const char* sigEncToStr(KvaDbSignalEncoding sigEnc) const char* sigEncToStr(KvaDbSignalEncoding sigEnc)
{ {
if (sigEnc == kvaDb_Intel) { if (sigEnc == kvaDb_Intel) {
return "Intel"; return "Intel";
} else if (sigEnc == kvaDb_Motorola) { } else if (sigEnc == kvaDb_Motorola) {
return "Motorola"; return "Motorola";
} else { } else {
return "Undefined"; return "Undefined";
} }
} }
// ----------------------------------------------------------------------- // -----------------------------------------------------------------------
@ -235,17 +343,17 @@ const char* sigEncToStr(KvaDbSignalEncoding sigEnc)
// ----------------------------------------------------------------------- // -----------------------------------------------------------------------
const char* sigRepToStr(KvaDbSignalType sigType) const char* sigRepToStr(KvaDbSignalType sigType)
{ {
if (sigType == kvaDb_Invalid) { if (sigType == kvaDb_Invalid) {
return "Invalid"; return "Invalid";
} else if (sigType == kvaDb_Signed) { } else if (sigType == kvaDb_Signed) {
return "Signed"; return "Signed";
} else if (sigType == kvaDb_Unsigned) { } else if (sigType == kvaDb_Unsigned) {
return "Unsigned"; return "Unsigned";
} else if (sigType == kvaDb_Float) { } else if (sigType == kvaDb_Float) {
return "Float"; return "Float";
} else if (sigType == kvaDb_Double) { } else if (sigType == kvaDb_Double) {
return "Double"; return "Double";
} else { } else {
return "Undefined"; return "Undefined";
} }
} }

View File

@ -2,6 +2,10 @@
#define CANDATABASE_H #define CANDATABASE_H
#include <QObject> #include <QObject>
#include <QList>
#include "kvaDbLib.h"
#include "CANMessage.h"
#include "CANSignal.h"
class CCANDatabase : public QObject class CCANDatabase : public QObject
{ {
@ -12,9 +16,12 @@ public:
int Init(QString DatabaseFileName); int Init(QString DatabaseFileName);
int LoadDatabaseFile(QString Filename); int LoadDatabaseFile(QString Filename);
int BuildMessageList(QList<CCANMessage*> *MsgListPtr);
private: private:
QString mDatabaseFileName; QString mDatabaseFileName;
KvaDbHnd mDatabaseDriverHandle;
bool mDatabaseFileLoaded;
signals: signals:
public slots: public slots:

View File

@ -2,18 +2,38 @@
CCANDevice::CCANDevice(QObject *parent) CCANDevice::CCANDevice(QObject *parent)
{ {
mMessageList.clear();
mMessagesListLoaded = false;
} }
CCANDevice::~CCANDevice() CCANDevice::~CCANDevice()
{ {
while (!mMessageList.isEmpty())
{
delete mMessageList.takeFirst();
}
} }
int CCANDevice::Init(QString DatabaseFileName, unsigned short CANDeviceID, unsigned short CANDeviceBaudRate) int CCANDevice::Init(QString DatabaseFileName, TPCANHandle CANDeviceID, TPCANBaudrate CANDeviceBaudRate, QString DevDescription, QString DeviceName)
{ {
mCANDatabase.Init(DatabaseFileName); mCANDeviceID = CANDeviceID;
mCANAnalyzer.Init(CANDeviceID,CANDeviceBaudRate); mCANDeviceBaudrate = CANDeviceBaudRate;
mCANDeviceDatabaseFilename = DatabaseFileName;
mDeviceDescription = DevDescription;
mDeviceName = DeviceName;
if(mCANDatabase.Init(DatabaseFileName) == RET_OK)
{
if(mCANDatabase.BuildMessageList(&mMessageList) == RET_OK)
{
mMessagesListLoaded = true;
}
else
{
mMessagesListLoaded = false;
}
}
mCANAnalyzer.Init(CANDeviceID,CANDeviceBaudRate,&mMessageList);
return RET_OK; return RET_OK;
} }

View File

@ -8,6 +8,7 @@
#include "PCANInterface.h" #include "PCANInterface.h"
#include "CANDatabase.h" #include "CANDatabase.h"
#include <QList> #include <QList>
#include "PCANBasic.h"
class CCANDevice : public QObject class CCANDevice : public QObject
{ {
@ -16,17 +17,22 @@ public:
explicit CCANDevice(QObject *parent = 0); explicit CCANDevice(QObject *parent = 0);
~CCANDevice(); ~CCANDevice();
int Init(QString DatabaseFileName, unsigned short CANDeviceID, unsigned short CANDeviceBaudRate); int Init(QString DatabaseFileName, TPCANHandle CANDeviceID, TPCANBaudrate CANDeviceBaudRate, QString DevDescription, QString DeviceName);
private: public:
QString mDeviceDatabaseFileName; TPCANHandle mCANDeviceID;
unsigned int mCANDeviceID; TPCANBaudrate mCANDeviceBaudrate;
QString mCANDeviceDatabaseFilename;
QString mDeviceDescription;
QString mDeviceName;
bool mMessagesListLoaded;
CCANAnalyzer mCANAnalyzer; //The module that handles the USB puck and decodes the data CCANAnalyzer mCANAnalyzer; //The module that handles the USB puck and decodes the data
CCANDatabase mCANDatabase; //The device's database loaded from dbc file CCANDatabase mCANDatabase; //The device's database loaded from dbc file
QList<CCANMessage*> mMessageList;
signals: signals:
public slots: public slots:

View File

@ -1,9 +1,9 @@
#include "CANMessage.h" #include "CANMessage.h"
#include "defines.h"
CCANMessage::CCANMessage() CCANMessage::CCANMessage()
{ {
mSignalsList.clear();
} }
CCANMessage::CCANMessage(const CCANMessage &Src) CCANMessage::CCANMessage(const CCANMessage &Src)
@ -15,6 +15,13 @@ CCANMessage::CCANMessage(const quint32 Channel, const TPCANMsg CANMsg, const TPC
{ {
SetDataFromDriver(Channel,CANMsg,CANTimeStamp); SetDataFromDriver(Channel,CANMsg,CANTimeStamp);
} }
CCANMessage::~CCANMessage()
{
while (!mSignalsList.isEmpty())
{
delete mSignalsList.takeFirst();
}
}
int CCANMessage::SetDataFromDriver(quint32 Channel, TPCANMsg CANMsg, TPCANTimestamp CANTimeStamp) int CCANMessage::SetDataFromDriver(quint32 Channel, TPCANMsg CANMsg, TPCANTimestamp CANTimeStamp)
{ {
@ -35,6 +42,51 @@ int CCANMessage::SetDataFromDriver(quint32 Channel, TPCANMsg CANMsg, TPCANTimest
return 0; return 0;
} }
int CCANMessage::AddSignal(CCANSignal *NewSignal)
{
if(NewSignal == 0)
{
return RET_GENERAL_ERROR;
}
mSignalsList.append(NewSignal);
}
int CCANMessage::UpdateValue(CCANMessage *NewDeviceMessage)
{
if(NewDeviceMessage->mCANMsgID != mCANMsgID)
{
qDebug("CCANMEssage error: Trying to update mismatching message ID");
return RET_GENERAL_ERROR;
}
if(NewDeviceMessage->mCANMsgLength != mCANMsgLength)
{
qDebug("CCANMessage error: New device message length different than database!!!");
return RET_GENERAL_ERROR;
}
mCANMsgData = QByteArray(NewDeviceMessage->mCANMsgData);
mCANRawDataMotorola = mCANRawDataIntel= 0;
for(int i = 0; i < mCANMsgLength; i++)
{
mCANRawDataIntel += mCANMsgData[i];
mCANRawDataMotorola += mCANMsgData[(mCANMsgLength - 1) - i];
mCANRawDataIntel <<= 8;
mCANRawDataMotorola <<= 8;
}
for(int i = 0; i < mSignalsList.size(); i++)
{
mSignalsList.at(i)->ComputeNewSignalValue(mCANRawDataMotorola,mCANRawDataIntel);
}
}
QDataStream &operator<<(QDataStream &out, const CCANMessage &source) QDataStream &operator<<(QDataStream &out, const CCANMessage &source)
{ {
out << source.mCANChannel out << source.mCANChannel

View File

@ -3,6 +3,8 @@
#include <QByteArray> #include <QByteArray>
#include <QDataStream> #include <QDataStream>
#include "PCANBasic.h" #include "PCANBasic.h"
#include "CANSignal.h"
#include <QList>
class CCANMessage class CCANMessage
{ {
@ -10,22 +12,32 @@ public:
CCANMessage(); CCANMessage();
CCANMessage(const CCANMessage &Src); CCANMessage(const CCANMessage &Src);
CCANMessage(const quint32 Channel,const TPCANMsg CANMsg,const TPCANTimestamp CANTimeStamp); CCANMessage(const quint32 Channel,const TPCANMsg CANMsg,const TPCANTimestamp CANTimeStamp);
~CCANMessage();
unsigned int mCANChannel;
unsigned int mCANMsgType; // Type of the message, using the PCAN interface driver encoding defined in PCANbasic.h
QByteArray mCANMsgData; // Raw data structure of the message, max size = 8 bytes
quint64 mCANRawDataMotorola, mCANRawDataIntel;
quint32 mCANChannel; //Channel from which the message has been read //Database generated message structure
QString mCANMsgName; //Name of message in dbc file
QString mCANMsgComment; //misc comment from database
unsigned int mCANMsgID; // 11/29-bit message identifier from database
quint32 mCANMsgFlags; //Message flags from database
unsigned int mCANMsgLength; // Data Length Code of the message (0..8) from database
quint64 mCANMsgID; // 11/29-bit message identifier QList<CCANSignal*> mSignalsList;
quint8 mCANMsgType; // Type of the message, using the PCAN interface driver encoding defined in PCANbasic.h
quint8 mCANMsgLength; // Data Length Code of the message (0..8)
QByteArray mCANMsgData; // Data of the message, max size = 8 bytes
//Timestamp //Timestamp
quint64 mCANMsgMillisecs; // Base-value: milliseconds: 0.. 2^32-1 quint64 mCANMsgMillisecs; // Base-value: milliseconds: 0.. 2^32-1
quint32 mCANMsgMillisecsOverflow; // Roll-arounds of millis quint32 mCANMsgMillisecsOverflow; // Roll-arounds of millis
quint32 mCANMsgMicrosecs; // Microseconds: 0..999 quint32 mCANMsgMicrosecs; // Microseconds: 0..999
CCANMessage &operator=(const CCANMessage *source); CCANMessage &operator=(const CCANMessage *source);
int SetDataFromDriver(quint32 Channel,TPCANMsg CANMsg,TPCANTimestamp CANTimeStamp); int SetDataFromDriver(quint32 Channel,TPCANMsg CANMsg,TPCANTimestamp CANTimeStamp);
int AddSignal(CCANSignal* NewSignal);
int UpdateValue(CCANMessage* NewDeviceMessage);
}; };

View File

@ -0,0 +1,33 @@
#include "CANSignal.h"
#include "defines.h"
CCANSignal::CCANSignal()
{
mEncoding = CAN_SIGNAL_ENCODING_INVALID;
}
int CCANSignal::ComputeNewSignalValue(quint64 MotorolaValue, quint64 IntelValue)
{
if(mEncoding == CAN_SIGNAL_ENCODING_INTEL)
{
mRawValue = IntelValue;
}
else if(mEncoding == CAN_SIGNAL_ENCODING_MOTOROLA)
{
mRawValue = MotorolaValue;
}
else
{
return RET_GENERAL_ERROR;
}
mRawValue >>= mStartBit;
quint64 mask = ((1 << mSignalSize)-1);
mRawValue &= mask;
mPhysicalValue = ((double) mRawValue * mValueFactor) + mValueOffset;
}

View File

@ -0,0 +1,90 @@
#ifndef CANSIGNAL_H
#define CANSIGNAL_H
#include <QtGlobal>
#include <QString>
class CCANSignal
{
public:
enum eCANSignalEncoding
{
CAN_SIGNAL_ENCODING_INTEL = 0,
CAN_SIGNAL_ENCODING_MOTOROLA,
CAN_SIGNAL_ENCODING_INVALID,
CAN_SIGNAL_ENCODING_MAX
};
enum eCANSignalMultiplexing
{
CAN_SIGNAL_MULTIPLEXING_NONE,
CAN_SIGNAL_MULTIPLEXING_SWITCH,
CAN_SIGNAL_MULTIPLEXING_MULTIPLEXED,
CAN_SIGNAL_MULTIPLEXING_MAX
};
enum eCANSIgnalValueType
{
CAN_SIGNAL_TYPE_INVALID,
CAN_SIGNAL_TYPE_SIGNED_INT,
CAN_SIGNAL_TYPE_UNSIGNED_INT,
CAN_SIGNAL_TYPE_32_BIT_FLOAT,
CAN_SIGNAL_TYPE_64_BIT_DOUBLE,
CAN_SIGNAL_TYPE_MAX
};
public:
CCANSignal();
QString mSignalName;
QString mSignalComment;
unsigned int mEncoding;
unsigned int mMultiplexing;
unsigned int mStartBit;
unsigned int mSignalSize;
unsigned int mValueType;
double mValueFactor;
double mValueOffset;
double mMinValue;
double mMaxValue;
QString mSignalUnit;
int ComputeNewSignalValue(quint64 MotorolaValue, quint64 IntelValue);
private:
quint64 mRawValue;
double mPhysicalValue;
};
#endif // CANSIGNAL_H
/*
physical_value = raw_value * factor + offset
raw_value = (physical_value offset) / factor
*/
/*
* Signal: name='_BA_Resp_SW_Ver_Revision', unit=''
qname='IVT-S_all-variations_12082020.IVT_Msg_Response._BA_Resp_SW_Ver_Revision'
comment=''
encoding='Motorola'
representation='Unsigned'
value min=0.00, value max=0.00
scale faktor=1.00, offset=0.00
startbit=24, length=8
*/

View File

@ -56,7 +56,7 @@ int CGeneralMessagesLogDispatcher::Init()
QString temp; QString temp;
mSystemLogFile->write("\n\n"); mSystemLogFile->write("\n\n");
mSystemLogFile->write(QString("********************************************************************\n").toUtf8()); mSystemLogFile->write(QString("********************************************************************\n").toUtf8());
mSystemLogFile->write(QString("Otarcik CAN software startup on %1 at %2\n").arg(QDateTime::currentDateTime().date().toString("yyyy-MM-dd")).arg(QDateTime::currentDateTime().time().toString("hh:mm:ss")).toUtf8()); mSystemLogFile->write(QString("Démarrage du logiciel Otarcik CAN le %1 à %2\n").arg(QDateTime::currentDateTime().date().toString("yyyy-MM-dd")).arg(QDateTime::currentDateTime().time().toString("hh:mm:ss")).toUtf8());
mSystemLogFile->write(QString("********************************************************************\n").toUtf8()); mSystemLogFile->write(QString("********************************************************************\n").toUtf8());
} }
return RET_OK; return RET_OK;

View File

@ -14,7 +14,7 @@
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Otracik</string> <string>Otarcik</string>
</property> </property>
<property name="windowOpacity"> <property name="windowOpacity">
<double>3.000000000000000</double> <double>3.000000000000000</double>

View File

@ -1,14 +1,280 @@
#include "ProgramSettingsPage.h" #include "ProgramSettingsPage.h"
#include "ui_ProgramSettingsPage.h" #include "ui_ProgramSettingsPage.h"
#include "CANDevice.h"
//#include "CANMessage.h"
//#include "CANSignal.h"
//#include "PCANBasic.h"
CProgramSettingsPage::CProgramSettingsPage(QWidget *parent) : CProgramSettingsPage::CProgramSettingsPage(QWidget *parent) :
QWidget(parent), QWidget(parent),
ui(new Ui::CProgramSettingsPage) ui(new Ui::CProgramSettingsPage)
{ {
ui->setupUi(this); ui->setupUi(this);
mDevicesList = 0;
ui->mDBSignalDetailsTable->setColumnCount(10);
ui->mDBSignalDetailsTable->setHorizontalHeaderLabels(QStringList() << "Signal" << "Bit No" << "Length" << "Type" << "Max Val" << "Min Val" << "Offset" << "Scale factor" << "Unit" << "Byte order");
ui->mCANBaudrateComboBx->clear();
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_1M",QVariant(PCAN_BAUD_1M));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_800K",QVariant(PCAN_BAUD_800K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_500K",QVariant(PCAN_BAUD_500K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_250K",QVariant(PCAN_BAUD_250K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_125K",QVariant(PCAN_BAUD_125K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_100K",QVariant(PCAN_BAUD_100K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_95K",QVariant(PCAN_BAUD_95K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_83K",QVariant(PCAN_BAUD_83K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_50K",QVariant(PCAN_BAUD_50K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_47K",QVariant(PCAN_BAUD_47K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_33K",QVariant(PCAN_BAUD_33K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_20K",QVariant(PCAN_BAUD_20K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_10K",QVariant(PCAN_BAUD_10K));
ui->mCANBaudrateComboBx->addItem("PCAN_BAUD_5K",QVariant(PCAN_BAUD_5K));
ui->mCANIDComboBx->addItem("PCAN_USBBUS1",QVariant(PCAN_USBBUS1));
ui->mCANIDComboBx->addItem("PCAN_USBBUS2",QVariant(PCAN_USBBUS2));
ui->mCANIDComboBx->addItem("PCAN_USBBUS3",QVariant(PCAN_USBBUS3));
ui->mCANIDComboBx->addItem("PCAN_USBBUS4",QVariant(PCAN_USBBUS4));
ui->mCANIDComboBx->addItem("PCAN_USBBUS5",QVariant(PCAN_USBBUS5));
ui->mCANIDComboBx->addItem("PCAN_USBBUS6",QVariant(PCAN_USBBUS6));
ui->mCANIDComboBx->addItem("PCAN_USBBUS7",QVariant(PCAN_USBBUS7));
ui->mCANIDComboBx->addItem("PCAN_USBBUS8",QVariant(PCAN_USBBUS8));
ui->mCANIDComboBx->addItem("PCAN_USBBUS9",QVariant(PCAN_USBBUS9));
ui->mCANIDComboBx->addItem("PCAN_USBBUS10",QVariant(PCAN_USBBUS10));
ui->mCANIDComboBx->addItem("PCAN_USBBUS11",QVariant(PCAN_USBBUS11));
ui->mCANIDComboBx->addItem("PCAN_USBBUS12",QVariant(PCAN_USBBUS12));
ui->mCANIDComboBx->addItem("PCAN_USBBUS13",QVariant(PCAN_USBBUS13));
ui->mCANIDComboBx->addItem("PCAN_USBBUS14",QVariant(PCAN_USBBUS14));
ui->mCANIDComboBx->addItem("PCAN_USBBUS15",QVariant(PCAN_USBBUS15));
ui->mCANIDComboBx->addItem("PCAN_USBBUS16",QVariant(PCAN_USBBUS16));
ui->mDeviceDescriptionTxtEdit->setEnabled(false);
ui->mDatabaseFileSelectBtn->hide();
ui->mCANBaudrateComboBx->setEnabled(false);
ui->mCANIDComboBx->setEnabled(false);
connect(ui->mDevicesList,&QListWidget::itemSelectionChanged,this,&CProgramSettingsPage::DeviceSelectionChanged);
connect(ui->mDBMessagesListWidget,&QListWidget::itemSelectionChanged,this,&CProgramSettingsPage::MessageSelectionChanged);
connect(ui->mModifyDevParamsBtn,&QPushButton::clicked,this,&CProgramSettingsPage::ModifyDeviceBtnPressed);
// connect(ui->mDBSignalDetailsTable,&QTableWidget::itemSelectionChanged,this,&CProgramSettingsPage::SignalSelectionChanged);
} }
CProgramSettingsPage::~CProgramSettingsPage() CProgramSettingsPage::~CProgramSettingsPage()
{ {
delete ui; delete ui;
} }
int CProgramSettingsPage::SetDevicesList(QList<CCANDevice *> *DevicesList)
{
if(DevicesList == 0)
{
return RET_GENERAL_ERROR;
}
mDevicesList = DevicesList;
if(mDevicesList == 0)
{
return RET_GENERAL_ERROR;
}
ui->mDevicesList->clear();
for(int i = 0; i < mDevicesList->size(); i++)
{
QString name = mDevicesList->at(i)->mDeviceName;
if(name.isEmpty())
{
name = QString("Device %1").arg(i+1);
}
ui->mDevicesList->addItem(name);
}
ui->mDevicesList->setCurrentRow(0);
return RET_OK;
}
int CProgramSettingsPage::ClearDatabaseData()
{
ui->mDBMessagesListWidget->clear();
return RET_OK;
}
int CProgramSettingsPage::UpdatePage()
{
int index = ui->mDevicesList->currentRow();
if(index < 0 || index >= mDevicesList->size())
{
return RET_GENERAL_ERROR;
}
CCANDevice *Device = mDevicesList->at(index);
if(Device != 0)
{
//update device information
ui->mCANBaudrateComboBx->setCurrentIndex(ui->mCANBaudrateComboBx->findData(Device->mCANDeviceBaudrate));
ui->mCANIDComboBx->setCurrentIndex(ui->mCANIDComboBx->findData(Device->mCANDeviceID));
ui->mDeviceDescriptionTxtEdit->setPlainText(Device->mDeviceDescription);
ui->mDatabaseFileNameLbl->setText(QString("Database: %1").arg(Device->mCANDeviceDatabaseFilename));
//update device database information
ui->mDBMessagesListWidget->clear();
ui->mDBSignalDetailsTable->clearContents();
ui->mDBSignalDetailsTable->setRowCount(0);
if(Device->mMessageList.isEmpty())
{
ui->mDBMessagesListWidget->insertItem(0,"Aucun message");
ui->mDBMessageIDLbl->setText("Message ID: ");
ui->mDBMessageLengthLbl->setText("Message Length: ");
ui->mDBMessageNameLbl->setText("Message Name: ");
ui->mDBMessageNbSignalsLbl->setText("Number of signals: ");
}
else
{
ui->mDBMessagesListWidget->clear();
for(int msg = 0; msg < Device->mMessageList.size(); msg++)
{
ui->mDBMessagesListWidget->insertItem(msg,Device->mMessageList.at(msg)->mCANMsgName);
}
ui->mDBMessagesListWidget->setCurrentRow(0);
}
}
}
int CProgramSettingsPage::UpdateMessageInformation()
{
int index = ui->mDevicesList->currentRow();
if(index < 0 || index >= mDevicesList->size())
{
return RET_GENERAL_ERROR;
}
CCANDevice *Device = mDevicesList->at(index);
if(Device != 0)
{
int MsgIndex = ui->mDBMessagesListWidget->currentRow();
if(MsgIndex < 0 || MsgIndex >= Device->mMessageList.size())
{
return RET_GENERAL_ERROR;
}
CCANMessage *Message = Device->mMessageList.at(MsgIndex);
ui->mDBMessageIDLbl->setText(QString("Message ID: 0x%1").arg(Message->mCANMsgID,0,16));
ui->mDBMessageLengthLbl->setText(QString("Message Length: %1").arg(Message->mCANMsgLength));
ui->mDBMessageNameLbl->setText(QString("Message Name: %1").arg(Message->mCANMsgName));
ui->mDBMessageNbSignalsLbl->setText(QString("Number of signals: %1").arg(Message->mSignalsList.size()));
ui->mDBSignalDetailsTable->clearContents();
ui->mDBSignalDetailsTable->setRowCount(0);
ui->mDBSignalDetailsTable->setRowCount(Message->mSignalsList.size());
for(int Sig = 0; Sig < Message->mSignalsList.size(); Sig++)
{
CCANSignal *Signal = Message->mSignalsList.at(Sig);
QTableWidgetItem *NewItem;
//Signal name
NewItem = new QTableWidgetItem(Signal->mSignalName);
ui->mDBSignalDetailsTable->setItem(Sig,0,NewItem);
//Bit No
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mStartBit));
ui->mDBSignalDetailsTable->setItem(Sig,1,NewItem);
//Length
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mSignalSize));
ui->mDBSignalDetailsTable->setItem(Sig,2,NewItem);
//Type
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mValueType));
ui->mDBSignalDetailsTable->setItem(Sig,3,NewItem);
//Max Val
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mMaxValue,0,'f',1));
ui->mDBSignalDetailsTable->setItem(Sig,4,NewItem);
//Min Val
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mMinValue,0,'f',1));
ui->mDBSignalDetailsTable->setItem(Sig,5,NewItem);
//Offset
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mValueOffset));
ui->mDBSignalDetailsTable->setItem(Sig,6,NewItem);
//Scale Factor
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mValueFactor,0,'f',1));
ui->mDBSignalDetailsTable->setItem(Sig,7,NewItem);
//Unit
NewItem = new QTableWidgetItem(Signal->mSignalUnit);
ui->mDBSignalDetailsTable->setItem(Sig,8,NewItem);
//Endian
NewItem = new QTableWidgetItem(QString("%1").arg(Signal->mValueType));
ui->mDBSignalDetailsTable->setItem(Sig,9,NewItem);
}
ui->mDBSignalDetailsTable->resizeColumnsToContents();
}
}
void CProgramSettingsPage::DeviceSelectionChanged()
{
UpdatePage();
}
void CProgramSettingsPage::SignalSelectionChanged()
{
}
void CProgramSettingsPage::MessageSelectionChanged()
{
UpdateMessageInformation();
}
void CProgramSettingsPage::ModifyDeviceBtnPressed()
{
if(mDeviceChangeModeEnabled)
{
ui->mDeviceDescriptionTxtEdit->setEnabled(false);
ui->mDatabaseFileSelectBtn->hide();
ui->mCANBaudrateComboBx->setEnabled(false);
ui->mCANIDComboBx->setEnabled(false);
ui->mDevicesList->setEnabled(true);
ui->mModifyDevParamsBtn->setText("Modifier");
mDeviceChangeModeEnabled = false;
}
else
{
ui->mDeviceDescriptionTxtEdit->setEnabled(true);
ui->mDatabaseFileSelectBtn->show();
ui->mCANBaudrateComboBx->setEnabled(true);
ui->mCANIDComboBx->setEnabled(true);
ui->mDevicesList->setEnabled(false);
ui->mModifyDevParamsBtn->setText("Sauvegarder");
mDeviceChangeModeEnabled = true;
}
}

View File

@ -3,6 +3,11 @@
#include <QWidget> #include <QWidget>
class CCANDevice;
class CCANMessage;
class CCANSignal;
namespace Ui { namespace Ui {
class CProgramSettingsPage; class CProgramSettingsPage;
} }
@ -15,8 +20,22 @@ public:
explicit CProgramSettingsPage(QWidget *parent = 0); explicit CProgramSettingsPage(QWidget *parent = 0);
~CProgramSettingsPage(); ~CProgramSettingsPage();
int SetDevicesList(QList<CCANDevice *> *DevicesList);
int ClearDatabaseData();
int UpdatePage();
int UpdateMessageInformation();
private: private:
Ui::CProgramSettingsPage *ui; Ui::CProgramSettingsPage *ui;
QList<CCANDevice *> *mDevicesList;
bool mDeviceChangeModeEnabled;
public slots:
void DeviceSelectionChanged();
void SignalSelectionChanged();
void MessageSelectionChanged();
void ModifyDeviceBtnPressed();
}; };
#endif // PROGRAMSETTINGSPAGE_H #endif // PROGRAMSETTINGSPAGE_H

View File

@ -6,8 +6,8 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>929</width> <width>1475</width>
<height>529</height> <height>604</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
@ -16,9 +16,9 @@
<widget class="QLabel" name="label"> <widget class="QLabel" name="label">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>350</x> <x>370</x>
<y>70</y> <y>20</y>
<width>161</width> <width>231</width>
<height>21</height> <height>21</height>
</rect> </rect>
</property> </property>
@ -28,37 +28,314 @@
</font> </font>
</property> </property>
<property name="text"> <property name="text">
<string>Otarcik CAN settings</string> <string>Paramètres de la station Otarcik</string>
</property> </property>
</widget> </widget>
<widget class="QSpinBox" name="spinBox"> <widget class="QListWidget" name="mDevicesList">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>320</x> <x>50</x>
<y>160</y> <y>120</y>
<width>43</width> <width>191</width>
<height>22</height> <height>301</height>
</rect> </rect>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_2"> <widget class="QLabel" name="label_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>140</x> <x>52</x>
<y>162</y> <y>100</y>
<width>171</width> <width>81</width>
<height>20</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The PCAN USB module CAN ID that is communicating with the Parker module&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text"> <property name="text">
<string>Parker Module CAN device ID:</string> <string>Dispositifs CAN</string>
</property> </property>
<property name="alignment"> </widget>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> <widget class="QGroupBox" name="mDeviceParamsGroupBox">
<property name="geometry">
<rect>
<x>280</x>
<y>100</y>
<width>311</width>
<height>331</height>
</rect>
</property> </property>
<property name="title">
<string>Paramètres</string>
</property>
<widget class="QLabel" name="mCANIDLbl">
<property name="geometry">
<rect>
<x>10</x>
<y>40</y>
<width>91</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Driver CAN ID:</string>
</property>
</widget>
<widget class="QComboBox" name="mCANIDComboBx">
<property name="enabled">
<bool>true</bool>
</property>
<property name="geometry">
<rect>
<x>100</x>
<y>39</y>
<width>131</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="mCANBaudrateLbl">
<property name="geometry">
<rect>
<x>10</x>
<y>70</y>
<width>91</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>CAN Baudrate:</string>
</property>
</widget>
<widget class="QComboBox" name="mCANBaudrateComboBx">
<property name="enabled">
<bool>true</bool>
</property>
<property name="geometry">
<rect>
<x>100</x>
<y>70</y>
<width>131</width>
<height>21</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="mDeviceDatabaseLbl">
<property name="geometry">
<rect>
<x>10</x>
<y>100</y>
<width>111</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Fichier database:</string>
</property>
</widget>
<widget class="QLabel" name="mDatabaseFileNameLbl">
<property name="geometry">
<rect>
<x>10</x>
<y>120</y>
<width>301</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Fichier...</string>
</property>
</widget>
<widget class="QPushButton" name="mDatabaseFileSelectBtn">
<property name="geometry">
<rect>
<x>280</x>
<y>120</y>
<width>31</width>
<height>22</height>
</rect>
</property>
<property name="text">
<string>...</string>
</property>
</widget>
<widget class="QPushButton" name="mModifyDevParamsBtn">
<property name="geometry">
<rect>
<x>20</x>
<y>300</y>
<width>80</width>
<height>22</height>
</rect>
</property>
<property name="text">
<string>Modifier</string>
</property>
</widget>
<widget class="QTextEdit" name="mDeviceDescriptionTxtEdit">
<property name="geometry">
<rect>
<x>10</x>
<y>180</y>
<width>291</width>
<height>101</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="label_3">
<property name="geometry">
<rect>
<x>10</x>
<y>160</y>
<width>81</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Description</string>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="mDatabaseGroupBox">
<property name="geometry">
<rect>
<x>620</x>
<y>100</y>
<width>851</width>
<height>491</height>
</rect>
</property>
<property name="title">
<string>Database</string>
</property>
<widget class="QLabel" name="mDBMessageNameLbl">
<property name="geometry">
<rect>
<x>270</x>
<y>30</y>
<width>381</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Message Name: </string>
</property>
</widget>
<widget class="QLabel" name="mDBMessageIDLbl">
<property name="geometry">
<rect>
<x>270</x>
<y>50</y>
<width>171</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Message ID: </string>
</property>
</widget>
<widget class="QLabel" name="mDBMessageLengthLbl">
<property name="geometry">
<rect>
<x>270</x>
<y>70</y>
<width>191</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Message Length</string>
</property>
</widget>
<widget class="QLabel" name="mDBMessageNbSignalsLbl">
<property name="geometry">
<rect>
<x>270</x>
<y>90</y>
<width>171</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Number of signals: </string>
</property>
</widget>
<widget class="QListWidget" name="mDBMessagesListWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>40</y>
<width>251</width>
<height>201</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="mDBMessageNameLbl_2">
<property name="geometry">
<rect>
<x>1</x>
<y>23</y>
<width>171</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>8</pointsize>
</font>
</property>
<property name="text">
<string>Messages</string>
</property>
</widget>
<widget class="QTableWidget" name="mDBSignalDetailsTable">
<property name="geometry">
<rect>
<x>0</x>
<y>250</y>
<width>851</width>
<height>241</height>
</rect>
</property>
</widget>
</widget> </widget>
</widget> </widget>
<resources/> <resources/>

View File

@ -29,9 +29,9 @@ CMainWindow::CMainWindow(QWidget *parent) :
mCANViewerPage = new CCANViewerPage(this); mCANViewerPage = new CCANViewerPage(this);
setCentralWidget(mMainWindowWidget); setCentralWidget(mMainWindowWidget);
mMainWindowWidget->addTab(mGeneralStatusPage,"Status"); mMainWindowWidget->addTab(mGeneralStatusPage,"Statut");
mMainWindowWidget->addTab(mProgramSettingsPage,"Settings"); mMainWindowWidget->addTab(mProgramSettingsPage,"Paramètres");
mMainWindowWidget->addTab(mCANViewerPage,"CAN Data"); mMainWindowWidget->addTab(mCANViewerPage,"Données CAN");
resize(1700,768); resize(1700,768);
} }

View File

@ -15,21 +15,21 @@
*/ */
#include "OtarcikCan.h" #include "OtarcikCan.h"
#include "PCANBasic.h"
COtarcikCan::COtarcikCan(QObject *parent) : QObject(parent) COtarcikCan::COtarcikCan(QObject *parent) : QObject(parent)
{ {
// mPCANInterface = new CPCANInterface;
// mCANDatabase = new CCANDatabase;
// mCANAnalyzer = new CCANAnalyzer(mPCANInterface);
//mCANAnalyzer->mProgramPtr = this;
} }
COtarcikCan::~COtarcikCan() COtarcikCan::~COtarcikCan()
{ {
// delete mCANAnalyzer;
// delete mPCANInterface; while (!mCANDevicesList.isEmpty())
// delete mCANDatabase; {
delete mCANDevicesList.takeFirst();
}
mCANDevicesList.clear();
} }
@ -40,10 +40,17 @@ int COtarcikCan::Start()
CGeneralMessagesLogDispatcher::instance()->BindGuiPageHandle(mMainWindow.mGeneralStatusPage); CGeneralMessagesLogDispatcher::instance()->BindGuiPageHandle(mMainWindow.mGeneralStatusPage);
CGeneralMessagesLogDispatcher::instance()->Init(); CGeneralMessagesLogDispatcher::instance()->Init();
// mCANAnalyzer->Init(mPCANInterface,mCANDatabase); CCANDevice *NewCANDevice = new CCANDevice();
mCANDevicesList.append(NewCANDevice);
// mCANDatabase->Init(); NewCANDevice->Init("IVT-S_all-variations_12082020.dbc",PCAN_USBBUS1,PCAN_BAUD_500K,"Puck CAN USB branchée sur le module Parker qui contrôle la patente", "Module Parker");
// mCANDatabase->LoadDatabaseFile("");
NewCANDevice = new CCANDevice();
mCANDevicesList.append(NewCANDevice);
NewCANDevice->Init("Database.dbc",PCAN_USBBUS3,PCAN_BAUD_800K,"Puck CAN USB branchée sur une autre patente", "Module Cossin");
mMainWindow.mProgramSettingsPage->SetDevicesList(&mCANDevicesList);
return 0; return 0;

View File

@ -5,8 +5,7 @@
#include "MainWindow.h" #include "MainWindow.h"
#include "PCANInterface.h" #include "PCANInterface.h"
#include "GeneralMessagesLogDispatcher.h" #include "GeneralMessagesLogDispatcher.h"
#include "CANDatabase.h" #include "CANDevice.h"
#include "CANAnalyzer.h"
#include <QList> #include <QList>
class COtarcikCan : public QObject class COtarcikCan : public QObject
@ -23,10 +22,7 @@ public:
int UpdateCANViewerDataRequest(QList<CCANMessage*> MsgList); int UpdateCANViewerDataRequest(QList<CCANMessage*> MsgList);
private: private:
QList<CCANDevice*> mCANDevicesList;
// CCANAnalyzer *mCANAnalyzer;
// CPCANInterface *mPCANInterface;
// CCANDatabase *mCANDatabase;
signals: signals:

View File

@ -34,9 +34,8 @@ int CPCANInterface::Init(TPCANHandle CANDeviceChannel, TPCANBaudrate CANBaudRate
mInterfaceCANHandle = CANDeviceChannel; mInterfaceCANHandle = CANDeviceChannel;
TPCANStatus Result; TPCANStatus Result;
// Result = CAN_Initialize(PCAN_USBBUS1, PCAN_BAUD_500K);
Result = CAN_Initialize(CANDeviceChannel, CANBaudRate); Result = CAN_Initialize(CANDeviceChannel, CANBaudRate);
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Initializing PCAN USB module. Channel:%1, Baudrate:%2").arg(PCAN_USBBUS1).arg(PCAN_BAUD_500K)); CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Initialisation d'un module PCAN. Channel:%1, Baudrate:%2").arg(CANDeviceChannel).arg(CANBaudRate));
if(Result != PCAN_ERROR_OK) if(Result != PCAN_ERROR_OK)
{ {
@ -45,14 +44,14 @@ int CPCANInterface::Init(TPCANHandle CANDeviceChannel, TPCANBaudrate CANBaudRate
char strMsg[256]; char strMsg[256];
CAN_GetErrorText(Result, 0, strMsg); CAN_GetErrorText(Result, 0, strMsg);
qDebug("%s",strMsg); qDebug("%s",strMsg);
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Could not initialize PCAN USB module. Error:%1").arg(strMsg),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS); CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Impossible d'initialiser un module USB PCAN. Erreur:%1").arg(strMsg),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
CANInterfaceOpened = false; CANInterfaceOpened = false;
return RET_GENERAL_ERROR; return RET_GENERAL_ERROR;
} }
else else
{ {
CANInterfaceOpened = true; CANInterfaceOpened = true;
CGeneralMessagesLogDispatcher::instance()->AddLogMessage("PCAN USB init SUCCESS"); CGeneralMessagesLogDispatcher::instance()->AddLogMessage("Initialisation du module PCAN USB avec succès");
} }
return RET_OK; return RET_OK;
} }
@ -60,17 +59,17 @@ int CPCANInterface::Init(TPCANHandle CANDeviceChannel, TPCANBaudrate CANBaudRate
int CPCANInterface::DeInit() int CPCANInterface::DeInit()
{ {
TPCANStatus Result; TPCANStatus Result;
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Uninitializing PCAN USB module ID %1").arg(mInterfaceCANHandle)); CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Déinitialisation du module PCAN USB ID %1").arg(mInterfaceCANHandle));
Result = CAN_Uninitialize(mInterfaceCANHandle) != PCAN_ERROR_OK; Result = CAN_Uninitialize(mInterfaceCANHandle) != PCAN_ERROR_OK;
if(Result) if(Result)
{ {
char strMsg[256]; char strMsg[256];
CAN_GetErrorText(Result, 0, strMsg); CAN_GetErrorText(Result, 0, strMsg);
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Could not uninitialize PCAN USB module. Error:%1").arg(strMsg),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS); CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Impossible de déinitialiser un module USB PCAN.. Error:%1").arg(strMsg),true,CGeneralMessagesLogDispatcher::GEN_MSG_TXT_ERROR_STATUS);
} }
else else
{ {
CGeneralMessagesLogDispatcher::instance()->AddLogMessage("Uninitializing PCAN USB module..."); CGeneralMessagesLogDispatcher::instance()->AddLogMessage("Module PCAN USB déinitialisé avec succès...");
} }
return RET_OK; return RET_OK;

View File

@ -0,0 +1,471 @@
VERSION ""
NS_ :
NS_DESC_
CM_
BA_DEF_
BA_
VAL_
CAT_DEF_
CAT_
FILTER
BA_DEF_DEF_
EV_DATA_
ENVVAR_DATA_
SGTYPE_
SGTYPE_VAL_
BA_DEF_SGTYPE_
BA_SGTYPE_
SIG_TYPE_REF_
VAL_TABLE_
SIG_GROUP_
SIG_VALTYPE_
SIGTYPE_VALTYPE_
BO_TX_BU_
BA_DEF_REL_
BA_REL_
BA_DEF_DEF_REL_
BU_SG_REL_
BU_EV_REL_
BU_BO_REL_
SG_MUL_VAL_
BS_:
BU_: Host IVT_Mod
VAL_TABLE_ _B9_Voltage_Channels 3 "3 Channels" 0 "0 Channels" ;
VAL_TABLE_ _B9_Supply_Voltage 1 "12 / 24 V nominal supply voltage" ;
VAL_TABLE_ _B9_Current 2500 "2500 A" 1000 "1000 A" 500 "500 A" 300 "300 A" 100 "100 A" ;
VAL_TABLE_ _B9_Device_Type 2 "IVT-S" 1 "IVT-Mod" ;
VAL_TABLE_ VtDevice_Com 2 "CAN 2 - not terminated" 1 "CAN 1 - terminated" 0 "none" ;
VAL_TABLE_ VtDevice_TOI 3 "I" ;
VAL_TABLE_ VtResetErrorLogdata 7 "Reset error current implausible" 6 "Reset error Vref" 5 "Reset error Underflow ADC ch2" 4 "Reset error Overflow ADC ch2" 3 "Reset error Underflow ADC ch1" 2 "Reset error Overflow ADC ch1" 1 "Reset error ADC interrupt" 0 "Reset all measurement errors" ;
VAL_TABLE_ VtID_Result 0 "Vt_Result_inaktive" 8 "Vt_Result_Wh" 7 "Vt_Result_Ah" 6 "Vt_Result_W" 5 "Vt_Result_T" 4 "Vt_Result_U3" 3 "Vt_Result_U2" 2 "Vt_Result_U1" 1 "Vt_Result_I" ;
VAL_TABLE_ VtID_Cmd 54 "Set_THRESHOLD_neg" 53 "Set_THRESHOLD_pos" 32 "Set_MODE_Result_I" 16 "Set_CAN_ID_Result_I" 52 "Set_MODE" 51 "START_OC_TEST" 50 "STORE" 49 "TRIGGER" 48 "Reset_Err_Log" 39 "Set_MODE_Result_Wh" 38 "Set_MODE_Result_Ah" 37 "Set_MODE_Result_W" 23 "Set_CAN_ID_Result_Wh" 22 "Set_CAN_ID_Result_Ah" 21 "Set_CAN_ID_Result_W" 20 "Set_CAN_ID_Result_T" 35 "Set_MODE_Result_U3" 31 "Set_CAN_ID_Cmd" 29 "Set_CAN_ID_Response" 19 "Set_CAN_ID_Result_U3" 18 "Set_CAN_ID_Result_U2" 36 "Set_MODE_Result_T" 34 "Set_MODE_Result_U2" 33 "Set_MODE_Result_U1" 17 "Set_CAN_ID_Result_U1" ;
VAL_TABLE_ VtTriggerMode 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_TABLE_ VtRunMode 1 "START" 0 "STOP" ;
VAL_TABLE_ VtID_Response 149 "ARTICLE_NUMBER" 148 "SERIAL NUMBER" 147 "SW_VERSION" 146 "DEVICE_ID" 145 "STATUS" 143 "CAN_ID" 142 "STORE_to_default" 134 "START_OC_TEST" 133 "Description for the value '0x85'" 132 "THRESHOLD" 131 "CONFIG" 130 "MODE" 129 "STORE" 128 "TRIGGER" ;
BO_ 3221225472 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX
SG_ _B1_Resp_Trigger_Mask : 0|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B9_Resp_Device_spare : 0|8@0+ (1,0) [0|0] "" Vector__XXX
BO_ 1320 IVT_Msg_Result_Wh: 6 IVT_Mod
SG_ IVT_Result_Wh_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_Wh_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_Wh_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_Wh_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_Wh : 23|32@0- (1,0) [-2147483648|2147483647] "Wh" Host
SG_ IVT_MsgCount_Result_Wh : 11|4@0+ (1,0) [0|0] "" Host
SG_ IVT_ID_Result_Wh : 7|8@0+ (1,0) [7|7] "" Host
BO_ 1319 IVT_Msg_Result_As: 6 IVT_Mod
SG_ IVT_Result_As_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_As_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_As_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_As_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_As : 23|32@0- (1,0) [-21474836478|2147483647] "As" Host
SG_ IVT_MsgCount_Result_As : 11|4@0+ (1,0) [0|0] "" Host
SG_ IVT_ID_Result_As : 7|8@0+ (1,0) [6|6] "" Host
BO_ 1318 IVT_Msg_Result_W: 6 IVT_Mod
SG_ IVT_Result_W_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_W_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_W_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_W_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_W : 23|32@0- (1,0) [-2147483648|2147483647] "W" Host
SG_ IVT_MsgCount_Result_W : 11|4@0+ (1,0) [0|0] "" Host
SG_ IVT_ID_Result_W : 7|8@0+ (1,0) [5|5] "" Host
BO_ 1297 IVT_Msg_Response: 8 IVT_Mod
SG_ _B1_Trigger_spare m177 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_07_Trigger_WH m177 : 23|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_06_Trigger_As m177 : 22|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_05_Trigger_W m177 : 21|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_04_Trigger_T m177 : 20|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_03_Trigger_U3 m177 : 19|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_02_Trigger_U2 m177 : 18|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_01_Trigger_U1 m177 : 17|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B1_00_Trigger_I m177 : 16|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B2_Resp_Store_Device_SN m178 : 23|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _FF_Wrong_Command m255 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BF_Restart_Alive_SN m191 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BF_Restart_Alive_Cmd_ID m191 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Vear m186 : 39|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Revision m186 : 31|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Month m186 : 40|8@1- (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Minor m186 : 23|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Internal m186 : 63|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Day m186 : 55|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B9_Resp_Device_Com m185 : 47|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B9_Resp_Device_current m185 : 23|12@0+ (1,0) [0|0] "A" Vector__XXX
SG_ _B9_Resp_Device_TOI m185 : 39|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B9_Resp_Device_V_supply m185 : 55|8@0+ (1,0) [0|0] "V" Vector__XXX
SG_ _B9_Resp_Device_Voltage_chan m185 : 27|4@0+ (1,0) [0|0] "" Vector__XXX
SG_ _80_Resp_MeasError_Item m128 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _80_Resp_MeasError_Count_Mask m128 : 23|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _81_Resp_SystemError_Item m129 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _81_Resp_SystemError_Count_Mask m129 : 23|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _82_Resp_AllLogData_Item m130 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _82_Resp_AllLogData_Counter m130 : 23|48@0+ (1,0) [0|0] "" Vector__XXX
SG_ _83_Resp_LogData_Item m131 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _83_Resp_LogData_Counter m131 : 23|48@0+ (1,0) [0|0] "" Vector__XXX
SG_ _90_Resp_Can_ID_SN_I m144 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _90_Resp_Can_ID_val_I m144 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _91_Resp_Can_ID_SN_U1 m145 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _91_Resp_Can_ID_val_U1 m145 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _92_Resp_Can_ID_SN_U2 m146 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _92_Resp_Can_ID_val_U2 m146 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _93_Resp_Can_ID_SN_U3 m147 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _93_Resp_Can_ID_val_U3 m147 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _94_Resp_Can_ID_SN_T m148 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _94_Resp_Can_ID_val_T m148 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _95_Resp_Can_ID_SN_W m149 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _95_Resp_Can_ID_val_W m149 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _96_Resp_Can_ID_SN_As m150 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _96_Resp_Can_ID_val_As m150 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _97_Resp_Can_ID_SN_Wh m151 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _97_Resp_Can_ID_val_Wh m151 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _9D_Resp_Can_ID_SN_Command m157 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _9D_Resp_Can_ID_val_Command m157 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _9F_Resp_Can_ID_SN_Response m159 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _9F_Resp_Can_ID_val_Response m159 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A0_Resp_CycleTime_I m160 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A0_Resp_Endianess_I m160 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A0_Resp_Sign_I m160 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A0_Resp_TriggerMode_I m160 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A1_Resp_CycleTime_U1 m161 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A1_Resp_Endianess_U1 m161 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A1_Resp_Sign_U1 m161 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A1_Resp_TriggerMode_U1 m161 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A2_Resp_CycleTime_U2 m162 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A2_Resp_Endianess_U2 m162 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A2_Resp_Sign_U2 m162 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A2_Resp_TriggerMode_U2 m162 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A3_Resp_CycleTime_U3 m163 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A3_Resp_Endianess_U3 m163 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A3_Resp_Sign_U3 m163 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A3_Resp_TriggerMode_U3 m163 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A4_Resp_CycleTime_T m164 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A4_Resp_Endianess_T m164 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A4_Resp_Sign_T m164 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A4_Resp_TriggerMode_T m164 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A5_Resp_CycleTime_W m165 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A5_Resp_Endianess_W m165 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A5_Resp_Sign_W m165 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A5_Resp_TriggerMode_W m165 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A6_Resp_CycleTime_As m166 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A6_Resp_Endianess_As m166 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A6_Resp_Sign_As m166 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A6_Resp_TriggerMode_As m166 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _A7_Resp_CycleTime_WH m167 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _A7_Resp_Endianess_WH m167 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A7_Resp_Sign_WH m167 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _A7_Resp_TriggerMode_WH m167 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _B0_Resp_Reset_Item m176 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B0_Resp_Reset_Device_SN m176 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B2_Resp_Store_dummy m178 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B3_Resp_Oc_Test_Time m179 : 15|16@0+ (1,0) [0|65535] "ms" Vector__XXX
SG_ _B4_Resp_Actual_Mode m180 : 8|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B4_Resp_Code_Level m180 : 31|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B4_Resp_Startup_Mode m180 : 16|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _B5_Resp_OC_Pos_Reset_Threshold m181 : 31|16@0- (1,0) [0|0] "" Vector__XXX
SG_ _B5_Resp_OC_Pos_Set_Threshold m181 : 15|16@0- (1,0) [0|0] "" Vector__XXX
SG_ _B6_Resp_OC_Neg_Reset_Threshold m182 : 31|16@0- (1,0) [0|0] "" Vector__XXX
SG_ _B6_Resp_OC_Neg_Set_Threshold m182 : 15|16@0- (1,0) [0|0] "" Vector__XXX
SG_ _B9_Resp_Device_type m185 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BA_Resp_SW_Ver_Major_HW m186 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BB_Resp_Serien_Nr m187 : 15|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _BC_Resp_Art_N m188 : 15|56@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Response M : 7|8@0+ (1,0) [0|0] "" Host
BO_ 1317 IVT_Msg_Result_T: 6 IVT_Mod
SG_ IVT_Result_T_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_T_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_T_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_T_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Result_T : 7|8@0+ (1,0) [4|4] "" Host
SG_ IVT_Result_T : 23|32@0- (0.1,0) [-2147483648|2147483647] "°C" Host
SG_ IVT_MsgCount_Result_T : 11|4@0+ (1,0) [0|0] "" Host
BO_ 1316 IVT_Msg_Result_U3: 6 IVT_Mod
SG_ IVT_Result_U3_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U3_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U3_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U3_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Result_U3 : 7|8@0+ (1,0) [3|3] "" Host
SG_ IVT_Result_U3 : 23|32@0- (1,0) [-2147483648|2147483647] "mV" Host
SG_ IVT_MsgCount_Result_U3 : 11|4@0+ (1,0) [0|0] "" Host
BO_ 1315 IVT_Msg_Result_U2: 6 IVT_Mod
SG_ IVT_Result_U2_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U2_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U2_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U2_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Result_U2 : 7|8@0+ (1,0) [2|2] "" Host
SG_ IVT_MsgCount_Result_U2 : 11|4@0+ (1,0) [0|0] "" Host
SG_ IVT_Result_U2 : 23|32@0- (1,0) [-2147483648|2147483647] "mV" Host
BO_ 1314 IVT_Msg_Result_U1: 6 IVT_Mod
SG_ IVT_Result_U1_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U1_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U1_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_U1_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Result_U1 : 7|8@0+ (1,0) [1|1] "" Host
SG_ IVT_Result_U1 : 23|32@0- (1,0) [-2147483648|2147483647] "mV" Host
SG_ IVT_MsgCount_Result_U1 : 11|4@0+ (1,0) [0|0] "" Host
BO_ 1313 IVT_Msg_Result_I: 6 IVT_Mod
SG_ IVT_Result_I_System_Error : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_I_OCS : 12|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_I_Measurement_Error : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_Result_I_Channel_Error : 13|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Result_I : 7|8@0+ (1,0) [0|0] "" Host
SG_ IVT_MsgCount_Result_I : 11|4@0+ (1,0) [0|0] "" Host
SG_ IVT_Result_I : 23|32@0- (1,0) [-2147483648|2147483647] "mA" Host
BO_ 1041 IVT_Msg_Cmd: 8 Host
SG_ _31_01_Trigger_U1 m49 : 17|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_07_Trigger_WH m49 : 23|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_06_Trigger_As m49 : 22|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_05_Trigger_W m49 : 21|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_04_Trigger_T m49 : 20|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_03_Trigger_U3 m49 : 19|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_Trigger_spare m49 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_02_Trigger_U2 m49 : 18|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _10_Set_Can_ID_SN_I m16 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _10_Set_Can_ID_val_I m16 : 15|16@0+ (1,0) [0|2047] "" IVT_Mod
SG_ _11_Set_Can_ID_SN_U1 m17 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _11_Set_Can_ID_val_U1 m17 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _12_Set_Can_ID_SN_U2 m18 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _12_Set_Can_ID_val_U2 m18 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _13_Set_Can_ID_SN_U3 m19 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _13_Set_Can_ID_val_U3 m19 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _14_Set_Can_ID_SN_T m20 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _14_Set_Can_ID_val_T m20 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _15_Set_Can_ID_SN_W m21 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _15_Set_Can_ID_val_W m21 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _16_Set_Can_ID_SN_As m22 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _16_Set_Can_ID_val_As m22 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _17_Set_Can_ID_SN_Wh m23 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _17_Set_Can_ID_val_Wh m23 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _1D_Set_Can_ID_SN_Command m29 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _1D_Set_Can_ID_val_Command m29 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _1F_Set_Can_ID_SN_Response m31 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _1F_Set_Can_ID_val_Response m31 : 15|16@0+ (1,0) [0|2047] "" Vector__XXX
SG_ _20_Conf_CycleTime_I m32 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _20_Conf_Endianess_I m32 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _20_Conf_Sign_I m32 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _20_Conf_TriggerMode_I m32 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _21_Conf_CycleTime_U1 m33 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _21_Conf_Endianess_U1 m33 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _21_Conf_Sign_U1 m33 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _21_Conf_TriggerMode_U1 m33 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _22_Conf_CycleTime_U2 m34 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _22_Conf_Endianess_U2 m34 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _22_Conf_Sign_U2 m34 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _22_Conf_TriggerMode_U2 m34 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _23_Conf_CycleTime_U3 m35 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _23_Conf_Endianess_U3 m35 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _23_Conf_Sign_U3 m35 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _23_Conf_TriggerMode_U3 m35 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _24_Conf_CycleTime_T m36 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _24_Conf_Endianess_T m36 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _24_Conf_Sign_T m36 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _24_Conf_TriggerMode_T m36 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _25_Conf_CycleTime_W m37 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _25_Conf_Endianess_W m37 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _25_Conf_Sign_W m37 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _25_Conf_TriggerMode_W m37 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _26_Conf_CycleTime_As m38 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _26_Conf_Endianess_As m38 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _26_Conf_Sign_As m38 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _26_Conf_TriggerMode_As m38 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _27_Conf_CycleTime_WH m39 : 23|16@0+ (1,0) [0|0] "ms" Vector__XXX
SG_ _27_Conf_Endianess_WH m39 : 14|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _27_Conf_Sign_WH m39 : 15|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _27_Conf_TriggerMode_WH m39 : 9|2@0+ (1,0) [0|2] "" Vector__XXX
SG_ _30_Reset_Item m48 : 15|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _30_Reset_Device_SN m48 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _31_00_Trigger_I m49 : 16|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _32_Store_dummy m50 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _33_Oc_Test_Time m51 : 15|16@0+ (1,0) [0|65535] "ms" Vector__XXX
SG_ _34_Actual_Mode m52 : 8|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _34_Code_Level m52 : 31|16@0+ (1,0) [0|0] "" Vector__XXX
SG_ _34_Startup_Mode m52 : 16|1@0+ (1,0) [0|0] "" Vector__XXX
SG_ _35_OC_Pos_Reset_Threshold m53 : 31|16@0- (1,0) [0|0] "A" Vector__XXX
SG_ _35_OC_Pos_Set_Threshold m53 : 15|16@0- (1,0) [0|0] "A" Vector__XXX
SG_ _36_OC_Neg_Reset_Threshold m54 : 31|16@0- (1,0) [0|0] "A" Vector__XXX
SG_ _36_OC_Neg_Set_Threshold m54 : 15|16@0- (1,0) [0|0] "A" Vector__XXX
SG_ _3A_RESTART_to_Bitrate m58 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _3D_Restart_Default_Dummy m61 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _3F_Restart_Dummy m63 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _40_Get_MeasError_Item m64 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _41_Get_SystemError_Item m65 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _42_Get_AllLogData_Item m66 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _43_Get_LogData_Item m67 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _50_Get_Can_ID_SN_I m80 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _51_Get_Can_ID_SN_U1 m81 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _52_Get_Can_ID_SN_U2 m82 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _53_Get_Can_ID_SN_U3 m83 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _54_Get_Can_ID_SN_T m84 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _55_Get_Can_ID_SN_W m85 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _56_Get_Can_ID_SN_As m86 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _57_Get_Can_ID_SN_Wh m87 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _5D_Get_Can_ID_SN_Command m93 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _5F_Get_Can_ID_SN_Response m95 : 31|32@0+ (1,0) [0|0] "" Vector__XXX
SG_ _60_Get_Result_dummy_I m96 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _61_Get_Result_dummy_U1 m97 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _62_Get_Result_dummy_U2 m98 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _63_Get_Result_dummy_U3 m99 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _64_Get_Result_dummy_T m100 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _65_Get_Result_dummy_W m101 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _66_Get_Result_dummy_As m102 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _67_Get_Result_dummy_Wh m103 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _73_Get_OC_Test_dummy m115 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _74_Get_Mode_dummy m116 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _75_Get_OC_Pos_dummy m117 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _76_Get_OC_Neg_dummy m118 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _79_Get_Device_Id_dummy m121 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _7A_Get_SW_Version_dummy m122 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _7B_Get_Serien_Nr_dummy m123 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ _7C_Get_Art_Nr_dummy m124 : 15|8@0+ (1,0) [0|0] "" Vector__XXX
SG_ IVT_ID_Cmd M : 7|8@0+ (1,0) [0|0] "" IVT_Mod
CM_ BO_ 3221225472 "This is a message for not used signals, created by Vector CANdb++ DBC OLE DB Provider.";
BA_DEF_ BU_ "Manufacturer" STRING ;
BA_DEF_ BU_ "ILUsed" ENUM "No","Yes";
BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 1000;
BA_DEF_ SG_ "NWM_WakeupAllowed" ENUM "no","yes";
BA_DEF_ BO_ "NmMessage" ENUM "no","yes";
BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes";
BA_DEF_ BU_ "NmNode" ENUM "no","yes";
BA_DEF_ BU_ "NmStationAddress" INT 0 63;
BA_DEF_ "NmBaseAddress" HEX 1024 1087;
BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 1000;
BA_DEF_ "BusType" STRING ;
BA_DEF_ BO_ "GenMsgCycleTime" INT 0 1000;
BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000;
BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 10;
BA_DEF_ BO_ "GenMsgSendType" ENUM "Cyclic","NotUsed","NotUsed","NotUsed","NotUsed","Cyclic","NotUsed","IfActive","NoMsgSendType","NotUsed","vector_leerstring";
BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000;
BA_DEF_ SG_ "GenSigSendType" ENUM "Cyclic","OnWrite","OnWriteWithRepetition","OnChange","OnChangeWithRepetition","IfActive","IfActiveWithRepetition","NoSigSendType","NotUsed","NotUsed","NotUsed","NotUsed","NotUsed";
BA_DEF_ SG_ "GenSigStartValue" FLOAT 0 100000000000;
BA_DEF_DEF_ "Manufacturer" "Isabellenhuette";
BA_DEF_DEF_ "ILUsed" "Yes";
BA_DEF_DEF_ "GenMsgStartDelayTime" 0;
BA_DEF_DEF_ "NWM_WakeupAllowed" "no";
BA_DEF_DEF_ "NmMessage" "no";
BA_DEF_DEF_ "GenMsgILSupport" "Yes";
BA_DEF_DEF_ "NmNode" "no";
BA_DEF_DEF_ "NmStationAddress" 0;
BA_DEF_DEF_ "NmBaseAddress" 1024;
BA_DEF_DEF_ "GenMsgCycleTimeFast" 0;
BA_DEF_DEF_ "BusType" "CAN";
BA_DEF_DEF_ "GenMsgCycleTime" 0;
BA_DEF_DEF_ "GenMsgDelayTime" 0;
BA_DEF_DEF_ "GenMsgNrOfRepetition" 0;
BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType";
BA_DEF_DEF_ "GenSigInactiveValue" 0;
BA_DEF_DEF_ "GenSigSendType" "OnWrite";
BA_DEF_DEF_ "GenSigStartValue" 0;
BA_ "ILUsed" BU_ IVT_Mod 1;
BA_ "NmNode" BU_ IVT_Mod 1;
BA_ "Manufacturer" BU_ IVT_Mod "Isabellenhuette";
BA_ "GenMsgSendType" BO_ 1320 1;
BA_ "GenMsgSendType" BO_ 1319 1;
BA_ "GenMsgSendType" BO_ 1318 1;
BA_ "GenMsgSendType" BO_ 1297 1;
BA_ "GenMsgSendType" BO_ 1317 1;
BA_ "GenMsgSendType" BO_ 1316 1;
BA_ "GenMsgSendType" BO_ 1315 1;
BA_ "GenMsgSendType" BO_ 1314 1;
BA_ "GenMsgSendType" BO_ 1313 1;
BA_ "GenMsgSendType" BO_ 1041 7;
BA_ "NmMessage" BO_ 1041 1;
BA_ "GenSigSendType" SG_ 1320 IVT_Result_Wh 7;
BA_ "GenSigStartValue" SG_ 1320 IVT_Result_Wh 0;
BA_ "GenSigSendType" SG_ 1320 IVT_ID_Result_Wh 7;
BA_ "GenSigStartValue" SG_ 1320 IVT_ID_Result_Wh 7;
BA_ "GenSigStartValue" SG_ 1319 IVT_Result_As 0;
BA_ "GenSigSendType" SG_ 1319 IVT_ID_Result_As 7;
BA_ "GenSigStartValue" SG_ 1319 IVT_ID_Result_As 6;
BA_ "GenSigStartValue" SG_ 1318 IVT_Result_W 0;
BA_ "GenSigSendType" SG_ 1318 IVT_ID_Result_W 7;
BA_ "GenSigStartValue" SG_ 1318 IVT_ID_Result_W 5;
BA_ "GenSigStartValue" SG_ 1297 _A0_Resp_TriggerMode_I 2;
BA_ "GenSigStartValue" SG_ 1297 _A4_Resp_TriggerMode_T 2;
BA_ "GenSigStartValue" SG_ 1297 _A5_Resp_TriggerMode_W 2;
BA_ "GenSigStartValue" SG_ 1297 _A6_Resp_TriggerMode_As 2;
BA_ "GenSigStartValue" SG_ 1297 _A7_Resp_TriggerMode_WH 2;
BA_ "GenSigSendType" SG_ 1317 IVT_ID_Result_T 7;
BA_ "GenSigStartValue" SG_ 1317 IVT_ID_Result_T 4;
BA_ "GenSigStartValue" SG_ 1317 IVT_Result_T 0;
BA_ "GenSigSendType" SG_ 1316 IVT_ID_Result_U3 7;
BA_ "GenSigStartValue" SG_ 1316 IVT_ID_Result_U3 3;
BA_ "GenSigSendType" SG_ 1315 IVT_ID_Result_U2 7;
BA_ "GenSigStartValue" SG_ 1315 IVT_ID_Result_U2 2;
BA_ "GenSigSendType" SG_ 1314 IVT_ID_Result_U1 7;
BA_ "GenSigStartValue" SG_ 1314 IVT_ID_Result_U1 1;
BA_ "GenSigSendType" SG_ 1314 IVT_Result_U1 7;
BA_ "GenSigSendType" SG_ 1313 IVT_ID_Result_I 7;
BA_ "GenSigStartValue" SG_ 1313 IVT_ID_Result_I 0;
BA_ "GenSigSendType" SG_ 1313 IVT_Result_I 7;
BA_ "GenSigStartValue" SG_ 1313 IVT_Result_I 0;
BA_ "GenSigStartValue" SG_ 1041 _20_Conf_TriggerMode_I 2;
BA_ "GenSigStartValue" SG_ 1041 _24_Conf_TriggerMode_T 2;
BA_ "GenSigStartValue" SG_ 1041 _25_Conf_TriggerMode_W 2;
BA_ "GenSigStartValue" SG_ 1041 _26_Conf_TriggerMode_As 2;
BA_ "GenSigStartValue" SG_ 1041 _27_Conf_TriggerMode_WH 2;
VAL_ 1320 IVT_ID_Result_Wh 7 "Vt_Result_Wh" ;
VAL_ 1319 IVT_ID_Result_As 6 "Vt_Result_As" ;
VAL_ 1318 IVT_ID_Result_W 5 "Vt_Result_W" ;
VAL_ 1297 _B9_Resp_Device_Com 2 "CAN 2 - not terminated" 1 "CAN 1 - terminated" 0 "none" ;
VAL_ 1297 _B9_Resp_Device_current 2500 "2500 A" 1000 "1000 A" 500 "500 A" 300 "300 A" 100 "100 A" ;
VAL_ 1297 _B9_Resp_Device_TOI 3 "I" ;
VAL_ 1297 _B9_Resp_Device_V_supply 1 "12 / 24 V nominal supply voltage" ;
VAL_ 1297 _B9_Resp_Device_Voltage_chan 3 "3 Channels" 0 "0 Channels" ;
VAL_ 1297 _80_Resp_MeasError_Item 15 "Resp error calibration data" 14 "Resp error ntc-I OpenCirc" 13 "Resp error ntc-h OpenCirc" 12 "Resp error meas U3 OpenCirc" 11 "Resp error meas U2 OpenCirc" 10 "Resp error meas U1 OpenCirc" 9 "Resp error meas I1 OpenCirc" 8 "Resp error therm EMF correction" 7 "Resp error cur meas implausible" 6 "Resp error Vref" 5 "Resp error Underflow ADC ch 2" 4 "Resp error Overflow ADC ch 2" 3 "Resp error Underflow ADC ch 1" 2 "Reso error Overflow ADC ch 1" 1 "Resp error ADC interrupt" 0 "Resonse all meas errors" ;
VAL_ 1297 _81_Resp_SystemError_Item 16 "Resp error Reset EMC" 15 "Resp error Reset Watchdog" 14 "Resp error Reset illegal opcode" 13 "Resp error ADC Clock" 12 "Resp error eeprom r/w" 11 "Resp error Overcurrent detection" 10 "Resp error Configuration" 9 "Resp error System Init" 8 "Resp error System Clock" 7 "Resp error Power failure" 6 "Resp error Undertemp" 5 "Resp error Overtemp" 4 "Resp error CAN bus transmit Data" 3 "Resp error CAN bus receive Data" 2 "Resp error Parameter CRC" 1 "Resp error code CRC" 0 "Resonse all SystemErrors" ;
VAL_ 1297 _82_Resp_AllLogData_Item 42 "Resp temp minimum" 41 "Resp temp maxmimum" 40 "Resp U3 minimum" 39 "Resp U3 maximum" 38 "Resp U2 minimum" 37 "Resp U2 maxmimum" 36 "Resp U1 minimum" 35 "Resp U1 maximum" 34 "Resp current minimum" 33 "Resp current maximum" 28 "Resp oc negative activated" 27 "Resp oc positive activated" 26 "Resp run temp out spec limits" 25 "Resp run temp in spec limits" 24 "Resp run volt 3 out spec limits" 23 "Resp run volt 3 in spec limits" 22 "Resp run volt 2 out spec limits" 21 "Resp run volt 2 in spec limits" 20 "Resp run volt 1 out spec limits" 19 "Resp run volt 1 in spec limits" 18 "Resp run cur out spec limits" 17 "Resp run cur in spec limits" 16 "Resp run overall" 6 "Resp energy counter discharging" 5 "Resp energy counter charging" 4 "Resp energy counter overall" 3 "Resp Ah counter discharging" 2 "Resp Ah counter charging" 1 "Resp Ah counter overall" 0 "Response on Overall Logdata" ;
VAL_ 1297 _83_Resp_LogData_Item 42 "Resp temp minimum" 41 "Resp temp maxmimum" 40 "Resp U3 minimum" 39 "Resp U3 maximum" 38 "Resp U2 minimum" 37 "Resp U2 maxmimum" 36 "Resp U1 minimum" 35 "Resp U1 maximum" 34 "Resp current minimum" 33 "Resp current maximum" 28 "Resp oc negative activated" 27 "Resp oc positive activated" 26 "Resp run temp out spec limits" 25 "Resp run temp in spec limits" 24 "Resp run volt 3 out spec limits" 23 "Resp run volt 3 in spec limits" 22 "Resp run volt 2 out spec limits" 21 "Resp run volt 2 in spec limits" 20 "Resp run volt 1 out spec limits" 19 "Resp run volt 1 in spec limits" 18 "Resp run cur out spec limits" 17 "Resp run cur in spec limits" 16 "Resp run overall" 6 "Resp energy counter discharging" 5 "Resp energy counter charging" 4 "Resp energy counter overall" 3 "Resp Ah counter discharging" 2 "Resp Ah counter charging" 1 "Resp Ah counter overall" 0 "Response all Logdata SinceReset" ;
VAL_ 1297 _A0_Resp_TriggerMode_I 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A1_Resp_TriggerMode_U1 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A2_Resp_TriggerMode_U2 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A3_Resp_TriggerMode_U3 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A4_Resp_TriggerMode_T 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A5_Resp_TriggerMode_W 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A6_Resp_TriggerMode_As 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _A7_Resp_TriggerMode_WH 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1297 _B0_Resp_Reset_Item 554 "Reset temp minimum" 553 "Reset temp maximum" 552 "Reset U3 minimum" 551 "Reset U3 maximum" 550 "Reset U2 minimum" 549 "Reset U2 maximum" 548 "Reset U1 minimum" 547 "Reset U1 maximum" 546 "Reset Current minimum" 545 "Reset Current maximum" 540 "Reset Run overcur neg activated" 539 "Reset Run overcur pos activated" 538 "Reset Run temp out spec limits" 537 "Reset Run temp in spec limits" 536 "Reset Run volt 3 out spec limits" 535 "Reset Run volt 3 in spec limits" 534 "Reset Run volt 2 out spec limits" 533 "Reset Run volt 2 in spec limits" 532 "Reset Run volt 1 out spec limits" 531 "Reset Run volt 1 in spec limits" 530 "Reset Run cur out spec limits" 529 "Reset Run cur in spec limits" 528 "Reset Runtime overall" 518 "Reset Energy counter discharging" 517 "Reset Energy counter charging" 516 "Reset Energy counter overall" 515 "Reset Ah counter discharging" 514 "Reset Ah counter charging" 513 "Reset Ah counter overall" 512 "Reset all Logdata Since Reset" 272 "Reset Reset EMC" 271 "Reset Reset Watchdog" 270 "Reset illegal opcode" 269 "Reset ADC Clock" 268 "Reset eeprom r/w" 267 "Reset overcurrent detection" 266 "Reset configuration" 265 "Reset system init" 264 "Reset system clock" 263 "Reset power failure" 262 "Reset undertemp" 261 "Reset overtemp" 260 "Reset CAN bus transmit Data" 259 "Reset CAN bus receive Data" 258 "Reset Parameter CRC" 257 "Reset Code CRC" 256 "Reset all System errors" 15 "Reset calibration data " 14 "Reset ntc-I OpenCircuit" 13 "Reset ntc-h OpenCircuit" 12 "Reset voltage measU3 OpenCircuit" 11 "Reset voltage measU2 OpenCircuit" 10 "Reset voltage measU1 OpenCircuit" 9 "Reset current measI1 OpenCircuit" 8 "Reset thermal EMF correction" 7 "Reset error current implausible" 6 "Reset error Vref" 5 "Reset error Underflow ADC ch2" 4 "Reset error Overflow ADC ch2" 3 "Reset error Underflow ADC ch1" 2 "Reset error Overflow ADC ch1" 1 "Reset error ADC interrupt" 0 "Reset all measurement errors" ;
VAL_ 1297 _B4_Resp_Actual_Mode 1 "RUN" 0 "STOP" ;
VAL_ 1297 _B4_Resp_Startup_Mode 1 "Run" 0 "Stop" ;
VAL_ 1297 _B9_Resp_Device_type 2 "IVT-S" 1 "IVT-Mod" ;
VAL_ 1297 IVT_ID_Response 255 "Resp_Cmd_Wrong_Command" 191 "Resp_Get_Set_ALIVE" 188 "Resp_Get_Set_ArtNr" 187 "Resp_Get_Set_Serialnumber" 186 "Resp_Get_Set_SW_VERSION" 185 "Resp_Get_Set_DEVICE_ID" 182 "Resp_Get_Set_THRESHOLD_NEG" 181 "Resp_Get_Set_THRESHOLD_POS" 180 "Resp_Get_Set_MODE" 179 "Resp_Get_Set_OC_TEST_TIME" 178 "Resp_Get_Set_STORE" 177 "Resp_Get_Set_TRIGGER" 176 "Resp_Get_Set_Reset_Error_Logdata" 167 "Resp_Config_Result_Wh" 166 "Resp_Config_Result_As" 165 "Resp_Config_Result_W" 164 "Resp_Config_Result_T" 163 "Resp_Config_Result_U3" 162 "Resp_Config_Result_U2" 161 "Resp_Config_Result_U1" 160 "Resp_Config_Result_I" 159 "Resp_CAN_ID_Response" 157 "Resp_CAN_ID_Command" 151 "Resp_CAN_ID_Res_Wh" 150 "Resp_CAN_ID_Res_As" 149 "Resp_CAN_ID_Res_W" 144 "Resp_CAN_ID_Res_I" 148 "Resp_CAN_ID_Res_T" 147 "Resp_CAN_ID_Res_U3" 146 "Resp_CAN_ID_Res_U2" 145 "Resp_CAN_ID_Res_U1" 131 "Resp_Error_Log_Logdata_Since_Res" 130 "Resp_Error_Log_Overall_Logdata" 129 "Resp_Error_Log_System_Error" 128 "Resp_Error_Log_Measurement_Error" ;
VAL_ 1317 IVT_ID_Result_T 4 "Vt_Result_T" ;
VAL_ 1316 IVT_ID_Result_U3 3 "Vt_Result_U3" ;
VAL_ 1315 IVT_ID_Result_U2 2 "Vt_Result_U2" ;
VAL_ 1314 IVT_ID_Result_U1 1 "Vt_Result_U1" ;
VAL_ 1313 IVT_ID_Result_I 0 "Vt_Result_I" ;
VAL_ 1041 _20_Conf_TriggerMode_I 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _21_Conf_TriggerMode_U1 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _22_Conf_TriggerMode_U2 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _23_Conf_TriggerMode_U3 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _24_Conf_TriggerMode_T 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _25_Conf_TriggerMode_W 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _26_Conf_TriggerMode_As 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _27_Conf_TriggerMode_WH 2 "CYCLIC" 1 "TRIGGERED" 0 "DISABLED" ;
VAL_ 1041 _30_Reset_Item 554 "Reset temp minimum" 553 "Reset temp maximum" 552 "Reset U3 minimum" 551 "Reset U3 maximum" 550 "Reset U2 minimum" 549 "Reset U2 maximum" 548 "Reset U1 minimum" 547 "Reset U1 maximum" 546 "Reset Current minimum" 545 "Reset Current maximum" 540 "Reset Run overcur neg activated" 539 "Reset Run overcur pos activated" 538 "Reset Run temp out spec limits" 537 "Reset Run temp in spec limits" 536 "Reset Run volt 3 out spec limits" 535 "Reset Run volt 3 in spec limits" 534 "Reset Run volt 2 out spec limits" 533 "Reset Run volt 2 in spec limits" 532 "Reset Run volt 1 out spec limits" 531 "Reset Run volt 1 in spec limits" 530 "Reset Run cur out spec limits" 529 "Reset Run cur in spec limits" 528 "Reset Runtime overall" 518 "Reset Energy counter discharging" 517 "Reset Energy counter charging" 516 "Reset Energy counter overall" 515 "Reset Ah counter discharging" 514 "Reset Ah counter charging" 513 "Reset Ah counter overall" 512 "Reset all Logdata Since Reset" 272 "Reset Reset EMC" 271 "Reset Reset Watchdog" 270 "Reset illegal opcode" 269 "Reset ADC Clock" 268 "Reset eeprom r/w" 267 "Reset overcurrent detection" 266 "Reset configuration" 265 "Reset system init" 264 "Reset system clock" 263 "Reset power failure" 262 "Reset undertemp" 261 "Reset overtemp" 260 "Reset CAN bus transmit Data" 259 "Reset CAN bus receive Data" 258 "Reset Parameter CRC" 257 "Reset Code CRC" 256 "Reset all System errors" 15 "Reset calibration data " 14 "Reset ntc-I OpenCircuit" 13 "Reset ntc-h OpenCircuit" 12 "Reset voltage measU3 OpenCircuit" 11 "Reset voltage measU2 OpenCircuit" 10 "Reset voltage measU1 OpenCircuit" 9 "Reset current measI1 OpenCircuit" 8 "Reset thermal EMF correction" 7 "Reset error current implausible" 6 "Reset error Vref" 5 "Reset error Underflow ADC ch2" 4 "Reset error Overflow ADC ch2" 3 "Reset error Underflow ADC ch1" 2 "Reset error Overflow ADC ch1" 1 "Reset error ADC interrupt" 0 "Reset all measurement errors" ;
VAL_ 1041 _34_Actual_Mode 1 "START" 0 "STOP" ;
VAL_ 1041 _34_Startup_Mode 1 "START" 0 "STOP" ;
VAL_ 1041 _3A_RESTART_to_Bitrate 8 "250k" 4 "500k" 2 "1000k" ;
VAL_ 1041 _40_Get_MeasError_Item 15 "Get error calibration data" 14 "Get error ntc-I OpenCirc." 13 "Get error ntc-h OpenCirc." 12 "Get error volt meas U3 OpenCirc." 11 "Get error volt meas U2 OpenCirc." 10 "Get error volt meas U1 OpenCirc." 9 "Get error cur meas I1 OpenCirc." 8 "Get error thermal EMF correction" 7 "Get error cur meas implausible" 6 "Get error Vref" 5 "Get error Underflow ADC ch 2" 4 "Get error Overflow ADC ch 2" 3 "Get error Underflow ADC ch 1" 2 "Get error Overflow ADC ch 1" 1 "Get error ADC interrupt" 0 "Get all meas Errors" ;
VAL_ 1041 _41_Get_SystemError_Item 16 "Get error reset EMC" 15 "Get error reset Watchdog" 14 "Get error reset illegal opcode" 13 "Get error ADC clock" 12 "Get error eeprom r/w" 11 "Get error overcurrent detection" 10 "Get error configuration" 9 "Get error system init" 8 "Get error system clock" 7 "Get error power failure" 6 "Get error undertemp" 5 "Get error overtemp" 4 "Get error CAN bus transmit Data" 3 "Get error CAN bus receive Data" 2 "Get error Code Parameter CRC" 1 "Get error Code CRC" 0 "Get all System errors" ;
VAL_ 1041 _42_Get_AllLogData_Item 42 "Get Temperature minimum" 41 "Get Temperature maximum" 40 "Get U3 minimum" 39 "Get U3 maxmimum " 38 "Get U2 minimum" 37 "Get U2 maximum" 36 "Get U1 minimum" 35 "Get U1 maxmimum" 34 "Get current minimum" 33 "Get current maximum" 28 "Get run overcur neg activated" 27 "Get run overcur pos activated" 26 "Get run temp out spec limits" 25 "Get run temp in spec limits" 24 "Get run volt2 out spec limits" 23 "Get run volt3 in spec limits" 22 "Get run volt2 out spec limits" 21 "Get run volt2 in spec limits" 20 "Get run volt1 out spec limits" 19 "Get run volt1 in spec limits" 18 "Get run cur out spec limits" 17 "Get Run cur in spec limits" 16 "Get Runtime overall" 6 "Get Energy counter discharging" 5 "Get Energy counter charging" 4 "Get Energy counter overall" 3 "Get Ah counter discharging" 2 "Get Ah counter charging" 1 "Get Ah counter overall" 0 "Get Overall Logdata" ;
VAL_ 1041 _43_Get_LogData_Item 42 "Get Temperature minimum" 41 "Get Temperature maximum" 40 "Get U3 minimum" 39 "Get U3 maxmimum " 38 "Get U2 minimum" 37 "Get U2 maximum" 36 "Get U1 minimum" 35 "Get U1 maxmimum" 34 "Get current minimum" 33 "Get current maximum" 28 "Get run overcur neg activated" 27 "Get run overcur pos activated" 26 "Get run temp out spec limits" 25 "Get run temp in spec limits" 24 "Get run volt2 out spec limits" 23 "Get run volt3 in spec limits" 22 "Get run volt2 out spec limits" 21 "Get run volt2 in spec limits" 20 "Get run volt1 out spec limits" 19 "Get run volt1 in spec limits" 18 "Get run cur out spec limits" 17 "Get Run cur in spec limits" 16 "Get Runtime overall" 6 "Get Energy counter discharging" 5 "Get Energy counter charging" 4 "Get Energy counter overall" 3 "Get Ah counter discharging" 2 "Get Ah counter charging" 1 "Get Ah counter overall" 0 "Get Overall Logdata" ;
VAL_ 1041 IVT_ID_Cmd 124 "Get_cmd_and_info_ArtNr" 123 "Get_cmd_and_info_SN" 122 "Get_cmd_and_info_SW_Version" 121 "Get_cmd_and_info_DEVICE_ID" 118 "Get_cmd_and_info_THRESHOLD_NEG" 117 "Get_cmd_and_info_THRESHOLD_POS" 116 "Get_cmd_and_info_MODE" 115 "Get_cmd_and_info_OC_TEST_TIME" 103 "Get_Config_Res_Wh" 102 "Get_Config_Res_As" 101 "Get_Config_Res_W" 100 "Get_Config_Res_T" 99 "Get_Config_Res_U3" 98 "Get_Config_Res_U2" 97 "Get_Config_Res_U1" 96 "Get_Config_Res_I" 95 "Get_CAN_ID_Response" 93 "Get_CAN_ID_Command" 87 "Get_CAN_ID_Res_Wh" 86 "Get_CAN_ID_Res_As" 85 "Get_CAN_ID_Res_W" 84 "Get_CAN_ID_Res_T" 83 "Get_CAN_ID_Res_U3" 82 "Get_CAN_ID_Res_U2" 81 "Get_CAN_ID_Res_U1" 80 "Get_CAN_ID_Res_I" 67 "Get_Logdata_Since_Reset" 66 "Get_Overall_Logdata" 65 "Get_System_Errors" 64 "Get_Measurement_Errors" 63 "Set_RESTART" 61 "Set_RESTART_to_default" 58 "RESTART_to_Bitrate" 54 "Set_THRESHOLD_neg" 53 "Set_THRESHOLD_pos" 32 "Set_MODE_Result_I" 16 "Set_CAN_ID_Result_I" 52 "Set_MODE" 51 "START_OC_TEST" 50 "STORE" 49 "TRIGGER" 48 "Reset_Err_Log" 39 "Set_MODE_Result_Wh" 38 "Set_MODE_Result_As" 37 "Set_MODE_Result_W" 23 "Set_CAN_ID_Result_Wh" 22 "Set_CAN_ID_Result_As" 21 "Set_CAN_ID_Result_W" 20 "Set_CAN_ID_Result_T" 35 "Set_MODE_Result_U3" 31 "Set_CAN_ID_Response" 29 "Set_CAN_ID_Cmd" 19 "Set_CAN_ID_Result_U3" 18 "Set_CAN_ID_Result_U2" 36 "Set_MODE_Result_T" 34 "Set_MODE_Result_U2" 33 "Set_MODE_Result_U1" 17 "Set_CAN_ID_Result_U1" ;

Binary file not shown.

View File

@ -22,8 +22,8 @@ QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_CProgramSettingsPage_t { struct qt_meta_stringdata_CProgramSettingsPage_t {
QByteArrayData data[1]; QByteArrayData data[6];
char stringdata0[21]; char stringdata0[115];
}; };
#define QT_MOC_LITERAL(idx, ofs, len) \ #define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \ Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
@ -32,10 +32,17 @@ struct qt_meta_stringdata_CProgramSettingsPage_t {
) )
static const qt_meta_stringdata_CProgramSettingsPage_t qt_meta_stringdata_CProgramSettingsPage = { static const qt_meta_stringdata_CProgramSettingsPage_t qt_meta_stringdata_CProgramSettingsPage = {
{ {
QT_MOC_LITERAL(0, 0, 20) // "CProgramSettingsPage" QT_MOC_LITERAL(0, 0, 20), // "CProgramSettingsPage"
QT_MOC_LITERAL(1, 21, 22), // "DeviceSelectionChanged"
QT_MOC_LITERAL(2, 44, 0), // ""
QT_MOC_LITERAL(3, 45, 22), // "SignalSelectionChanged"
QT_MOC_LITERAL(4, 68, 23), // "MessageSelectionChanged"
QT_MOC_LITERAL(5, 92, 22) // "ModifyDeviceBtnPressed"
}, },
"CProgramSettingsPage" "CProgramSettingsPage\0DeviceSelectionChanged\0"
"\0SignalSelectionChanged\0MessageSelectionChanged\0"
"ModifyDeviceBtnPressed"
}; };
#undef QT_MOC_LITERAL #undef QT_MOC_LITERAL
@ -45,21 +52,41 @@ static const uint qt_meta_data_CProgramSettingsPage[] = {
8, // revision 8, // revision
0, // classname 0, // classname
0, 0, // classinfo 0, 0, // classinfo
0, 0, // methods 4, 14, // methods
0, 0, // properties 0, 0, // properties
0, 0, // enums/sets 0, 0, // enums/sets
0, 0, // constructors 0, 0, // constructors
0, // flags 0, // flags
0, // signalCount 0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 0, 34, 2, 0x0a /* Public */,
3, 0, 35, 2, 0x0a /* Public */,
4, 0, 36, 2, 0x0a /* Public */,
5, 0, 37, 2, 0x0a /* Public */,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
0 // eod 0 // eod
}; };
void CProgramSettingsPage::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a) void CProgramSettingsPage::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{ {
Q_UNUSED(_o); if (_c == QMetaObject::InvokeMetaMethod) {
Q_UNUSED(_id); auto *_t = static_cast<CProgramSettingsPage *>(_o);
Q_UNUSED(_c); Q_UNUSED(_t)
switch (_id) {
case 0: _t->DeviceSelectionChanged(); break;
case 1: _t->SignalSelectionChanged(); break;
case 2: _t->MessageSelectionChanged(); break;
case 3: _t->ModifyDeviceBtnPressed(); break;
default: ;
}
}
Q_UNUSED(_a); Q_UNUSED(_a);
} }
@ -89,6 +116,17 @@ void *CProgramSettingsPage::qt_metacast(const char *_clname)
int CProgramSettingsPage::qt_metacall(QMetaObject::Call _c, int _id, void **_a) int CProgramSettingsPage::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{ {
_id = QWidget::qt_metacall(_c, _id, _a); _id = QWidget::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 4)
qt_static_metacall(this, _c, _id, _a);
_id -= 4;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 4)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 4;
}
return _id; return _id;
} }
QT_WARNING_POP QT_WARNING_POP

View File

@ -9,9 +9,8 @@ debug/CANAnalyzer.o
debug/CANMessage.o debug/CANMessage.o
debug/CANViewerPage.o debug/CANViewerPage.o
debug/CANDatabase.o debug/CANDatabase.o
debug/CANDBMessage.o
debug/CANDBSignal.o
debug/CANDevice.o debug/CANDevice.o
debug/CANSignal.o
debug/moc_MainWindow.o debug/moc_MainWindow.o
debug/moc_PCANInterface.o debug/moc_PCANInterface.o
debug/moc_OtarcikCan.o debug/moc_OtarcikCan.o
@ -20,5 +19,4 @@ debug/moc_ProgramSettingsPage.o
debug/moc_CANAnalyzer.o debug/moc_CANAnalyzer.o
debug/moc_CANViewerPage.o debug/moc_CANViewerPage.o
debug/moc_CANDatabase.o debug/moc_CANDatabase.o
debug/moc_CANDBMessage.o
debug/moc_CANDevice.o debug/moc_CANDevice.o

View File

@ -9,9 +9,8 @@ release/CANAnalyzer.o
release/CANMessage.o release/CANMessage.o
release/CANViewerPage.o release/CANViewerPage.o
release/CANDatabase.o release/CANDatabase.o
release/CANDBMessage.o
release/CANDBSignal.o
release/CANDevice.o release/CANDevice.o
release/CANSignal.o
release/moc_MainWindow.o release/moc_MainWindow.o
release/moc_PCANInterface.o release/moc_PCANInterface.o
release/moc_OtarcikCan.o release/moc_OtarcikCan.o
@ -20,5 +19,4 @@ release/moc_ProgramSettingsPage.o
release/moc_CANAnalyzer.o release/moc_CANAnalyzer.o
release/moc_CANViewerPage.o release/moc_CANViewerPage.o
release/moc_CANDatabase.o release/moc_CANDatabase.o
release/moc_CANDBMessage.o
release/moc_CANDevice.o release/moc_CANDevice.o

View File

@ -45,7 +45,7 @@ public:
void retranslateUi(QMainWindow *CMainWindow) void retranslateUi(QMainWindow *CMainWindow)
{ {
CMainWindow->setWindowTitle(QCoreApplication::translate("CMainWindow", "Otracik", nullptr)); CMainWindow->setWindowTitle(QCoreApplication::translate("CMainWindow", "Otarcik", nullptr));
} // retranslateUi } // retranslateUi
}; };

View File

@ -11,8 +11,14 @@
#include <QtCore/QVariant> #include <QtCore/QVariant>
#include <QtWidgets/QApplication> #include <QtWidgets/QApplication>
#include <QtWidgets/QComboBox>
#include <QtWidgets/QGroupBox>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel> #include <QtWidgets/QLabel>
#include <QtWidgets/QSpinBox> #include <QtWidgets/QListWidget>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QTableWidget>
#include <QtWidgets/QTextEdit>
#include <QtWidgets/QWidget> #include <QtWidgets/QWidget>
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
@ -21,27 +27,117 @@ class Ui_CProgramSettingsPage
{ {
public: public:
QLabel *label; QLabel *label;
QSpinBox *spinBox; QListWidget *mDevicesList;
QLabel *label_2; QLabel *label_2;
QGroupBox *mDeviceParamsGroupBox;
QLabel *mCANIDLbl;
QComboBox *mCANIDComboBx;
QLabel *mCANBaudrateLbl;
QComboBox *mCANBaudrateComboBx;
QLabel *mDeviceDatabaseLbl;
QLabel *mDatabaseFileNameLbl;
QPushButton *mDatabaseFileSelectBtn;
QPushButton *mModifyDevParamsBtn;
QTextEdit *mDeviceDescriptionTxtEdit;
QLabel *label_3;
QGroupBox *mDatabaseGroupBox;
QLabel *mDBMessageNameLbl;
QLabel *mDBMessageIDLbl;
QLabel *mDBMessageLengthLbl;
QLabel *mDBMessageNbSignalsLbl;
QListWidget *mDBMessagesListWidget;
QLabel *mDBMessageNameLbl_2;
QTableWidget *mDBSignalDetailsTable;
void setupUi(QWidget *CProgramSettingsPage) void setupUi(QWidget *CProgramSettingsPage)
{ {
if (CProgramSettingsPage->objectName().isEmpty()) if (CProgramSettingsPage->objectName().isEmpty())
CProgramSettingsPage->setObjectName(QString::fromUtf8("CProgramSettingsPage")); CProgramSettingsPage->setObjectName(QString::fromUtf8("CProgramSettingsPage"));
CProgramSettingsPage->resize(929, 529); CProgramSettingsPage->resize(1475, 604);
label = new QLabel(CProgramSettingsPage); label = new QLabel(CProgramSettingsPage);
label->setObjectName(QString::fromUtf8("label")); label->setObjectName(QString::fromUtf8("label"));
label->setGeometry(QRect(350, 70, 161, 21)); label->setGeometry(QRect(370, 20, 231, 21));
QFont font; QFont font;
font.setPointSize(12); font.setPointSize(12);
label->setFont(font); label->setFont(font);
spinBox = new QSpinBox(CProgramSettingsPage); mDevicesList = new QListWidget(CProgramSettingsPage);
spinBox->setObjectName(QString::fromUtf8("spinBox")); mDevicesList->setObjectName(QString::fromUtf8("mDevicesList"));
spinBox->setGeometry(QRect(320, 160, 43, 22)); mDevicesList->setGeometry(QRect(50, 120, 191, 301));
label_2 = new QLabel(CProgramSettingsPage); label_2 = new QLabel(CProgramSettingsPage);
label_2->setObjectName(QString::fromUtf8("label_2")); label_2->setObjectName(QString::fromUtf8("label_2"));
label_2->setGeometry(QRect(140, 162, 171, 20)); label_2->setGeometry(QRect(52, 100, 81, 16));
label_2->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); mDeviceParamsGroupBox = new QGroupBox(CProgramSettingsPage);
mDeviceParamsGroupBox->setObjectName(QString::fromUtf8("mDeviceParamsGroupBox"));
mDeviceParamsGroupBox->setGeometry(QRect(280, 100, 311, 331));
mCANIDLbl = new QLabel(mDeviceParamsGroupBox);
mCANIDLbl->setObjectName(QString::fromUtf8("mCANIDLbl"));
mCANIDLbl->setGeometry(QRect(10, 40, 91, 16));
QFont font1;
font1.setPointSize(10);
mCANIDLbl->setFont(font1);
mCANIDComboBx = new QComboBox(mDeviceParamsGroupBox);
mCANIDComboBx->setObjectName(QString::fromUtf8("mCANIDComboBx"));
mCANIDComboBx->setEnabled(true);
mCANIDComboBx->setGeometry(QRect(100, 39, 131, 20));
mCANBaudrateLbl = new QLabel(mDeviceParamsGroupBox);
mCANBaudrateLbl->setObjectName(QString::fromUtf8("mCANBaudrateLbl"));
mCANBaudrateLbl->setGeometry(QRect(10, 70, 91, 16));
mCANBaudrateLbl->setFont(font1);
mCANBaudrateComboBx = new QComboBox(mDeviceParamsGroupBox);
mCANBaudrateComboBx->setObjectName(QString::fromUtf8("mCANBaudrateComboBx"));
mCANBaudrateComboBx->setEnabled(true);
mCANBaudrateComboBx->setGeometry(QRect(100, 70, 131, 21));
mDeviceDatabaseLbl = new QLabel(mDeviceParamsGroupBox);
mDeviceDatabaseLbl->setObjectName(QString::fromUtf8("mDeviceDatabaseLbl"));
mDeviceDatabaseLbl->setGeometry(QRect(10, 100, 111, 16));
mDeviceDatabaseLbl->setFont(font1);
mDatabaseFileNameLbl = new QLabel(mDeviceParamsGroupBox);
mDatabaseFileNameLbl->setObjectName(QString::fromUtf8("mDatabaseFileNameLbl"));
mDatabaseFileNameLbl->setGeometry(QRect(10, 120, 301, 16));
mDatabaseFileNameLbl->setFont(font1);
mDatabaseFileSelectBtn = new QPushButton(mDeviceParamsGroupBox);
mDatabaseFileSelectBtn->setObjectName(QString::fromUtf8("mDatabaseFileSelectBtn"));
mDatabaseFileSelectBtn->setGeometry(QRect(280, 120, 31, 22));
mModifyDevParamsBtn = new QPushButton(mDeviceParamsGroupBox);
mModifyDevParamsBtn->setObjectName(QString::fromUtf8("mModifyDevParamsBtn"));
mModifyDevParamsBtn->setGeometry(QRect(20, 300, 80, 22));
mDeviceDescriptionTxtEdit = new QTextEdit(mDeviceParamsGroupBox);
mDeviceDescriptionTxtEdit->setObjectName(QString::fromUtf8("mDeviceDescriptionTxtEdit"));
mDeviceDescriptionTxtEdit->setGeometry(QRect(10, 180, 291, 101));
label_3 = new QLabel(mDeviceParamsGroupBox);
label_3->setObjectName(QString::fromUtf8("label_3"));
label_3->setGeometry(QRect(10, 160, 81, 16));
mDatabaseGroupBox = new QGroupBox(CProgramSettingsPage);
mDatabaseGroupBox->setObjectName(QString::fromUtf8("mDatabaseGroupBox"));
mDatabaseGroupBox->setGeometry(QRect(620, 100, 851, 491));
mDBMessageNameLbl = new QLabel(mDatabaseGroupBox);
mDBMessageNameLbl->setObjectName(QString::fromUtf8("mDBMessageNameLbl"));
mDBMessageNameLbl->setGeometry(QRect(270, 30, 381, 16));
mDBMessageNameLbl->setFont(font1);
mDBMessageIDLbl = new QLabel(mDatabaseGroupBox);
mDBMessageIDLbl->setObjectName(QString::fromUtf8("mDBMessageIDLbl"));
mDBMessageIDLbl->setGeometry(QRect(270, 50, 171, 16));
mDBMessageIDLbl->setFont(font1);
mDBMessageLengthLbl = new QLabel(mDatabaseGroupBox);
mDBMessageLengthLbl->setObjectName(QString::fromUtf8("mDBMessageLengthLbl"));
mDBMessageLengthLbl->setGeometry(QRect(270, 70, 191, 16));
mDBMessageLengthLbl->setFont(font1);
mDBMessageNbSignalsLbl = new QLabel(mDatabaseGroupBox);
mDBMessageNbSignalsLbl->setObjectName(QString::fromUtf8("mDBMessageNbSignalsLbl"));
mDBMessageNbSignalsLbl->setGeometry(QRect(270, 90, 171, 16));
mDBMessageNbSignalsLbl->setFont(font1);
mDBMessagesListWidget = new QListWidget(mDatabaseGroupBox);
mDBMessagesListWidget->setObjectName(QString::fromUtf8("mDBMessagesListWidget"));
mDBMessagesListWidget->setGeometry(QRect(0, 40, 251, 201));
mDBMessageNameLbl_2 = new QLabel(mDatabaseGroupBox);
mDBMessageNameLbl_2->setObjectName(QString::fromUtf8("mDBMessageNameLbl_2"));
mDBMessageNameLbl_2->setGeometry(QRect(1, 23, 171, 16));
QFont font2;
font2.setPointSize(8);
mDBMessageNameLbl_2->setFont(font2);
mDBSignalDetailsTable = new QTableWidget(mDatabaseGroupBox);
mDBSignalDetailsTable->setObjectName(QString::fromUtf8("mDBSignalDetailsTable"));
mDBSignalDetailsTable->setGeometry(QRect(0, 250, 851, 241));
retranslateUi(CProgramSettingsPage); retranslateUi(CProgramSettingsPage);
@ -51,11 +147,22 @@ public:
void retranslateUi(QWidget *CProgramSettingsPage) void retranslateUi(QWidget *CProgramSettingsPage)
{ {
CProgramSettingsPage->setWindowTitle(QCoreApplication::translate("CProgramSettingsPage", "Form", nullptr)); CProgramSettingsPage->setWindowTitle(QCoreApplication::translate("CProgramSettingsPage", "Form", nullptr));
label->setText(QCoreApplication::translate("CProgramSettingsPage", "Otarcik CAN settings", nullptr)); label->setText(QCoreApplication::translate("CProgramSettingsPage", "Param\303\250tres de la station Otarcik", nullptr));
#if QT_CONFIG(tooltip) label_2->setText(QCoreApplication::translate("CProgramSettingsPage", "Dispositifs CAN", nullptr));
label_2->setToolTip(QCoreApplication::translate("CProgramSettingsPage", "<html><head/><body><p>The PCAN USB module CAN ID that is communicating with the Parker module</p></body></html>", nullptr)); mDeviceParamsGroupBox->setTitle(QCoreApplication::translate("CProgramSettingsPage", "Param\303\250tres", nullptr));
#endif // QT_CONFIG(tooltip) mCANIDLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Driver CAN ID:", nullptr));
label_2->setText(QCoreApplication::translate("CProgramSettingsPage", "Parker Module CAN device ID:", nullptr)); mCANBaudrateLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "CAN Baudrate:", nullptr));
mDeviceDatabaseLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Fichier database:", nullptr));
mDatabaseFileNameLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Fichier...", nullptr));
mDatabaseFileSelectBtn->setText(QCoreApplication::translate("CProgramSettingsPage", "...", nullptr));
mModifyDevParamsBtn->setText(QCoreApplication::translate("CProgramSettingsPage", "Modifier", nullptr));
label_3->setText(QCoreApplication::translate("CProgramSettingsPage", "Description", nullptr));
mDatabaseGroupBox->setTitle(QCoreApplication::translate("CProgramSettingsPage", "Database", nullptr));
mDBMessageNameLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Message Name: ", nullptr));
mDBMessageIDLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Message ID: ", nullptr));
mDBMessageLengthLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Message Length", nullptr));
mDBMessageNbSignalsLbl->setText(QCoreApplication::translate("CProgramSettingsPage", "Number of signals: ", nullptr));
mDBMessageNameLbl_2->setText(QCoreApplication::translate("CProgramSettingsPage", "Messages", nullptr));
} // retranslateUi } // retranslateUi
}; };