Upcoming maintenance
Dear Customers and Partners.
This website will be undergoing scheduled maintenance on June 14, 2023. Please be aware there may be disruption to the developer portal website and associated services during the scheduled maintenance period.
This upgrade is essential to ensure the continued performance, reliability, and security of Developer World.
We apologize for any inconvenience.
How to receive the FFTdata from subcore?
-
Hi there,
I modified from the examples, but I hope to find a good way to receive the FFT data from the subcore.For example, for the 'Highpassband' example, I find the code:
'memcpy(&out_buffer[pos][0], pDst, cnt * sizeof(q15_t) * g_channel);result[pos].buffer = (void*)MP.Virt2Phys(&out_buffer[pos][0]);'
however, there is an error when I write q15_t* buffer in the main core. It looks like q15_t* is only used in the sub-core.
I then try to use the general way like:
FFT.get(result[pos].fftResult, i);
ret = MP.Send(rcvid, &result[pos], 0);struct Result {
Result() {
clear();
}
float fftResult[FFT_LEN];void clear() {
for (int i = 0; i < MAX_CHANNEL_NUM; i++) {
found[i] = false;
}
// Clear the FFT result array
for (int i = 0; i < FFT_LEN; i++) {
fftResult[i] = 0;
}
}But it can receive a frame data, and an error happens:
up_assert: Assertion failed at file:chip/cxd56_icc.c line: 229 task: Idle Task
Could you please guide me or show me an efficiency way to receive the FFT data from the sub-core?
Thanks very much.