First Attempt to print data async, fields not working

This commit is contained in:
Emanuele Trabattoni
2026-03-31 13:07:02 +02:00
parent 27ad612844
commit 6072a603df
6 changed files with 134 additions and 52 deletions

View File

@@ -11,9 +11,11 @@ void trig_isr(void *arg)
// exit if invalid args
if (!arg)
return;
// FOR TESTING ONLY
digitalWrite(POT_A_CS, HIGH);
BaseType_t xHigherPriorityTaskWoken = pdFALSE;
isrParams *params = (isrParams*)arg;
isrParams *params = (isrParams *)arg;
ignitionBoxStatus *box = params->ign_stat;
TaskHandle_t task_handle = *params->rt_handle_ptr;
@@ -28,10 +30,12 @@ void trig_isr(void *arg)
switch (params->flag)
{
case TRIG_FLAG_12P:
case TRIG_FLAG_12N:
box->coils12.trig_time = time_us;
xTaskNotifyFromISR(task_handle, params->flag, eSetValueWithOverwrite, &xHigherPriorityTaskWoken);
break;
case TRIG_FLAG_34P:
case TRIG_FLAG_34N:
box->coils34.trig_time = time_us;
xTaskNotifyFromISR(task_handle, params->flag, eSetValueWithOverwrite, &xHigherPriorityTaskWoken);
break;
@@ -48,6 +52,8 @@ void trig_isr(void *arg)
default:
break;
}
// FOR TESTING ONLY
digitalWrite(POT_A_CS, LOW);
if (xHigherPriorityTaskWoken)
portYIELD_FROM_ISR();