使用DMA将ADC12的数据搬移到RAM中,由于RAM空间较小,而FRAM较大,所以想把目标地址指定到FRAM
指定到RAM中的相关代码如下,经过测试没问题
uint16_t dataRecorded1[DataSize] = {0};
DMA_setDstAddress(DMA_CHANNEL_0, (uint32_t) (&dataRecorded1),DMA_DIRECTION_INCREMENT);
指定到FRAM中的相关代码如下,经过测试数据全是0,程序其它地方没有任何改动,这是为什么?
#pragma LOCATION(dataRecorded1, 0x10000);
#pragma PERSISTENT(dataRecorded1);
uint16_t dataRecorded1[DataSize] = {0};
DMA_setDstAddress(DMA_CHANNEL_0, (uint32_t) (&dataRecorded1),DMA_DIRECTION_INCREMENT);