嵌入式软件设计(DMA数据搬运)
Posted 费晓行
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式软件设计(DMA数据搬运)相关的知识,希望对你有一定的参考价值。
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
在MCU里面,数据搬运有两种方法,一种是CPU拷贝,一种是DMA搬运。因为MCU本身没有MMU,所以直接输入源地址、目的地址、大小,就可以实现dma的数据搬运。当然DMA完成的时候,有两种方式告诉软件,一种是BIT置位,一种是中断。今天我们使用的就是BIT位查询的方式。
1、查看main函数
int main(void)
uint8_t TransferStatus;
LED_GPIO_Config();
LED_PURPLE;
Delay(0xFFFFFF);
DMA_Config();
while(DMA_GetFlagStatus(DMA_FLAG_TC)==RESET)
TransferStatus=Buffercmp(aSRC_Const_Buffer, aDST_Buffer, BUFFER_SIZE);
if(TransferStatus==0)
LED_RED;
else
LED_BLUE;
while (1)
简单阅读下代码,有三个函数值得注意,一个是DMA_Config函数,一个是DMA_GetFlagStatus函数,最后一个是Buffercmp函数。很明显,第一个函数是配置,第二个函数是判
以上是关于嵌入式软件设计(DMA数据搬运)的主要内容,如果未能解决你的问题,请参考以下文章