S32K312

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32K312

1,614 Views
严雷
Contributor I

我现在在使用S32K312开发,在使用DMA时遇到一些问题:

DMA在正常传输数据,但当我修改DMA源地址数据时,传输到目的地址的数据依旧是原先的值。

但是我发现在我改变DMA源地址数据后手动调用sys_m7_cache_clean()后,传输到目的地址的数据是更新值。

我想知道是不是我的工程有什么地方配置需要调整。

I am currently developing with S32K312 and am having some problems with DMA:

DMA is transmitting data normally, but when I modify the DMA source address data, the data transferred to the destination address is still the original value.

But I found that after I manually called sys_m7_cache_clean() after changing the DMA source address data, the data transferred to the destination address was the updated value.

I would like to know if there is any configuration of my project that needs to be adjusted.

Labels (1)
0 Kudos
Reply
1 Reply

1,582 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

try to put your buffers into non-cacheable area. Not sure of the code you are using, in RTD below can be used...

__attribute__(( aligned(32) )) uint32_t buffer[BUFFER_SIZE] __attribute__ ((section (".mcal_bss_no_cacheable")));

Hope it helps.

BR, Petr

0 Kudos
Reply