ZYNQ.DMA基本用法

时间:2018-10-19 13:02:23   收藏:0   阅读:1676

DMA环路测试

vivadoblock

技术分享图片

zynq7 + dma +fifo

sdk 中可以导入 demo

技术分享图片

demo 中 默认都是 一个字节8bit数据 的测试程序。

如果是其他长度的数据,不仅要修改数据长度

    u16 *TxBufferPtr;
    u16 *RxBufferPtr;
    u16 Value;

    TxBufferPtr = (u16 *)TX_BUFFER_BASE ;
    RxBufferPtr = (u16 *)RX_BUFFER_BASE;

还要注意修改下面几个函数

Xil_DCacheFlushRange((u32)TxBufferPtr, MAX_PKT_LEN*sizeof(u16));

XAxiDma_SimpleTransfer(&AxiDma,(u32) RxBufferPtr,
                    MAX_PKT_LEN*sizeof(u16), XAXIDMA_DEVICE_TO_DMA);

XAxiDma_SimpleTransfer(&AxiDma,(u32) TxBufferPtr,
                    MAX_PKT_LEN*sizeof(u16), XAXIDMA_DMA_TO_DEVICE);

Xil_DCacheInvalidateRange((u32)RxBufferPtr, MAX_PKT_LEN*sizeof(u16));

这个函数的length都是指 字节 bytes 长度

 //*********************  2018/10/19  *************************

原文:https://www.cnblogs.com/protogenoi/p/9584988.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!