Skip to main content
Senior III
October 21, 2025
Question

UtilitySequencer not setting an event

  • October 21, 2025
  • 0 replies
  • 182 views

I'm trying to set up the Utility Sequencer to run an acquisition task followed by an signal processing task, see code snippets below.

When I look at the serial monitor, I see the start acquisition task message but then it hangs waiting for EVENT0

So even though I've set EVENT0  in Custom_APP_Init() it looks to me that the event is not in fact set.

What am I missing here?

Edit, I commented out the SetTask line as I realized I hadn't finished setting up before the sequencer sets off but now no tasks get set, so I dont get the start acquisition task message any more.

#define EVENT0 1<<0
#define EVENT1	 1<<1

void Custom_APP_Init(void)
{
 /* USER CODE BEGIN CUSTOM_APP_Init */

	UTIL_SEQ_RegTask(1<<CFG_TASK_SENSOR_UPDATE_ID, UTIL_SEQ_RFU, sensor_update);
	UTIL_SEQ_RegTask(2<<CFG_TASK_FFT_ID, UTIL_SEQ_RFU, do_fft);
	UTIL_SEQ_SetEvt(EVENT0);
	// UTIL_SEQ_SetTask(1<<CFG_TASK_SENSOR_UPDATE_ID, 0);

 /* USER CODE END CUSTOM_APP_Init */
 return;
}

void sensor_update(void)
{
	printf("start acquisition task\n\r");
	UTIL_SEQ_WaitEvt(EVENT0);
 	printf("In acquisition task\n\r");

	/* DAQ code */

	UTIL_SEQ_ClrEvt(EVENT0);
	UTIL_SEQ_SetEvt(EVENT1);
}


void do_fft(void)
{
	UTIL_SEQ_WaitEvt(EVENT1);

	/* FTT code */

	UTIL_SEQ_ClrEvt(EVENT1);
	UTIL_SEQ_SetEvt(EVENT0);
}

 

UPDATE: