all setup with memory settings
This commit is contained in:
parent
debececcfd
commit
7550d1907b
@ -17,9 +17,7 @@ typedef union {
|
|||||||
uint8_t byte2;
|
uint8_t byte2;
|
||||||
uint8_t byte3;
|
uint8_t byte3;
|
||||||
} separate;
|
} separate;
|
||||||
struct {
|
uint32_t full;
|
||||||
uint32_t bytes;
|
|
||||||
} full;
|
|
||||||
} BYTES_4;
|
} BYTES_4;
|
||||||
|
|
||||||
void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
||||||
@ -32,67 +30,109 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
if(idMsg == 0x0) { // CONTROL_SETUP
|
if(idMsg == 0x0) { // CONTROL_SETUP
|
||||||
// steeringMode eraseMemory - controlAliveTime
|
// steeringMode eraseMemory - controlAliveTime
|
||||||
BYTES_4 tmpData;
|
BYTES_4 tmpData;
|
||||||
tmpData.full.bytes = data;
|
tmpData.full = data;
|
||||||
if (tmpData.separate.byte1) {
|
if (tmpData.separate.byte1) {
|
||||||
MEM_reset();
|
MEM_reset();
|
||||||
}
|
}
|
||||||
CAR_CST.CONTROL_STEERING_MODE = tmpData.separate.byte0;
|
KART_CST.CONTROL_STEERING_MODE = tmpData.separate.byte0;
|
||||||
CAR_CST.CONTROL_ALIVE_TIME = tmpData.separate.byte3;
|
KART_CST.CONTROL_ALIVE_TIME = tmpData.separate.byte3;
|
||||||
MEM_write_1_byte(MEMADD_CONTROL_STEERING_MODE, CAR_CST.CONTROL_STEERING_MODE);
|
MEM_write_1_byte(MEMADD_CONTROL_STEERING_MODE, KART_CST.CONTROL_STEERING_MODE);
|
||||||
MEM_write_1_byte(MEMADD_CONTROL_ALIVE_TIME, CAR_CST.CONTROL_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_CONTROL_ALIVE_TIME, KART_CST.CONTROL_ALIVE_TIME);
|
||||||
ALIVE_setAliveTime(ALcontroller(), CAR_CST.CONTROL_ALIVE_TIME);
|
ALIVE_setAliveTime(ALcontroller(), KART_CST.CONTROL_ALIVE_TIME);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x1) { // CONTROL_SPEED_FACTOR
|
if(idMsg == 0x1) { // CONTROL_SPEED_FACTOR
|
||||||
// valHH valH valL valLL
|
// valHH valH valL valLL
|
||||||
|
KART_CST.CONTROL_SPEED_FACTOR = data;
|
||||||
|
MEM_write_4_byte(MEMADD_CONTROL_SPEED_FACTOR, KART_CST.CONTROL_SPEED_FACTOR);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x2) { // CONTROL_POWER_FACTOR
|
if(idMsg == 0x2) { // CONTROL_POWER_FACTOR
|
||||||
// valHH valH valL valLL
|
// valHH valH valL valLL
|
||||||
|
KART_CST.CONTROL_POWER_FACTOR = data;
|
||||||
|
MEM_write_4_byte(MEMADD_CONTROL_POWER_FACTOR, KART_CST.CONTROL_POWER_FACTOR);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x3) { // CONTROL_STEERING_FACTOR
|
if(idMsg == 0x3) { // CONTROL_STEERING_FACTOR
|
||||||
// valHH valH valL valLL
|
// valHH valH valL valLL
|
||||||
|
KART_CST.CONTROL_STEERING_FACTOR = data;
|
||||||
|
MEM_write_4_byte(MEMADD_CONTROL_STEERING_FACTOR, KART_CST.CONTROL_STEERING_FACTOR);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x4) { // CONTROL_SECURITY_PARAM
|
if(idMsg == 0x4) { // CONTROL_SECURITY_PARAM
|
||||||
// maxSpeedFw maxSpeedBw - -
|
// maxSpeedFw maxSpeedBw - -
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
tmpData.full = data;
|
||||||
|
KART_CST.CONTROL_MAX_SPEED_FW = tmpData.separate.byte0;
|
||||||
|
KART_CST.CONTROL_MAX_SPEED_BW = tmpData.separate.byte1;
|
||||||
|
MEM_write_1_byte(MEMADD_CONTROL_MAX_SPEED_FW, KART_CST.CONTROL_MAX_SPEED_FW);
|
||||||
|
MEM_write_1_byte(MEMADD_CONTROL_MAX_SPEED_BW, KART_CST.CONTROL_MAX_SPEED_BW);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x5) { // CONTROL_SETUP_PARAM
|
if(idMsg == 0x5) { // CONTROL_SETUP_PARAM
|
||||||
// displayAliveTime steeringAliveTime - -
|
// displayAliveTime steeringAliveTime - -
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
tmpData.full = data;
|
||||||
|
KART_CST.DISPLAY_ALIVE_TIME = tmpData.separate.byte0;
|
||||||
|
KART_CST.STEERING_ALIVE_TIME = tmpData.separate.byte1;
|
||||||
|
MEM_write_1_byte(MEMADD_DISPLAY_ALIVE_TIME, KART_CST.DISPLAY_ALIVE_TIME);
|
||||||
|
MEM_write_1_byte(MEMADD_STEERING_ALIVE_TIME, KART_CST.STEERING_ALIVE_TIME);
|
||||||
|
// TODO set alive times
|
||||||
|
// TODO send params
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x6) { // CONTROL_SETUP_PARAM_JOY
|
if(idMsg == 0x6) { // CONTROL_SETUP_PARAM_JOY
|
||||||
// joystickMode joystickParam1 joystickParam2 joystickAliveTime
|
// joystickMode joystickParam1 joystickParam2 joystickAliveTime
|
||||||
BYTES_4 tmpData;
|
BYTES_4 tmpData;
|
||||||
tmpData.full.bytes = data;
|
tmpData.full = data;
|
||||||
CAR_CST.JOYSTICK_MODE = tmpData.separate.byte0;
|
KART_CST.JOYSTICK_MODE = tmpData.separate.byte0;
|
||||||
CAR_CST.JOYSTICK_PARAM1 = tmpData.separate.byte1;
|
KART_CST.JOYSTICK_PARAM1 = tmpData.separate.byte1;
|
||||||
CAR_CST.JOYSTICK_PARAM2 = tmpData.separate.byte2;
|
KART_CST.JOYSTICK_PARAM2 = tmpData.separate.byte2;
|
||||||
CAR_CST.JOYSTICK_ALIVE_TIME = tmpData.separate.byte3;
|
KART_CST.JOYSTICK_ALIVE_TIME = tmpData.separate.byte3;
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_MODE, CAR_CST.JOYSTICK_MODE);
|
MEM_write_1_byte(MEMADD_JOYSTICK_MODE, KART_CST.JOYSTICK_MODE);
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM1, CAR_CST.JOYSTICK_PARAM1);
|
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM1, KART_CST.JOYSTICK_PARAM1);
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM2, CAR_CST.JOYSTICK_PARAM2);
|
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM2, KART_CST.JOYSTICK_PARAM2);
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_ALIVE_TIME, CAR_CST.JOYSTICK_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_JOYSTICK_ALIVE_TIME, KART_CST.JOYSTICK_ALIVE_TIME);
|
||||||
|
|
||||||
ALIVE_setAliveTime(ALjoy(), CAR_CST.JOYSTICK_ALIVE_TIME);
|
ALIVE_setAliveTime(ALjoy(), KART_CST.JOYSTICK_ALIVE_TIME);
|
||||||
CM_JOY_SETUP(NULL);
|
CM_JOY_SETUP(NULL);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x7) { // CONTROL_SETUP_PARAM_DRIVE
|
if(idMsg == 0x7) { // CONTROL_SETUP_PARAM_DRIVE
|
||||||
// driveAliveTime driveSpeedTime driveStopTime -
|
// driveAliveTime driveSpeedTime driveStopTime -
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
tmpData.full = data;
|
||||||
|
KART_CST.DRIVE_ALIVE_TIME = tmpData.separate.byte0;
|
||||||
|
KART_CST.DRIVE_SPEED_TIME = tmpData.separate.byte1;
|
||||||
|
KART_CST.DRIVE_STOP_TIME = tmpData.separate.byte2;
|
||||||
|
MEM_write_1_byte(MEMADD_DRIVE_ALIVE_TIME, KART_CST.DRIVE_ALIVE_TIME);
|
||||||
|
MEM_write_1_byte(MEMADD_DRIVE_SPEED_TIME, KART_CST.DRIVE_SPEED_TIME);
|
||||||
|
MEM_write_1_byte(MEMADD_DRIVE_STOP_TIME, KART_CST.DRIVE_STOP_TIME);
|
||||||
|
// TODO set alive time
|
||||||
|
// TODO send params
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(idMsg == 0x8) { // CONTROL_SETUP_PARAM_BATTERY
|
if(idMsg == 0x8) { // CONTROL_SETUP_PARAM_BATTERY
|
||||||
// batteryVoltTime batteryCurrentTime batteryEnergyTime batteryAliveTime
|
// batteryVoltTime batteryCurrentTime batteryEnergyTime batteryAliveTime
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
tmpData.full = data;
|
||||||
|
KART_CST.BATTERY_VOLT_TIME = tmpData.separate.byte0;
|
||||||
|
KART_CST.BATTERY_CURRENT_TIME = tmpData.separate.byte1;
|
||||||
|
KART_CST.BATTERY_ENERGY_TIME = tmpData.separate.byte2;
|
||||||
|
KART_CST.BATTERY_ALIVE_TIME = tmpData.separate.byte3;
|
||||||
|
MEM_write_1_byte(MEMADD_BATTERY_VOLT_TIME, KART_CST.BATTERY_VOLT_TIME);
|
||||||
|
MEM_write_1_byte(MEMADD_BATTERY_CURRENT_TIME, KART_CST.BATTERY_CURRENT_TIME);
|
||||||
|
MEM_write_1_byte(MEMADD_BATTERY_ENERGY_TIME, KART_CST.BATTERY_ENERGY_TIME);
|
||||||
|
MEM_write_1_byte(MEMADD_BATTERY_ALIVE_TIME, KART_CST.BATTERY_ALIVE_TIME);
|
||||||
|
// TODO set alive time
|
||||||
|
// TODO send params
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,11 +152,11 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
// - - - -
|
// - - - -
|
||||||
ALIVE_ISALIVE(ALjoy());
|
ALIVE_ISALIVE(ALjoy());
|
||||||
if(ALjoy()->state == STAL_DEAD){
|
if(ALjoy()->state == STAL_DEAD){
|
||||||
CAR_CST.JOYSTICK_MODE = MEM_read_1_byte(MEMADD_JOYSTICK_MODE);
|
KART_CST.JOYSTICK_MODE = MEM_read_1_byte(MEMADD_JOYSTICK_MODE);
|
||||||
CAR_CST.JOYSTICK_PARAM1 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM1);
|
KART_CST.JOYSTICK_PARAM1 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM1);
|
||||||
CAR_CST.JOYSTICK_PARAM2 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM2);
|
KART_CST.JOYSTICK_PARAM2 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM2);
|
||||||
CAR_CST.JOYSTICK_ALIVE_TIME = MEM_read_1_byte(MEMADD_JOYSTICK_ALIVE_TIME);
|
KART_CST.JOYSTICK_ALIVE_TIME = MEM_read_1_byte(MEMADD_JOYSTICK_ALIVE_TIME);
|
||||||
ALIVE_setAliveTime(ALjoy(), CAR_CST.JOYSTICK_ALIVE_TIME);
|
ALIVE_setAliveTime(ALjoy(), KART_CST.JOYSTICK_ALIVE_TIME);
|
||||||
ALIVE_emitBorn(ALjoy(), 0, 0);
|
ALIVE_emitBorn(ALjoy(), 0, 0);
|
||||||
ALIVE_emitReady(ALjoy(), 100, 0);
|
ALIVE_emitReady(ALjoy(), 100, 0);
|
||||||
}
|
}
|
||||||
@ -130,6 +170,7 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
case 3:
|
case 3:
|
||||||
if(idMsg == 0xF) { // DISPLAY_ALIVE
|
if(idMsg == 0xF) { // DISPLAY_ALIVE
|
||||||
// powerMode - - -
|
// powerMode - - -
|
||||||
|
// TODO display say ALIVE
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -146,6 +187,7 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
|
|
||||||
if(idMsg == 0xF) { // DRIVE_ALIVE
|
if(idMsg == 0xF) { // DRIVE_ALIVE
|
||||||
// statusH statusL - -
|
// statusH statusL - -
|
||||||
|
// TODO drive say ALIVE
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -167,6 +209,7 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
|
|
||||||
if(idMsg == 0xF) { // STEERING_ALIVE
|
if(idMsg == 0xF) { // STEERING_ALIVE
|
||||||
// statusH statusL - -
|
// statusH statusL - -
|
||||||
|
// TODO steering say ALIVE with his status
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -178,6 +221,7 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
case 6:
|
case 6:
|
||||||
if(idMsg == 0xF) { // BATTERY_ALIVE
|
if(idMsg == 0xF) { // BATTERY_ALIVE
|
||||||
// - - - -
|
// - - - -
|
||||||
|
// TODO battery say ALIVE
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -192,46 +236,113 @@ void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void CM_CONTROLLER_ALIVE(void* p) {
|
void CM_CONTROLLER_ALIVE(void* p) {
|
||||||
|
// - - - -
|
||||||
CAN_Send(0x0, 0xF, 0);
|
CAN_Send(0x0, 0xF, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_JOY_SETUP(void* p) {
|
void CM_JOY_SETUP(void* p) {
|
||||||
|
// mode parm1 param2 aliveTime
|
||||||
BYTES_4 joy;
|
BYTES_4 joy;
|
||||||
joy.separate.byte0 = CAR_CST.JOYSTICK_MODE;
|
joy.separate.byte0 = KART_CST.JOYSTICK_MODE;
|
||||||
joy.separate.byte1 = CAR_CST.JOYSTICK_PARAM1;
|
joy.separate.byte1 = KART_CST.JOYSTICK_PARAM1;
|
||||||
joy.separate.byte2 = CAR_CST.JOYSTICK_PARAM2;
|
joy.separate.byte2 = KART_CST.JOYSTICK_PARAM2;
|
||||||
joy.separate.byte3 = CAR_CST.JOYSTICK_ALIVE_TIME;
|
joy.separate.byte3 = KART_CST.JOYSTICK_ALIVE_TIME;
|
||||||
CAN_Send(2, 0, joy.full.bytes);
|
CAN_Send(2, 0, joy.full);
|
||||||
|
|
||||||
}
|
}
|
||||||
void CM_DISPLAY_SETUP(void* p) {
|
void CM_DISPLAY_SETUP(void* p) {
|
||||||
|
// reset - - aliveTime
|
||||||
|
BYTES_4 display;
|
||||||
|
display.separate.byte0 = 0; // reset
|
||||||
|
display.separate.byte3 = KART_CST.DISPLAY_ALIVE_TIME;
|
||||||
|
CAN_Send(3, 0, display.full);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_DISPLAY_SPEED(void* p) {
|
void CM_DISPLAY_SPEED(void* p) {
|
||||||
|
// valH valL - -
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
// byte0 should be valH but isn't possible to go enough fast for use it
|
||||||
|
tmpData.separate.byte0 = 0;
|
||||||
|
tmpData.separate.byte1 = *((uint8_t*) p);
|
||||||
|
tmpData.separate.byte2 = 0;
|
||||||
|
tmpData.separate.byte3 = 0;
|
||||||
|
CAN_Send(3, 2, tmpData.full);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_DISPLAY_DIRECTION(void* p) {
|
void CM_DISPLAY_DIRECTION(void* p) {
|
||||||
|
// direction - - -
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
tmpData.separate.byte0 = (uint8_t) p;
|
||||||
|
tmpData.separate.byte1 = 0;
|
||||||
|
tmpData.separate.byte2 = 0;
|
||||||
|
tmpData.separate.byte3 = 0;
|
||||||
|
CAN_Send(3, 3, tmpData.full);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_DRIVE_SETUP(void* p) {
|
void CM_DRIVE_SETUP(void* p) {
|
||||||
|
// reset/init speedTime stopTime aliveTime
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
tmpData.separate.byte0 = (uint8_t) p;
|
||||||
|
tmpData.separate.byte1 = KART_CST.DRIVE_SPEED_TIME;
|
||||||
|
tmpData.separate.byte2 = KART_CST.DRIVE_STOP_TIME;
|
||||||
|
tmpData.separate.byte3 = KART_CST.DRIVE_ALIVE_TIME;
|
||||||
|
CAN_Send(4, 0, tmpData.full);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_DRIVE_POWER(void* p) {
|
void CM_DRIVE_POWER(void* p) {
|
||||||
|
// valH valL - -
|
||||||
|
// TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_STEERING_SETUP(void* p) {
|
void CM_STEERING_SETUP(void* p) {
|
||||||
|
// reset/init homing setCenter aliveTime
|
||||||
|
// TODO not working have to fix it
|
||||||
|
BYTES_4 tmpData;
|
||||||
|
uint8_t choice = (uint8_t) p;
|
||||||
|
switch (choice) {
|
||||||
|
case 1:
|
||||||
|
tmpData.separate.byte0 = 1;
|
||||||
|
tmpData.separate.byte1 = 0;
|
||||||
|
tmpData.separate.byte2 = 0;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
tmpData.separate.byte0 = 0;
|
||||||
|
tmpData.separate.byte1 = 1;
|
||||||
|
tmpData.separate.byte2 = 0;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
tmpData.separate.byte0 = 0;
|
||||||
|
tmpData.separate.byte1 = 0;
|
||||||
|
tmpData.separate.byte2 = 1;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
tmpData.separate.byte0 = 0;
|
||||||
|
tmpData.separate.byte1 = 0;
|
||||||
|
tmpData.separate.byte2 = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
tmpData.separate.byte3 = KART_CST.STEERING_ALIVE_TIME; // 0 -> no alive
|
||||||
|
CAN_Send(5, 0, tmpData.full);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_STEERING_SET(void* p) {
|
void CM_STEERING_SET(void* p) {
|
||||||
|
// valHH valH valL valLL
|
||||||
|
BYTES_4 pPosition;
|
||||||
|
pPosition.full = *((uint32_t*) p);
|
||||||
|
BYTES_4 sPosition;
|
||||||
|
sPosition.separate.byte0 = pPosition.separate.byte3;
|
||||||
|
sPosition.separate.byte1 = pPosition.separate.byte2;
|
||||||
|
sPosition.separate.byte2 = pPosition.separate.byte1;
|
||||||
|
sPosition.separate.byte3 = pPosition.separate.byte0;
|
||||||
|
CAN_Send(5, 1, sPosition.full);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CM_SETUP_CONTROL(void* p) {
|
void CM_SUPPLY_SETUP(void* p) {
|
||||||
|
// batteryVoltTime batteryCurrentTime batteryEnergyTime aliveTime
|
||||||
|
BYTES_4 supply;
|
||||||
|
supply.separate.byte0 = KART_CST.BATTERY_VOLT_TIME;
|
||||||
|
supply.separate.byte1 = KART_CST.BATTERY_CURRENT_TIME;
|
||||||
|
supply.separate.byte2 = KART_CST.BATTERY_ENERGY_TIME;
|
||||||
|
supply.separate.byte3 = KART_CST.BATTERY_ALIVE_TIME;
|
||||||
|
CAN_Send(6, 0, supply.full);
|
||||||
}
|
}
|
||||||
|
@ -26,17 +26,76 @@ S R M
|
|||||||
1 6 0 SETUP_CONTROL batteryVoltTime batteryCurrentTime batteryEnergyTime aliveTime
|
1 6 0 SETUP_CONTROL batteryVoltTime batteryCurrentTime batteryEnergyTime aliveTime
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Process an incoming message
|
||||||
|
* @param idSender id of the sender
|
||||||
|
* @param idMsg is of the message
|
||||||
|
* @param data data of the message
|
||||||
|
*/
|
||||||
void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data);
|
void CM_processIncome(uint8_t idSender, uint8_t idMsg, uint32_t data);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send alive message from controller
|
||||||
|
* @param p have to be NULL
|
||||||
|
*/
|
||||||
void CM_CONTROLLER_ALIVE(void* p);
|
void CM_CONTROLLER_ALIVE(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send setup to the joystick (settings from memory)
|
||||||
|
* @param p have to be NULL
|
||||||
|
*/
|
||||||
void CM_JOY_SETUP(void* p);
|
void CM_JOY_SETUP(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send setup to the display (settings from memory)
|
||||||
|
* @param p have to be NULL
|
||||||
|
*/
|
||||||
void CM_DISPLAY_SETUP(void* p);
|
void CM_DISPLAY_SETUP(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send speed to display
|
||||||
|
* @param p the speed in 100m/h (max 255 m/h)
|
||||||
|
*/
|
||||||
void CM_DISPLAY_SPEED(void* p);
|
void CM_DISPLAY_SPEED(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send direction of the steering wheel
|
||||||
|
* 0 is straight forward
|
||||||
|
* positive value is going right
|
||||||
|
* negative value is going left
|
||||||
|
* @param p the direction (int 8)
|
||||||
|
*/
|
||||||
void CM_DISPLAY_DIRECTION(void* p);
|
void CM_DISPLAY_DIRECTION(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send setup to the drive
|
||||||
|
* use with reset in parameter
|
||||||
|
* other settings from memory
|
||||||
|
* @param p 1 if reset/init 0 else
|
||||||
|
*/
|
||||||
void CM_DRIVE_SETUP(void* p);
|
void CM_DRIVE_SETUP(void* p);
|
||||||
|
|
||||||
void CM_DRIVE_POWER(void* p);
|
void CM_DRIVE_POWER(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send setup to the steering
|
||||||
|
* can be use for reset (1), homing (2) and setCenter (3)
|
||||||
|
* @param p 0 for setup, 1 for reset, 2 for homing, 3 for setCenter
|
||||||
|
*/
|
||||||
void CM_STEERING_SETUP(void* p);
|
void CM_STEERING_SETUP(void* p);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send position for steering
|
||||||
|
* no negative value because 0 is home (sensor)
|
||||||
|
* @param p the position (uint32_t*)
|
||||||
|
*/
|
||||||
void CM_STEERING_SET(void* p);
|
void CM_STEERING_SET(void* p);
|
||||||
void CM_SETUP_CONTROL(void* p);
|
|
||||||
|
/**
|
||||||
|
* Send setup to the supply (settings from memory)
|
||||||
|
* @param p have to be NULL
|
||||||
|
*/
|
||||||
|
void CM_SUPPLY_SETUP(void* p);
|
||||||
|
|
||||||
|
|
||||||
#endif /* CAN_MESSAGE_H */
|
#endif /* CAN_MESSAGE_H */
|
||||||
|
@ -65,8 +65,15 @@ typedef struct {
|
|||||||
uint8_t BATTERY_CURRENT_TIME;
|
uint8_t BATTERY_CURRENT_TIME;
|
||||||
uint8_t BATTERY_ENERGY_TIME;
|
uint8_t BATTERY_ENERGY_TIME;
|
||||||
uint8_t BATTERY_ALIVE_TIME;
|
uint8_t BATTERY_ALIVE_TIME;
|
||||||
} CAR_CST_TYPE;
|
} KART_CST_TYPE;
|
||||||
CAR_CST_TYPE CAR_CST;
|
KART_CST_TYPE KART_CST;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
int32_t speed;
|
||||||
|
uint32_t center;
|
||||||
|
uint32_t position;
|
||||||
|
} KART_VAR_TYPE;
|
||||||
|
KART_VAR_TYPE eKart;
|
||||||
|
|
||||||
|
|
||||||
#endif /* CAR_H */
|
#endif /* CAR_H */
|
||||||
|
@ -63,12 +63,10 @@ void Factory_init() {
|
|||||||
CAN_setSender(1);
|
CAN_setSender(1);
|
||||||
LED_off(l1());
|
LED_off(l1());
|
||||||
|
|
||||||
// TODO init EPROM interface
|
|
||||||
MEM_init();
|
MEM_init();
|
||||||
|
|
||||||
// TODO init watchdog with EPROM CST
|
|
||||||
ALIVE_init(ALcontroller());
|
ALIVE_init(ALcontroller());
|
||||||
ALIVE_setAliveTime(ALcontroller(), CAR_CST.CONTROL_ALIVE_TIME);
|
ALIVE_setAliveTime(ALcontroller(), KART_CST.CONTROL_ALIVE_TIME);
|
||||||
|
|
||||||
ALIVE_init(ALjoy());
|
ALIVE_init(ALjoy());
|
||||||
}
|
}
|
||||||
@ -81,7 +79,7 @@ void Factory_build() {
|
|||||||
ALIVE_onAlive(ALcontroller(), CM_CONTROLLER_ALIVE, NULL);
|
ALIVE_onAlive(ALcontroller(), CM_CONTROLLER_ALIVE, NULL);
|
||||||
|
|
||||||
ALIVE_onSetup(ALjoy(), CM_JOY_SETUP, NULL);
|
ALIVE_onSetup(ALjoy(), CM_JOY_SETUP, NULL);
|
||||||
ALIVE_setAliveTime(ALjoy(), CAR_CST.JOYSTICK_ALIVE_TIME);
|
ALIVE_setAliveTime(ALjoy(), KART_CST.JOYSTICK_ALIVE_TIME);
|
||||||
ALIVE_onBorn(ALjoy(), LED_on, l1());
|
ALIVE_onBorn(ALjoy(), LED_on, l1());
|
||||||
ALIVE_onDead(ALjoy(), LED_off, l1());
|
ALIVE_onDead(ALjoy(), LED_off, l1());
|
||||||
|
|
||||||
|
@ -198,7 +198,6 @@ uint8_t DATAEE_ReadByte(uint16_t bAdd)
|
|||||||
|
|
||||||
void MEMORY_Tasks( void )
|
void MEMORY_Tasks( void )
|
||||||
{
|
{
|
||||||
/* TODO : Add interrupt handling code */
|
|
||||||
PIR0bits.NVMIF = 0;
|
PIR0bits.NVMIF = 0;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -22,85 +22,85 @@ typedef union {
|
|||||||
void MEM_init(){
|
void MEM_init(){
|
||||||
uint8_t check = MEM_read_1_byte(0x0);
|
uint8_t check = MEM_read_1_byte(0x0);
|
||||||
if(check != 0x42){
|
if(check != 0x42){
|
||||||
CAR_CST.CONTROL_STEERING_MODE = 0;
|
KART_CST.CONTROL_STEERING_MODE = 0;
|
||||||
CAR_CST.CONTROL_ALIVE_TIME = 50;
|
KART_CST.CONTROL_ALIVE_TIME = 50;
|
||||||
CAR_CST.CONTROL_SPEED_FACTOR = 0;
|
KART_CST.CONTROL_SPEED_FACTOR = 0;
|
||||||
CAR_CST.CONTROL_POWER_FACTOR = 0;
|
KART_CST.CONTROL_POWER_FACTOR = 0;
|
||||||
CAR_CST.CONTROL_STEERING_FACTOR = 0;
|
KART_CST.CONTROL_STEERING_FACTOR = 0;
|
||||||
CAR_CST.CONTROL_MAX_SPEED_FW = 0;
|
KART_CST.CONTROL_MAX_SPEED_FW = 0;
|
||||||
CAR_CST.CONTROL_MAX_SPEED_BW = 0;
|
KART_CST.CONTROL_MAX_SPEED_BW = 0;
|
||||||
|
|
||||||
CAR_CST.JOYSTICK_MODE = 0;
|
KART_CST.JOYSTICK_MODE = 0;
|
||||||
CAR_CST.JOYSTICK_PARAM1 = 10;
|
KART_CST.JOYSTICK_PARAM1 = 5;
|
||||||
CAR_CST.JOYSTICK_PARAM2 = 1;
|
KART_CST.JOYSTICK_PARAM2 = 1;
|
||||||
CAR_CST.JOYSTICK_ALIVE_TIME = 10;
|
KART_CST.JOYSTICK_ALIVE_TIME = 25;
|
||||||
|
|
||||||
CAR_CST.DISPLAY_ALIVE_TIME = 50;
|
KART_CST.DISPLAY_ALIVE_TIME = 100;
|
||||||
|
|
||||||
CAR_CST.DRIVE_SPEED_TIME = 0;
|
KART_CST.DRIVE_SPEED_TIME = 0;
|
||||||
CAR_CST.DRIVE_STOP_TIME = 0;
|
KART_CST.DRIVE_STOP_TIME = 0;
|
||||||
CAR_CST.DRIVE_ALIVE_TIME = 10;
|
KART_CST.DRIVE_ALIVE_TIME = 10;
|
||||||
|
|
||||||
CAR_CST.STEERING_ALIVE_TIME = 100;
|
KART_CST.STEERING_ALIVE_TIME = 100;
|
||||||
|
|
||||||
CAR_CST.BATTERY_VOLT_TIME = 50;
|
KART_CST.BATTERY_VOLT_TIME = 50;
|
||||||
CAR_CST.BATTERY_CURRENT_TIME = 50;
|
KART_CST.BATTERY_CURRENT_TIME = 50;
|
||||||
CAR_CST.BATTERY_ENERGY_TIME = 50;
|
KART_CST.BATTERY_ENERGY_TIME = 50;
|
||||||
CAR_CST.BATTERY_ALIVE_TIME = 50;
|
KART_CST.BATTERY_ALIVE_TIME = 50;
|
||||||
|
|
||||||
MEM_write_1_byte(MEMADD_CONTROL_STEERING_MODE, CAR_CST.CONTROL_STEERING_MODE);
|
MEM_write_1_byte(MEMADD_CONTROL_STEERING_MODE, KART_CST.CONTROL_STEERING_MODE);
|
||||||
MEM_write_1_byte(MEMADD_CONTROL_ALIVE_TIME, CAR_CST.CONTROL_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_CONTROL_ALIVE_TIME, KART_CST.CONTROL_ALIVE_TIME);
|
||||||
MEM_write_4_byte(MEMADD_CONTROL_SPEED_FACTOR, CAR_CST.CONTROL_SPEED_FACTOR);
|
MEM_write_4_byte(MEMADD_CONTROL_SPEED_FACTOR, KART_CST.CONTROL_SPEED_FACTOR);
|
||||||
MEM_write_4_byte(MEMADD_CONTROL_POWER_FACTOR, CAR_CST.CONTROL_POWER_FACTOR);
|
MEM_write_4_byte(MEMADD_CONTROL_POWER_FACTOR, KART_CST.CONTROL_POWER_FACTOR);
|
||||||
MEM_write_4_byte(MEMADD_CONTROL_STEERING_FACTOR, CAR_CST.CONTROL_STEERING_FACTOR);
|
MEM_write_4_byte(MEMADD_CONTROL_STEERING_FACTOR, KART_CST.CONTROL_STEERING_FACTOR);
|
||||||
MEM_write_1_byte(MEMADD_CONTROL_MAX_SPEED_FW, CAR_CST.CONTROL_MAX_SPEED_FW);
|
MEM_write_1_byte(MEMADD_CONTROL_MAX_SPEED_FW, KART_CST.CONTROL_MAX_SPEED_FW);
|
||||||
MEM_write_1_byte(MEMADD_CONTROL_MAX_SPEED_BW, CAR_CST.CONTROL_MAX_SPEED_BW);
|
MEM_write_1_byte(MEMADD_CONTROL_MAX_SPEED_BW, KART_CST.CONTROL_MAX_SPEED_BW);
|
||||||
|
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_MODE, CAR_CST.JOYSTICK_MODE);
|
MEM_write_1_byte(MEMADD_JOYSTICK_MODE, KART_CST.JOYSTICK_MODE);
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM1, CAR_CST.JOYSTICK_PARAM1);
|
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM1, KART_CST.JOYSTICK_PARAM1);
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM2, CAR_CST.JOYSTICK_PARAM2);
|
MEM_write_1_byte(MEMADD_JOYSTICK_PARAM2, KART_CST.JOYSTICK_PARAM2);
|
||||||
MEM_write_1_byte(MEMADD_JOYSTICK_ALIVE_TIME, CAR_CST.JOYSTICK_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_JOYSTICK_ALIVE_TIME, KART_CST.JOYSTICK_ALIVE_TIME);
|
||||||
|
|
||||||
MEM_write_1_byte(MEMADD_DISPLAY_ALIVE_TIME, CAR_CST.DISPLAY_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_DISPLAY_ALIVE_TIME, KART_CST.DISPLAY_ALIVE_TIME);
|
||||||
|
|
||||||
MEM_write_1_byte(MEMADD_DRIVE_SPEED_TIME, CAR_CST.DRIVE_SPEED_TIME);
|
MEM_write_1_byte(MEMADD_DRIVE_SPEED_TIME, KART_CST.DRIVE_SPEED_TIME);
|
||||||
MEM_write_1_byte(MEMADD_DRIVE_STOP_TIME, CAR_CST.DRIVE_STOP_TIME);
|
MEM_write_1_byte(MEMADD_DRIVE_STOP_TIME, KART_CST.DRIVE_STOP_TIME);
|
||||||
MEM_write_1_byte(MEMADD_DRIVE_ALIVE_TIME, CAR_CST.DRIVE_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_DRIVE_ALIVE_TIME, KART_CST.DRIVE_ALIVE_TIME);
|
||||||
|
|
||||||
MEM_write_1_byte(MEMADD_STEERING_ALIVE_TIME, CAR_CST.STEERING_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_STEERING_ALIVE_TIME, KART_CST.STEERING_ALIVE_TIME);
|
||||||
|
|
||||||
MEM_write_1_byte(MEMADD_BATTERY_VOLT_TIME, CAR_CST.BATTERY_VOLT_TIME);
|
MEM_write_1_byte(MEMADD_BATTERY_VOLT_TIME, KART_CST.BATTERY_VOLT_TIME);
|
||||||
MEM_write_1_byte(MEMADD_BATTERY_CURRENT_TIME, CAR_CST.BATTERY_CURRENT_TIME);
|
MEM_write_1_byte(MEMADD_BATTERY_CURRENT_TIME, KART_CST.BATTERY_CURRENT_TIME);
|
||||||
MEM_write_1_byte(MEMADD_BATTERY_ENERGY_TIME, CAR_CST.BATTERY_ENERGY_TIME);
|
MEM_write_1_byte(MEMADD_BATTERY_ENERGY_TIME, KART_CST.BATTERY_ENERGY_TIME);
|
||||||
MEM_write_1_byte(MEMADD_BATTERY_ALIVE_TIME, CAR_CST.BATTERY_ALIVE_TIME);
|
MEM_write_1_byte(MEMADD_BATTERY_ALIVE_TIME, KART_CST.BATTERY_ALIVE_TIME);
|
||||||
|
|
||||||
MEM_write_1_byte(0x0, 0x42);
|
MEM_write_1_byte(0x0, 0x42);
|
||||||
} else {
|
} else {
|
||||||
CAR_CST.CONTROL_STEERING_MODE = MEM_read_1_byte(MEMADD_CONTROL_STEERING_MODE);
|
KART_CST.CONTROL_STEERING_MODE = MEM_read_1_byte(MEMADD_CONTROL_STEERING_MODE);
|
||||||
CAR_CST.CONTROL_ALIVE_TIME = MEM_read_1_byte(MEMADD_CONTROL_ALIVE_TIME);
|
KART_CST.CONTROL_ALIVE_TIME = MEM_read_1_byte(MEMADD_CONTROL_ALIVE_TIME);
|
||||||
CAR_CST.CONTROL_SPEED_FACTOR = MEM_read_1_byte(MEMADD_CONTROL_SPEED_FACTOR);
|
KART_CST.CONTROL_SPEED_FACTOR = MEM_read_1_byte(MEMADD_CONTROL_SPEED_FACTOR);
|
||||||
CAR_CST.CONTROL_POWER_FACTOR = MEM_read_1_byte(MEMADD_CONTROL_POWER_FACTOR);
|
KART_CST.CONTROL_POWER_FACTOR = MEM_read_1_byte(MEMADD_CONTROL_POWER_FACTOR);
|
||||||
CAR_CST.CONTROL_STEERING_FACTOR = MEM_read_1_byte(MEMADD_CONTROL_STEERING_FACTOR);
|
KART_CST.CONTROL_STEERING_FACTOR = MEM_read_1_byte(MEMADD_CONTROL_STEERING_FACTOR);
|
||||||
CAR_CST.CONTROL_MAX_SPEED_FW = MEM_read_1_byte(MEMADD_CONTROL_MAX_SPEED_FW);
|
KART_CST.CONTROL_MAX_SPEED_FW = MEM_read_1_byte(MEMADD_CONTROL_MAX_SPEED_FW);
|
||||||
CAR_CST.CONTROL_MAX_SPEED_BW = MEM_read_1_byte(MEMADD_CONTROL_MAX_SPEED_BW);
|
KART_CST.CONTROL_MAX_SPEED_BW = MEM_read_1_byte(MEMADD_CONTROL_MAX_SPEED_BW);
|
||||||
|
|
||||||
CAR_CST.JOYSTICK_MODE = MEM_read_1_byte(MEMADD_JOYSTICK_MODE);
|
KART_CST.JOYSTICK_MODE = MEM_read_1_byte(MEMADD_JOYSTICK_MODE);
|
||||||
CAR_CST.JOYSTICK_PARAM1 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM1);
|
KART_CST.JOYSTICK_PARAM1 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM1);
|
||||||
CAR_CST.JOYSTICK_PARAM2 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM2);
|
KART_CST.JOYSTICK_PARAM2 = MEM_read_1_byte(MEMADD_JOYSTICK_PARAM2);
|
||||||
CAR_CST.JOYSTICK_ALIVE_TIME = MEM_read_1_byte(MEMADD_JOYSTICK_ALIVE_TIME);
|
KART_CST.JOYSTICK_ALIVE_TIME = MEM_read_1_byte(MEMADD_JOYSTICK_ALIVE_TIME);
|
||||||
|
|
||||||
CAR_CST.DISPLAY_ALIVE_TIME = MEM_read_1_byte(MEMADD_DISPLAY_ALIVE_TIME);
|
KART_CST.DISPLAY_ALIVE_TIME = MEM_read_1_byte(MEMADD_DISPLAY_ALIVE_TIME);
|
||||||
|
|
||||||
CAR_CST.DRIVE_SPEED_TIME = MEM_read_1_byte(MEMADD_DRIVE_SPEED_TIME);
|
KART_CST.DRIVE_SPEED_TIME = MEM_read_1_byte(MEMADD_DRIVE_SPEED_TIME);
|
||||||
CAR_CST.DRIVE_STOP_TIME = MEM_read_1_byte(MEMADD_DRIVE_STOP_TIME);
|
KART_CST.DRIVE_STOP_TIME = MEM_read_1_byte(MEMADD_DRIVE_STOP_TIME);
|
||||||
CAR_CST.DRIVE_ALIVE_TIME = MEM_read_1_byte(MEMADD_DRIVE_ALIVE_TIME);
|
KART_CST.DRIVE_ALIVE_TIME = MEM_read_1_byte(MEMADD_DRIVE_ALIVE_TIME);
|
||||||
|
|
||||||
CAR_CST.STEERING_ALIVE_TIME = MEM_read_1_byte(MEMADD_STEERING_ALIVE_TIME);
|
KART_CST.STEERING_ALIVE_TIME = MEM_read_1_byte(MEMADD_STEERING_ALIVE_TIME);
|
||||||
|
|
||||||
CAR_CST.BATTERY_VOLT_TIME = MEM_read_1_byte(MEMADD_BATTERY_VOLT_TIME);
|
KART_CST.BATTERY_VOLT_TIME = MEM_read_1_byte(MEMADD_BATTERY_VOLT_TIME);
|
||||||
CAR_CST.BATTERY_CURRENT_TIME = MEM_read_1_byte(MEMADD_BATTERY_CURRENT_TIME);
|
KART_CST.BATTERY_CURRENT_TIME = MEM_read_1_byte(MEMADD_BATTERY_CURRENT_TIME);
|
||||||
CAR_CST.BATTERY_ENERGY_TIME = MEM_read_1_byte(MEMADD_BATTERY_ENERGY_TIME);
|
KART_CST.BATTERY_ENERGY_TIME = MEM_read_1_byte(MEMADD_BATTERY_ENERGY_TIME);
|
||||||
CAR_CST.BATTERY_ALIVE_TIME = MEM_read_1_byte(MEMADD_BATTERY_ALIVE_TIME);
|
KART_CST.BATTERY_ALIVE_TIME = MEM_read_1_byte(MEMADD_BATTERY_ALIVE_TIME);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,8 +8,8 @@
|
|||||||
<IsLogFilterEnabled>FALSE</IsLogFilterEnabled>
|
<IsLogFilterEnabled>FALSE</IsLogFilterEnabled>
|
||||||
<IsLogFilterLINEnabled>FALSE</IsLogFilterLINEnabled>
|
<IsLogFilterLINEnabled>FALSE</IsLogFilterLINEnabled>
|
||||||
<IsLoggingEnabled>FALSE</IsLoggingEnabled>
|
<IsLoggingEnabled>FALSE</IsLoggingEnabled>
|
||||||
<IsMsgIntepretationEnabled>FALSE</IsMsgIntepretationEnabled>
|
<IsMsgIntepretationEnabled>TRUE</IsMsgIntepretationEnabled>
|
||||||
<IsOverWriteEnabled>TRUE</IsOverWriteEnabled>
|
<IsOverWriteEnabled>FALSE</IsOverWriteEnabled>
|
||||||
<DisplayTimeMode>SYSTEM</DisplayTimeMode>
|
<DisplayTimeMode>SYSTEM</DisplayTimeMode>
|
||||||
<DisplayNumericMode>FALSE</DisplayNumericMode>
|
<DisplayNumericMode>FALSE</DisplayNumericMode>
|
||||||
<LogOnConnect_CAN>FALSE</LogOnConnect_CAN>
|
<LogOnConnect_CAN>FALSE</LogOnConnect_CAN>
|
||||||
@ -17,7 +17,7 @@
|
|||||||
<LogOnConnect_LIN>FALSE</LogOnConnect_LIN>
|
<LogOnConnect_LIN>FALSE</LogOnConnect_LIN>
|
||||||
<Window_Position>
|
<Window_Position>
|
||||||
<Visibility>SHOWNORMAL</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>HIDE</WindowPlacement>
|
<WindowPlacement>SHOWNORMAL</WindowPlacement>
|
||||||
<Top>655</Top>
|
<Top>655</Top>
|
||||||
<Left>0</Left>
|
<Left>0</Left>
|
||||||
<Bottom>874</Bottom>
|
<Bottom>874</Bottom>
|
||||||
@ -28,6 +28,44 @@
|
|||||||
<CAN_Database_Files>
|
<CAN_Database_Files>
|
||||||
<FilePath>threewheeler.DBF</FilePath>
|
<FilePath>threewheeler.DBF</FilePath>
|
||||||
</CAN_Database_Files>
|
</CAN_Database_Files>
|
||||||
|
<Bus_Statistics>
|
||||||
|
<CAN_Statistics>
|
||||||
|
<COLUMN>
|
||||||
|
<ID>Parameter</ID>
|
||||||
|
<Order>1</Order>
|
||||||
|
<Width>200</Width>
|
||||||
|
<IsVisible>1</IsVisible>
|
||||||
|
</COLUMN>
|
||||||
|
<COLUMN>
|
||||||
|
<ID>Channel 1</ID>
|
||||||
|
<Order>2</Order>
|
||||||
|
<Width>90</Width>
|
||||||
|
<IsVisible>1</IsVisible>
|
||||||
|
</COLUMN>
|
||||||
|
</CAN_Statistics>
|
||||||
|
<LIN_Statistics>
|
||||||
|
<COLUMN>
|
||||||
|
<ID>Parameter</ID>
|
||||||
|
<Order>1</Order>
|
||||||
|
<Width>200</Width>
|
||||||
|
<IsVisible>1</IsVisible>
|
||||||
|
</COLUMN>
|
||||||
|
<COLUMN>
|
||||||
|
<ID>Channel 1</ID>
|
||||||
|
<Order>2</Order>
|
||||||
|
<Width>90</Width>
|
||||||
|
<IsVisible>1</IsVisible>
|
||||||
|
</COLUMN>
|
||||||
|
</LIN_Statistics>
|
||||||
|
<Window_Position>
|
||||||
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
|
<Top>388</Top>
|
||||||
|
<Left>612</Left>
|
||||||
|
<Bottom>1002</Bottom>
|
||||||
|
<Right>1034</Right>
|
||||||
|
</Window_Position>
|
||||||
|
</Bus_Statistics>
|
||||||
<J1939_Database_Files/>
|
<J1939_Database_Files/>
|
||||||
<CAN_DIL_Section>
|
<CAN_DIL_Section>
|
||||||
<DriverName>MHS Tiny-CAN</DriverName>
|
<DriverName>MHS Tiny-CAN</DriverName>
|
||||||
@ -85,27 +123,305 @@
|
|||||||
</Channel>
|
</Channel>
|
||||||
</ControllerSettings>
|
</ControllerSettings>
|
||||||
</CAN_DIL_Section>
|
</CAN_DIL_Section>
|
||||||
|
<CAN_Filters>
|
||||||
|
<Filter>
|
||||||
|
<Name>notAlive</Name>
|
||||||
|
<Type>STOP</Type>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>271</IdFrom>
|
||||||
|
<IdTo>271</IdTo>
|
||||||
|
<Direction>Rx</Direction>
|
||||||
|
<IDType>STD</IDType>
|
||||||
|
<MsgType>NONRTR</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>799</IdFrom>
|
||||||
|
<IdTo>799</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>STD</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>543</IdFrom>
|
||||||
|
<IdTo>543</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>STD</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1055</IdFrom>
|
||||||
|
<IdTo>1055</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>STD</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1311</IdFrom>
|
||||||
|
<IdTo>1311</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>STD</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
</Filter>
|
||||||
|
<Filter>
|
||||||
|
<Name>display</Name>
|
||||||
|
<Type>PASS</Type>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>306</IdFrom>
|
||||||
|
<IdTo>306</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>STD</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>307</IdFrom>
|
||||||
|
<IdTo>307</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>799</IdFrom>
|
||||||
|
<IdTo>799</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1585</IdFrom>
|
||||||
|
<IdTo>1585</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1586</IdFrom>
|
||||||
|
<IdTo>1586</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1587</IdFrom>
|
||||||
|
<IdTo>1587</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
</Filter>
|
||||||
|
<Filter>
|
||||||
|
<Name>drive</Name>
|
||||||
|
<Type>PASS</Type>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>320</IdFrom>
|
||||||
|
<IdTo>320</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>321</IdFrom>
|
||||||
|
<IdTo>321</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1055</IdFrom>
|
||||||
|
<IdTo>1055</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1040</IdFrom>
|
||||||
|
<IdTo>1040</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
</Filter>
|
||||||
|
<Filter>
|
||||||
|
<Name>steering</Name>
|
||||||
|
<Type>PASS</Type>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>336</IdFrom>
|
||||||
|
<IdTo>336</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>337</IdFrom>
|
||||||
|
<IdTo>337</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1298</IdFrom>
|
||||||
|
<IdTo>1298</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>1311</IdFrom>
|
||||||
|
<IdTo>1311</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>82</IdFrom>
|
||||||
|
<IdTo>82</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
</Filter>
|
||||||
|
<Filter>
|
||||||
|
<Name>joy</Name>
|
||||||
|
<Type>PASS</Type>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>288</IdFrom>
|
||||||
|
<IdTo>288</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>529</IdFrom>
|
||||||
|
<IdTo>529</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>543</IdFrom>
|
||||||
|
<IdTo>543</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
</Filter>
|
||||||
|
<Filter>
|
||||||
|
<Name>controller</Name>
|
||||||
|
<Type>PASS</Type>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>16</IdFrom>
|
||||||
|
<IdTo>16</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>271</IdFrom>
|
||||||
|
<IdTo>271</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>17</IdFrom>
|
||||||
|
<IdTo>17</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>18</IdFrom>
|
||||||
|
<IdTo>18</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>19</IdFrom>
|
||||||
|
<IdTo>19</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>20</IdFrom>
|
||||||
|
<IdTo>20</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
<FilterMessage>
|
||||||
|
<IdFrom>22</IdFrom>
|
||||||
|
<IdTo>22</IdTo>
|
||||||
|
<Direction>ALL</Direction>
|
||||||
|
<IDType>ALL</IDType>
|
||||||
|
<MsgType>ALL</MsgType>
|
||||||
|
<Channel>0</Channel>
|
||||||
|
</FilterMessage>
|
||||||
|
</Filter>
|
||||||
|
</CAN_Filters>
|
||||||
<CAN_Signal_Watch>
|
<CAN_Signal_Watch>
|
||||||
<Message>
|
<Message>
|
||||||
<Id>288</Id>
|
<Id>337</Id>
|
||||||
<Signal>DeltaY</Signal>
|
<Signal>SteeringPosition</Signal>
|
||||||
<Signal>aliveTime</Signal>
|
</Message>
|
||||||
<Signal>timeMeasureOrDeltaX</Signal>
|
<Message>
|
||||||
<Signal>mode</Signal>
|
<Id>336</Id>
|
||||||
|
<Signal>SET_CENTER</Signal>
|
||||||
|
<Signal>HOMING</Signal>
|
||||||
|
<Signal>RESET</Signal>
|
||||||
|
<Signal>ALIVE_TIME</Signal>
|
||||||
|
</Message>
|
||||||
|
<Message>
|
||||||
|
<Id>82</Id>
|
||||||
|
<Signal>CENTER_POS</Signal>
|
||||||
|
</Message>
|
||||||
|
<Message>
|
||||||
|
<Id>1298</Id>
|
||||||
|
<Signal>POSITION</Signal>
|
||||||
</Message>
|
</Message>
|
||||||
<Window_Position>
|
<Window_Position>
|
||||||
<Visibility>SHOWNORMAL</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>HIDE</WindowPlacement>
|
<WindowPlacement>HIDE</WindowPlacement>
|
||||||
<Top>622</Top>
|
<Top>157</Top>
|
||||||
<Left>86</Left>
|
<Left>596</Left>
|
||||||
<Right>816</Right>
|
<Right>1086</Right>
|
||||||
<Bottom>998</Bottom>
|
<Bottom>387</Bottom>
|
||||||
</Window_Position>
|
</Window_Position>
|
||||||
<COLUMN_WIDTH>
|
<COLUMN_WIDTH>
|
||||||
<MESSAGE_COLUMN>142</MESSAGE_COLUMN>
|
<MESSAGE_COLUMN>94</MESSAGE_COLUMN>
|
||||||
<Raw_Val_Column>174</Raw_Val_Column>
|
<Raw_Val_Column>178</Raw_Val_Column>
|
||||||
<Physical_Val_Column>285</Physical_Val_Column>
|
<Physical_Val_Column>189</Physical_Val_Column>
|
||||||
<Signal_Column>142</Signal_Column>
|
<Signal_Column>94</Signal_Column>
|
||||||
</COLUMN_WIDTH>
|
</COLUMN_WIDTH>
|
||||||
</CAN_Signal_Watch>
|
</CAN_Signal_Watch>
|
||||||
<J1939_Signal_Watch>
|
<J1939_Signal_Watch>
|
||||||
@ -192,12 +508,12 @@
|
|||||||
</LIN_Log>
|
</LIN_Log>
|
||||||
<CAN_Simulated_Systems>
|
<CAN_Simulated_Systems>
|
||||||
<Window_Position>
|
<Window_Position>
|
||||||
<Visibility>HIDE</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>0</Top>
|
<Top>0</Top>
|
||||||
<Left>0</Left>
|
<Left>0</Left>
|
||||||
<Bottom>0</Bottom>
|
<Bottom>577</Bottom>
|
||||||
<Right>0</Right>
|
<Right>423</Right>
|
||||||
</Window_Position>
|
</Window_Position>
|
||||||
</CAN_Simulated_Systems>
|
</CAN_Simulated_Systems>
|
||||||
<J1939_Simulated_Systems>
|
<J1939_Simulated_Systems>
|
||||||
@ -212,9 +528,11 @@
|
|||||||
</J1939_Simulated_Systems>
|
</J1939_Simulated_Systems>
|
||||||
<CAN_Replay/>
|
<CAN_Replay/>
|
||||||
<CAN_Message_Window>
|
<CAN_Message_Window>
|
||||||
<Append_Buffer_Size>5000</Append_Buffer_Size>
|
<Append_Buffer_Size>2025155376</Append_Buffer_Size>
|
||||||
<Overwrite_Buffer_Size>2000</Overwrite_Buffer_Size>
|
<Overwrite_Buffer_Size>24800128</Overwrite_Buffer_Size>
|
||||||
<Display_Update_Time>100</Display_Update_Time>
|
<Display_Update_Time>2025155348</Display_Update_Time>
|
||||||
|
<Filter IsEnabled="0">notAlive</Filter>
|
||||||
|
<Filter IsEnabled="0">steering</Filter>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID/>
|
<ID/>
|
||||||
<Order>1</Order>
|
<Order>1</Order>
|
||||||
@ -223,27 +541,27 @@
|
|||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>Time</ID>
|
<ID>Time</ID>
|
||||||
<Order>2</Order>
|
<Order>5</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>1</IsVisible>
|
||||||
<Width>138</Width>
|
<Width>129</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>Tx/Rx</ID>
|
<ID>Tx/Rx</ID>
|
||||||
<Order>3</Order>
|
<Order>4</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>1</IsVisible>
|
||||||
<Width>85</Width>
|
<Width>53</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>Channel</ID>
|
<ID>Channel</ID>
|
||||||
<Order>4</Order>
|
<Order>2</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>0</IsVisible>
|
||||||
<Width>92</Width>
|
<Width>0</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>Msg Type</ID>
|
<ID>Msg Type</ID>
|
||||||
<Order>5</Order>
|
<Order>3</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>0</IsVisible>
|
||||||
<Width>71</Width>
|
<Width>0</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>ID</ID>
|
<ID>ID</ID>
|
||||||
@ -255,22 +573,22 @@
|
|||||||
<ID>Message</ID>
|
<ID>Message</ID>
|
||||||
<Order>7</Order>
|
<Order>7</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>1</IsVisible>
|
||||||
<Width>174</Width>
|
<Width>143</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>DLC</ID>
|
<ID>DLC</ID>
|
||||||
<Order>8</Order>
|
<Order>8</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>1</IsVisible>
|
||||||
<Width>75</Width>
|
<Width>38</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<COLUMN>
|
<COLUMN>
|
||||||
<ID>Data Byte(s)</ID>
|
<ID>Data Byte(s)</ID>
|
||||||
<Order>9</Order>
|
<Order>9</Order>
|
||||||
<IsVisible>1</IsVisible>
|
<IsVisible>1</IsVisible>
|
||||||
<Width>198</Width>
|
<Width>158</Width>
|
||||||
</COLUMN>
|
</COLUMN>
|
||||||
<IsHex>1</IsHex>
|
<IsHex>1</IsHex>
|
||||||
<IsAppend>0</IsAppend>
|
<IsAppend>1</IsAppend>
|
||||||
<IsInterpret>0</IsInterpret>
|
<IsInterpret>0</IsInterpret>
|
||||||
<Time_Mode>SYSTEM</Time_Mode>
|
<Time_Mode>SYSTEM</Time_Mode>
|
||||||
<Window_Position>
|
<Window_Position>
|
||||||
@ -278,16 +596,16 @@
|
|||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>0</Top>
|
<Top>0</Top>
|
||||||
<Left>0</Left>
|
<Left>0</Left>
|
||||||
<Bottom>295</Bottom>
|
<Bottom>810</Bottom>
|
||||||
<Right>909</Right>
|
<Right>606</Right>
|
||||||
</Window_Position>
|
</Window_Position>
|
||||||
<Interpretation_Window_Position>
|
<Interpretation_Window_Position>
|
||||||
<Visibility>SHOWNORMAL</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>271</Top>
|
<Top>173</Top>
|
||||||
<Left>879</Left>
|
<Left>10</Left>
|
||||||
<Bottom>958</Bottom>
|
<Bottom>451</Bottom>
|
||||||
<Right>1552</Right>
|
<Right>359</Right>
|
||||||
</Interpretation_Window_Position>
|
</Interpretation_Window_Position>
|
||||||
</CAN_Message_Window>
|
</CAN_Message_Window>
|
||||||
<J1939_Message_Window>
|
<J1939_Message_Window>
|
||||||
@ -378,15 +696,15 @@
|
|||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>0</Top>
|
<Top>0</Top>
|
||||||
<Left>0</Left>
|
<Left>0</Left>
|
||||||
<Bottom>543</Bottom>
|
<Bottom>549</Bottom>
|
||||||
<Right>1614</Right>
|
<Right>1614</Right>
|
||||||
</Window_Position>
|
</Window_Position>
|
||||||
<Interpretation_Window_Position>
|
<Interpretation_Window_Position>
|
||||||
<Visibility>SHOWNORMAL</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>179</Top>
|
<Top>173</Top>
|
||||||
<Left>10</Left>
|
<Left>10</Left>
|
||||||
<Bottom>457</Bottom>
|
<Bottom>451</Bottom>
|
||||||
<Right>359</Right>
|
<Right>359</Right>
|
||||||
</Interpretation_Window_Position>
|
</Interpretation_Window_Position>
|
||||||
</J1939_Message_Window>
|
</J1939_Message_Window>
|
||||||
@ -463,15 +781,15 @@
|
|||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>0</Top>
|
<Top>0</Top>
|
||||||
<Left>0</Left>
|
<Left>0</Left>
|
||||||
<Bottom>543</Bottom>
|
<Bottom>549</Bottom>
|
||||||
<Right>1614</Right>
|
<Right>1614</Right>
|
||||||
</Window_Position>
|
</Window_Position>
|
||||||
<Interpretation_Window_Position>
|
<Interpretation_Window_Position>
|
||||||
<Visibility>SHOWNORMAL</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
<WindowPlacement>RESTORETOMAXIMIZED</WindowPlacement>
|
||||||
<Top>179</Top>
|
<Top>173</Top>
|
||||||
<Left>10</Left>
|
<Left>10</Left>
|
||||||
<Bottom>457</Bottom>
|
<Bottom>451</Bottom>
|
||||||
<Right>359</Right>
|
<Right>359</Right>
|
||||||
</Interpretation_Window_Position>
|
</Interpretation_Window_Position>
|
||||||
</LIN_Message_Window>
|
</LIN_Message_Window>
|
||||||
@ -479,19 +797,19 @@
|
|||||||
<Window_Position>
|
<Window_Position>
|
||||||
<Visibility>SHOWNORMAL</Visibility>
|
<Visibility>SHOWNORMAL</Visibility>
|
||||||
<WindowPlacement>SETMINPOSITION</WindowPlacement>
|
<WindowPlacement>SETMINPOSITION</WindowPlacement>
|
||||||
<Top>12</Top>
|
<Top>3</Top>
|
||||||
<Left>989</Left>
|
<Left>1055</Left>
|
||||||
<Bottom>667</Bottom>
|
<Bottom>658</Bottom>
|
||||||
<Right>1849</Right>
|
<Right>1915</Right>
|
||||||
</Window_Position>
|
</Window_Position>
|
||||||
<Message_List>
|
<Message_List>
|
||||||
<Message>
|
<Message>
|
||||||
<Channel>1</Channel>
|
<Channel>1</Channel>
|
||||||
<Message_ID>528</Message_ID>
|
<Message_ID>22</Message_ID>
|
||||||
<IsExtended>FALSE</IsExtended>
|
<IsExtended>FALSE</IsExtended>
|
||||||
<IsRtr>FALSE</IsRtr>
|
<IsRtr>FALSE</IsRtr>
|
||||||
<DLC>4</DLC>
|
<DLC>4</DLC>
|
||||||
<DataBytes>0,0,0,0</DataBytes>
|
<DataBytes>0,5,1,25</DataBytes>
|
||||||
<Repetion>10</Repetion>
|
<Repetion>10</Repetion>
|
||||||
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
||||||
<Key_Value>a</Key_Value>
|
<Key_Value>a</Key_Value>
|
||||||
@ -499,11 +817,11 @@
|
|||||||
</Message>
|
</Message>
|
||||||
<Message>
|
<Message>
|
||||||
<Channel>1</Channel>
|
<Channel>1</Channel>
|
||||||
<Message_ID>529</Message_ID>
|
<Message_ID>16</Message_ID>
|
||||||
<IsExtended>FALSE</IsExtended>
|
<IsExtended>FALSE</IsExtended>
|
||||||
<IsRtr>FALSE</IsRtr>
|
<IsRtr>FALSE</IsRtr>
|
||||||
<DLC>4</DLC>
|
<DLC>4</DLC>
|
||||||
<DataBytes>0,0,0,0</DataBytes>
|
<DataBytes>0,0,0,50</DataBytes>
|
||||||
<Repetion>10</Repetion>
|
<Repetion>10</Repetion>
|
||||||
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
||||||
<Key_Value>a</Key_Value>
|
<Key_Value>a</Key_Value>
|
||||||
@ -511,11 +829,11 @@
|
|||||||
</Message>
|
</Message>
|
||||||
<Message>
|
<Message>
|
||||||
<Channel>1</Channel>
|
<Channel>1</Channel>
|
||||||
<Message_ID>288</Message_ID>
|
<Message_ID>306</Message_ID>
|
||||||
<IsExtended>FALSE</IsExtended>
|
<IsExtended>FALSE</IsExtended>
|
||||||
<IsRtr>FALSE</IsRtr>
|
<IsRtr>FALSE</IsRtr>
|
||||||
<DLC>4</DLC>
|
<DLC>2</DLC>
|
||||||
<DataBytes>0,255,1,5</DataBytes>
|
<DataBytes>0,100</DataBytes>
|
||||||
<Repetion>10</Repetion>
|
<Repetion>10</Repetion>
|
||||||
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
||||||
<Key_Value>a</Key_Value>
|
<Key_Value>a</Key_Value>
|
||||||
@ -523,11 +841,35 @@
|
|||||||
</Message>
|
</Message>
|
||||||
<Message>
|
<Message>
|
||||||
<Channel>1</Channel>
|
<Channel>1</Channel>
|
||||||
<Message_ID>543</Message_ID>
|
<Message_ID>336</Message_ID>
|
||||||
<IsExtended>FALSE</IsExtended>
|
<IsExtended>FALSE</IsExtended>
|
||||||
<IsRtr>FALSE</IsRtr>
|
<IsRtr>FALSE</IsRtr>
|
||||||
<DLC>1</DLC>
|
<DLC>4</DLC>
|
||||||
<DataBytes>0</DataBytes>
|
<DataBytes>1,0,0,0</DataBytes>
|
||||||
|
<Repetion>10</Repetion>
|
||||||
|
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
||||||
|
<Key_Value>a</Key_Value>
|
||||||
|
<Key_Enabled>FALSE</Key_Enabled>
|
||||||
|
</Message>
|
||||||
|
<Message>
|
||||||
|
<Channel>1</Channel>
|
||||||
|
<Message_ID>336</Message_ID>
|
||||||
|
<IsExtended>FALSE</IsExtended>
|
||||||
|
<IsRtr>FALSE</IsRtr>
|
||||||
|
<DLC>4</DLC>
|
||||||
|
<DataBytes>0,1,0,0</DataBytes>
|
||||||
|
<Repetion>10</Repetion>
|
||||||
|
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
||||||
|
<Key_Value>a</Key_Value>
|
||||||
|
<Key_Enabled>FALSE</Key_Enabled>
|
||||||
|
</Message>
|
||||||
|
<Message>
|
||||||
|
<Channel>1</Channel>
|
||||||
|
<Message_ID>337</Message_ID>
|
||||||
|
<IsExtended>FALSE</IsExtended>
|
||||||
|
<IsRtr>FALSE</IsRtr>
|
||||||
|
<DLC>4</DLC>
|
||||||
|
<DataBytes>0,1,134,160</DataBytes>
|
||||||
<Repetion>10</Repetion>
|
<Repetion>10</Repetion>
|
||||||
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
<Repetition_Enabled>FALSE</Repetition_Enabled>
|
||||||
<Key_Value>a</Key_Value>
|
<Key_Value>a</Key_Value>
|
||||||
|
Reference in New Issue
Block a user