auto-sync
This commit is contained in:
parent
0e08397497
commit
d5309495b1
|
@ -333,6 +333,60 @@ static void showFuelInfo(Engine *engine) {
|
|||
|
||||
static THD_WORKING_AREA(lcdThreadStack, UTILITY_THREAD_STACK_SIZE);
|
||||
|
||||
/**
|
||||
* blinking thread to show that we are alive
|
||||
*/
|
||||
static THD_WORKING_AREA(comBlinkingStack, UTILITY_THREAD_STACK_SIZE);
|
||||
|
||||
/**
|
||||
* error thread to show error condition (blinking LED means non-fatal error)
|
||||
*/
|
||||
static THD_WORKING_AREA(errBlinkingStack, UTILITY_THREAD_STACK_SIZE);
|
||||
|
||||
#if EFI_PROD_CODE || defined(__DOXYGEN__)
|
||||
static void comBlinkingThread(void *arg) {
|
||||
(void) arg;
|
||||
chRegSetThreadName("communication blinking");
|
||||
while (TRUE) {
|
||||
int delay;
|
||||
|
||||
if (getNeedToWriteConfiguration()) {
|
||||
delay = isConsoleReady() ? 200 : 66;
|
||||
} else {
|
||||
delay = isConsoleReady() ? 100 : 33;
|
||||
}
|
||||
|
||||
setOutputPinValue(LED_COMMUNICATION_1, 0);
|
||||
setOutputPinValue(LED_EXT_1, 1);
|
||||
// setOutputPinValue(LED_EXT_2, 1);
|
||||
// setOutputPinValue(LED_EXT_3, 1);
|
||||
chThdSleepMilliseconds(delay);
|
||||
|
||||
setOutputPinValue(LED_COMMUNICATION_1, 1);
|
||||
setOutputPinValue(LED_EXT_1, 0);
|
||||
// setOutputPinValue(LED_EXT_2, 0);
|
||||
// setOutputPinValue(LED_EXT_3, 0);
|
||||
chThdSleepMilliseconds(delay);
|
||||
}
|
||||
}
|
||||
|
||||
static void errBlinkingThread(void *arg) {
|
||||
(void) arg;
|
||||
chRegSetThreadName("err blinking");
|
||||
#if EFI_ENGINE_CONTROL || defined(__DOXYGEN__)
|
||||
while (TRUE) {
|
||||
int delay = 33;
|
||||
if (isTriggerDecoderError() || isIgnitionTimingError())
|
||||
setOutputPinValue(LED_WARNING, 1);
|
||||
chThdSleepMilliseconds(delay);
|
||||
setOutputPinValue(LED_WARNING, 0);
|
||||
chThdSleepMilliseconds(delay);
|
||||
}
|
||||
#endif /* EFI_ENGINE_CONTROL */
|
||||
}
|
||||
#endif /* EFI_PROD_CODE */
|
||||
|
||||
|
||||
static void lcdThread(Engine *engine) {
|
||||
chRegSetThreadName("lcd");
|
||||
while (true) {
|
||||
|
@ -438,6 +492,10 @@ void startStatusThreads(Engine *engine) {
|
|||
// todo: refactoring needed, this file should probably be split into pieces
|
||||
chThdCreateStatic(lcdThreadStack, sizeof(lcdThreadStack), NORMALPRIO, (tfunc_t) lcdThread, engine);
|
||||
chThdCreateStatic(tsThreadStack, sizeof(tsThreadStack), NORMALPRIO, (tfunc_t) tsStatusThread, engine);
|
||||
#if EFI_PROD_CODE || defined(__DOXYGEN__)
|
||||
chThdCreateStatic(comBlinkingStack, sizeof(comBlinkingStack), NORMALPRIO, (tfunc_t) comBlinkingThread, NULL);
|
||||
chThdCreateStatic(errBlinkingStack, sizeof(errBlinkingStack), NORMALPRIO, (tfunc_t) errBlinkingThread, NULL);
|
||||
#endif /* EFI_PROD_CODE */
|
||||
}
|
||||
|
||||
void setFullLog(int value) {
|
||||
|
|
|
@ -35,17 +35,15 @@ void initMainEventListener(Engine *engine, engine_configuration2_s *engineConfig
|
|||
void onTriggerEvent(trigger_event_e ckpSignalType, uint32_t eventIndex, MainTriggerCallback *mainTriggerCallback);
|
||||
#endif
|
||||
|
||||
int isIgnitionTimingError(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
|
||||
void showMainHistogram(void);
|
||||
void onEveryMillisecondTimerSignal(void);
|
||||
int isIgnitionTimingError(void);
|
||||
|
||||
float getFuel(int rpm, float key);
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include "pwm_generator.h"
|
||||
#include "pwm_generator_logic.h"
|
||||
|
||||
#if EFI_ELECTRONIC_THROTTLE_BODY
|
||||
#if EFI_ELECTRONIC_THROTTLE_BODY || defined(__DOXYGEN__)
|
||||
|
||||
static Logging logger;
|
||||
/**
|
||||
|
|
|
@ -57,7 +57,7 @@ void addTriggerEventListener(ShaftPositionListener listener, const char *name, v
|
|||
triggerCentral.addEventListener(listener, name, arg);
|
||||
}
|
||||
|
||||
#if EFI_PROD_CODE || EFI_SIMULATOR
|
||||
#if (EFI_PROD_CODE || EFI_SIMULATOR) || defined(__DOXYGEN__)
|
||||
extern configuration_s *configuration;
|
||||
|
||||
void hwHandleShaftSignal(trigger_event_e signal) {
|
||||
|
@ -189,7 +189,7 @@ static void triggerShapeInfo(Engine *engine) {
|
|||
}
|
||||
|
||||
static void triggerInfo(Engine *engine) {
|
||||
#if EFI_PROD_CODE || EFI_SIMULATOR
|
||||
#if (EFI_PROD_CODE || EFI_SIMULATOR) || defined(__DOXYGEN__)
|
||||
scheduleMsg(&logger, "Template %s/%d trigger %d", getConfigurationName(engineConfiguration->engineType),
|
||||
engineConfiguration->engineType, engineConfiguration->triggerConfig.triggerType);
|
||||
|
||||
|
@ -204,6 +204,8 @@ static void triggerInfo(Engine *engine) {
|
|||
boolToString(engineConfiguration->needSecondTriggerInput));
|
||||
scheduleMsg(&logger, "expected duty #0=%f/#1=%f", engineConfiguration2->triggerShape.dutyCycle[0],
|
||||
engineConfiguration2->triggerShape.dutyCycle[1]);
|
||||
|
||||
scheduleMsg(&logger, "isError %d", isTriggerDecoderError());
|
||||
#endif
|
||||
|
||||
#if EFI_PROD_CODE
|
||||
|
|
|
@ -82,15 +82,6 @@ uint32_t findTriggerZeroEventIndex(trigger_shape_s * shape, trigger_config_s con
|
|||
void initializeTriggerShape(Logging *logger, engine_configuration_s const *engineConfiguration, engine_configuration2_s *engineConfiguration2);
|
||||
void initTriggerDecoder(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
int isTriggerDecoderError(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* TRIGGER_DECODER_H_ */
|
||||
|
|
|
@ -34,16 +34,6 @@ static GPIO_TypeDef *PORTS[] = { GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG
|
|||
|
||||
static pin_output_mode_e DEFAULT_OUTPUT = OM_DEFAULT;
|
||||
|
||||
/**
|
||||
* blinking thread to show that we are alive
|
||||
*/
|
||||
static THD_WORKING_AREA(comBlinkingStack, UTILITY_THREAD_STACK_SIZE);
|
||||
|
||||
/**
|
||||
* error thread to show error condition (blinking LED means non-fatal error)
|
||||
*/
|
||||
static THD_WORKING_AREA(errBlinkingStack, UTILITY_THREAD_STACK_SIZE);
|
||||
|
||||
void turnOutputPinOn(io_pin_e pin) {
|
||||
setOutputPinValue(pin, TRUE);
|
||||
}
|
||||
|
@ -64,48 +54,6 @@ void setDefaultPinState(io_pin_e pin, pin_output_mode_e *outputMode) {
|
|||
setOutputPinValue(pin, FALSE); // initial state
|
||||
}
|
||||
|
||||
static void comBlinkingThread(void *arg) {
|
||||
(void) arg;
|
||||
chRegSetThreadName("communication blinking");
|
||||
while (TRUE) {
|
||||
int delay;
|
||||
if (getNeedToWriteConfiguration()) {
|
||||
delay = isConsoleReady() ? 200 : 66;
|
||||
} else {
|
||||
delay = isConsoleReady() ? 100 : 33;
|
||||
}
|
||||
|
||||
setOutputPinValue(LED_COMMUNICATION_1, 0);
|
||||
setOutputPinValue(LED_EXT_1, 1);
|
||||
// setOutputPinValue(LED_EXT_2, 1);
|
||||
// setOutputPinValue(LED_EXT_3, 1);
|
||||
chThdSleepMilliseconds(delay);
|
||||
|
||||
setOutputPinValue(LED_COMMUNICATION_1, 1);
|
||||
setOutputPinValue(LED_EXT_1, 0);
|
||||
// setOutputPinValue(LED_EXT_2, 0);
|
||||
// setOutputPinValue(LED_EXT_3, 0);
|
||||
chThdSleepMilliseconds(delay);
|
||||
}
|
||||
}
|
||||
|
||||
// todo: fix this, should be a proper declaration in a .h file
|
||||
int isTriggerDecoderError(void);
|
||||
|
||||
static void errBlinkingThread(void *arg) {
|
||||
(void) arg;
|
||||
chRegSetThreadName("err blinking");
|
||||
#if EFI_ENGINE_CONTROL
|
||||
while (TRUE) {
|
||||
int delay = 33;
|
||||
if (isTriggerDecoderError() || isIgnitionTimingError())
|
||||
setOutputPinValue(LED_WARNING, 1);
|
||||
chThdSleepMilliseconds(delay);
|
||||
setOutputPinValue(LED_WARNING, 0);
|
||||
chThdSleepMilliseconds(delay);
|
||||
}
|
||||
#endif /* EFI_ENGINE_CONTROL */
|
||||
}
|
||||
|
||||
static void outputPinRegisterExt(const char *msg, io_pin_e ioPin, GPIO_TypeDef *port, uint32_t pin,
|
||||
pin_output_mode_e *outputMode) {
|
||||
|
@ -253,8 +201,5 @@ void initOutputPins(void) {
|
|||
ledRegister(LED_HUGE_20, GPIOE, 1);
|
||||
*/
|
||||
|
||||
chThdCreateStatic(comBlinkingStack, sizeof(comBlinkingStack), NORMALPRIO, (tfunc_t) comBlinkingThread, NULL);
|
||||
chThdCreateStatic(errBlinkingStack, sizeof(errBlinkingStack), NORMALPRIO, (tfunc_t) errBlinkingThread, NULL);
|
||||
|
||||
addConsoleActionS("get_pin_value", getPinValue);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue