2021-10-30 18:45:52 -07:00
|
|
|
#pragma once
|
|
|
|
#include "rusefi_types.h"
|
|
|
|
struct tps_accel_state_s {
|
2023-03-27 01:38:48 -07:00
|
|
|
// offset 0
|
2021-10-30 19:03:19 -07:00
|
|
|
percent_t tpsFrom = (percent_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 4
|
2021-10-30 19:03:19 -07:00
|
|
|
percent_t tpsTo = (percent_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 8
|
2021-10-30 19:03:19 -07:00
|
|
|
percent_t deltaTps = (percent_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 12
|
2021-10-30 19:03:19 -07:00
|
|
|
floatms_t extraFuel = (floatms_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 16
|
2021-10-30 19:03:19 -07:00
|
|
|
float valueFromTable = (float)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 0
|
2021-12-01 21:04:17 -08:00
|
|
|
bool isAboveAccelThreshold : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 1
|
2021-12-01 21:04:17 -08:00
|
|
|
bool isBelowDecelThreshold : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// Accel: reset time
|
|
|
|
// offset 20 bit 2
|
2021-12-01 21:04:17 -08:00
|
|
|
bool isTimeToResetAccumulator : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 3
|
2021-12-01 21:04:17 -08:00
|
|
|
bool isFractionalEnrichment : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// Accel: below threshold
|
|
|
|
// offset 20 bit 4
|
2021-12-01 21:04:17 -08:00
|
|
|
bool belowEpsilon : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// Accel: too short
|
|
|
|
// offset 20 bit 5
|
2022-01-02 10:57:58 -08:00
|
|
|
bool tooShort : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 6
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_6 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 7
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_7 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 8
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_8 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 9
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_9 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 10
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_10 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 11
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_11 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 12
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_12 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 13
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_13 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 14
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_14 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 15
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_15 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 16
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_16 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 17
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_17 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 18
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_18 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 19
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_19 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 20
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_20 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 21
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_21 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 22
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_22 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 23
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_23 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 24
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_24 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 25
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_25 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 26
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_26 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 27
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_27 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 28
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_28 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 29
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_29 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 30
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_30 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 20 bit 31
|
2022-01-02 10:57:58 -08:00
|
|
|
bool unusedBit_11_31 : 1 {};
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 24
|
2021-10-30 19:03:19 -07:00
|
|
|
float fractionalInjFuel = (float)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 28
|
2021-10-30 19:03:19 -07:00
|
|
|
floatms_t accumulatedValue = (floatms_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 32
|
2021-10-30 19:03:19 -07:00
|
|
|
floatms_t maxExtraPerCycle = (floatms_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 36
|
2021-10-30 19:03:19 -07:00
|
|
|
floatms_t maxExtraPerPeriod = (floatms_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 40
|
2021-10-30 19:03:19 -07:00
|
|
|
floatms_t maxInjectedPerPeriod = (floatms_t)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
|
|
|
// offset 44
|
2021-10-30 19:03:19 -07:00
|
|
|
int cycleCnt = (int)0;
|
2023-03-27 01:38:48 -07:00
|
|
|
|
2021-10-30 18:45:52 -07:00
|
|
|
};
|
2022-04-17 13:30:07 -07:00
|
|
|
static_assert(sizeof(tps_accel_state_s) == 48);
|
2021-10-30 18:45:52 -07:00
|
|
|
|