S32K312

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

S32K312

1,618 次查看
严雷
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.

标签 (1)
0 项奖励
回复
1 回复

1,586 次查看
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 项奖励
回复