初始化代码如下:
uint8_t *ptempData;
uint16_t DataSize=256;
void DMA_Init()
{
ptempData = malloc(DataSize);
__data16_write_addr((unsigned short) &DMA0SA,(unsigned long) &ADC12MEM0);// Source block address
__data16_write_addr((unsigned short) &DMA0DA,(unsigned long) ptempData); // Destination single address
DMA0CTL &= ~DMAIFG;
DMA0SZ = DataSize/2; // Block size
DMACTL0 |= DMA0TSEL_26;
DMA0CTL = DMADT_4 | DMASRCINCR_0 | DMADSTINCR_3 | DMAIE |DMAEN;
}
当DataSize=256时,程序正常运行,初始化没问题,但是当DataSize=512时,程序就跑飞了,中断响应函数也无法进入,不知道程序此时是什么状态?