CAN side of automated testing #4630
This commit is contained in:
parent
9122ef9317
commit
587c448688
|
@ -221,6 +221,6 @@ void setBoardDefaultConfiguration() {
|
|||
engineConfiguration->injectionMode = IM_SIMULTANEOUS;//IM_BATCH;// IM_SEQUENTIAL;
|
||||
}
|
||||
|
||||
int setBoardMetaOutputsCount() {
|
||||
int getBoardMetaOutputsCount() {
|
||||
return efi::size(MRE_OUTPUTS);
|
||||
}
|
||||
|
|
|
@ -198,6 +198,6 @@ void boardPrepareForStop() {
|
|||
palEnableLineEvent(PAL_LINE(GPIOD, 0), PAL_EVENT_MODE_RISING_EDGE);
|
||||
}
|
||||
|
||||
int setBoardMetaOutputsCount() {
|
||||
int getBoardMetaOutputsCount() {
|
||||
return efi::size(PROTEUS_OUTPUTS);
|
||||
}
|
||||
|
|
|
@ -1151,4 +1151,4 @@ void setFrankenso0_1_joystick(engine_configuration_s *engineConfiguration) {
|
|||
__attribute__((weak)) void setBoardDefaultConfiguration() { }
|
||||
__attribute__((weak)) void setBoardConfigOverrides() { }
|
||||
|
||||
__attribute__((weak)) int setBoardMetaOutputsCount() { return 0; }
|
||||
__attribute__((weak)) int getBoardMetaOutputsCount() { return 0; }
|
||||
|
|
|
@ -97,3 +97,5 @@ extern bool isActiveConfigurationVoid;
|
|||
#endif /* EFI_ACTIVE_CONFIGURATION_IN_FLASH */
|
||||
|
||||
#define isPinOrModeChanged(pin, mode) (isConfigurationChanged(pin) || isConfigurationChanged(mode))
|
||||
|
||||
int getBoardMetaOutputsCount();
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
|
||||
#include "pch.h"
|
||||
#include "can_bench_test.h"
|
||||
#include "can_msg_tx.h"
|
||||
|
||||
#define CAN_BENCH_HEADER 0x66
|
||||
#define CAN_BENCH_GET_COUNT 0
|
||||
#define CAN_BENCH_GET_SET 1
|
||||
#define CAN_BENCH_GET_CLEAR 2
|
||||
|
||||
#if EFI_CAN_SUPPORT
|
||||
|
||||
void processCanBenchTest(const CANRxFrame& frame) {
|
||||
if (CAN_EID(frame) != CAN_ECU_HW_META) {
|
||||
return;
|
||||
}
|
||||
if (frame.data8[0] != CAN_BENCH_HEADER) {
|
||||
return;
|
||||
}
|
||||
uint8_t command = frame.data8[1];
|
||||
if (command == CAN_BENCH_GET_COUNT) {
|
||||
CanTxMessage msg(CanCategory::BENCH_TEST, CAN_ECU_HW_META + 1, 8);
|
||||
msg[0] = CAN_BENCH_HEADER;
|
||||
msg[1] = 0;
|
||||
msg[2] = getBoardMetaOutputsCount();
|
||||
|
||||
} else if (command == CAN_BENCH_GET_COUNT) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endif // EFI_CAN_SUPPORT
|
|
@ -0,0 +1,8 @@
|
|||
/**
|
||||
* file can_bench_test.h
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "can.h"
|
||||
|
||||
void processCanBenchTest(const CANRxFrame& frame);
|
|
@ -11,6 +11,7 @@
|
|||
#include "pch.h"
|
||||
|
||||
#include "rusefi_lua.h"
|
||||
#include "can_bench_test.h"
|
||||
|
||||
typedef float SCRIPT_TABLE_8x8_f32t_linear[SCRIPT_TABLE_8 * SCRIPT_TABLE_8];
|
||||
|
||||
|
@ -208,6 +209,8 @@ void processCanRxMessage(const size_t busIndex, const CANRxFrame &frame, efitick
|
|||
// todo: convert to CanListener or not?
|
||||
processCanRxImu(frame);
|
||||
|
||||
processCanBenchTest(frame);
|
||||
|
||||
processLuaCan(busIndex, frame);
|
||||
|
||||
#if EFI_CANBUS_SLAVE
|
||||
|
|
|
@ -50,6 +50,7 @@ CONTROLLERS_SRC_CPP = \
|
|||
$(CONTROLLERS_DIR)/can/obd2.cpp \
|
||||
$(CONTROLLERS_DIR)/can/can_verbose.cpp \
|
||||
$(CONTROLLERS_DIR)/can/can_rx.cpp \
|
||||
$(CONTROLLERS_DIR)/can/can_bench_test.cpp \
|
||||
$(CONTORLLERS_DIR)/can/rusefi_wideband.cpp \
|
||||
$(CONTROLLERS_DIR)/can/can_tx.cpp \
|
||||
$(CONTROLLERS_DIR)/can/can_dash.cpp \
|
||||
|
|
|
@ -12,4 +12,5 @@ enum class CanCategory : uint16_t {
|
|||
SERIAL = 4,
|
||||
WBO_SERVICE = 5,
|
||||
OBD = 6,
|
||||
BENCH_TEST = 7,
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue