Cannot start 2 tasks with freeRTOS on iMXRT685-AUD-EVK

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Cannot start 2 tasks with freeRTOS on iMXRT685-AUD-EVK

696 次查看
MrRv
Contributor II

Hello, 

I am interested in creating a pair of processes (one on the CPU, one on the DSP) such that audio received from the PC via USB and audio received from the DMic connected to the board are sent together (as a 9-channel audio buffer) to the DSP process viad IPC. There, the audio will be processed, and sent back to the CPU process, where it will be sent to the PC via USB.

For communication with the DSP via IPC, I have created 2 tasks - one to handle receiving and processing, and one to prepare and send the audio data, as shown here:

MrRv_0-1673179998621.png

I created the tasks using the following code:

 

MrRv_2-1673180129921.png

However, when running the code with breakpoints in both task functions (on the first line inside the loop to ensure no functions execute before stopping), the program does not stop at either breakpoint, and the device is not recognized by the PC as a composite audio device.

When I run the program with only one created task (regardless of which one), the program stops at the relevant breakpoint and the device is recognized as a composite audio device and works correctly.

What needs to be done in order to allow running 2 tasks as intended?

 

Thanks in advance!

标签 (2)
标记 (1)
0 项奖励
回复
2 回复数

687 次查看
jingpan
NXP TechSupport
NXP TechSupport

Hi @MrRv ,

It seems there isn't special requirement or settings need to be done. I think it's a software problem. You can refer to MU and SEMA42 demos in SDK.

 

Regards,

Jing

0 项奖励
回复

672 次查看
MrRv
Contributor II
Hello Jing,
Thanks for the answer.
The problem was that the heap size in the FreeRTOSConfig.h file was too small.
0 项奖励
回复