请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSPM0G3507 主题:SysConfig 中讨论的其他器件
工具/软件:
ADC DMA 设置为填充 mem0中的缓冲区(单字节)。
ADC 在外部触发、设置正常、为8位。
我会执行单个外部 ADC 触发器-这可以在我的逻辑分析仪上看到。
如果我看看第一个传输似乎有三字节传输到我的缓冲区!
缓冲区初始化为零。
有任何线索?
//配置 ADC DMA
DL_DMA_disableChannel (dma、ADC0_CHAN_ID);
DL_DMA_disableChannel (DMA、ADC1_CHAN_ID);
DL_ADC12_disableDMA (ADC12_0_INST);
DL_ADC12_disableDMA (ADC12_1_INST);
DL_ADC12_disableDMATOR (ADC12_0_INST、(DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_ADC12_disableDMATOR (ADC12_1_INST、(DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_ADC12_clearDMATriggerStatus (ADC12_0_INST、DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_ADC12_clearDMATriggerStatus (ADC12_1_INST、DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_DMA_setSrcAddr (DMA、ADC0_CHAN_ID、DL_ADC12_getMemResultAddress (ADC12_0_INST、DL_ADC12_MEM_IDX_0));
DL_DMA_setSrcAddr (DMA、ADC1_CHAN_ID、DL_ADC12_getMemResultAddress (ADC12_1_INST、DL_ADC12_MEM_IDX_0));
DL_DMA_setDestAddr (DMA、ADC0_CHAN_ID、(unsigned int) ptr8_buffer0);
DL_DMA_setDestAddr (DMA、ADC1_CHAN_ID、(unsigned int) ptr8_buffer1);
DL_DMA_setTransferSize (DMA、ADC0_CHAN_ID、65);
DL_DMA_setTransferSize (DMA、ADC1_CHAN_ID、65);
// ADC DMA 启用
DL_ADC12_clearDMATriggerStatus (ADC12_0_INST、DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_ADC12_clearDMATriggerStatus (ADC12_1_INST、DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_ADC12_enableDMATOR (ADC12_0_INST、(DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_ADC12_enableDMATOR (ADC12_1_INST、(DL_ADC12_DMA_MEM0_RESULT_LOADED);
DL_DMA_setDestAddr (DMA、ADC0_CHAN_ID、(unsigned int) ptr8_buffer0);
DL_DMA_setDestAddr (DMA、ADC1_CHAN_ID、(unsigned int) ptr8_buffer1);
DL_DMA_enableChannel (DMA、ADC0_CHAN_ID);
DL_DMA_enableChannel (DMA、ADC1_CHAN_ID);
DL_ADC12_enableDMA (ADC12_0_INST);
DL_ADC12_enableDMA (ADC12_1_INST);

