微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于FPGA+USB用DMA传输的问题,新手求解答

关于FPGA+USB用DMA传输的问题,新手求解答

时间:10-02 整理:3721RD 点击:
最近拿到一个开发板,这是NIOSII里面的main.c程序,实现了FPGA通过USB芯片与上位机通讯,可是我不太明白啊,上位机发送的数据在哪里赋值呢,上位机是怎么发送数据的呢?
还有,这个句子,if(Write(&o_usbdma,usbDataBuf)>0) return 0;为什么是>0,而不是 0) return 0;这两个语句为什么目标地址和源地址都是同一个usbDataBuf?不解啊
我现在想改一下这个程序,变成发送一个数据,然后再存到SDRAM里面。
最近被这个问题困扰多日,这个要这么改,求解答,感激不尽

#include
#include
#include "string.h"
#include
#include "../inc/IO.h"
#include "../inc/usb.h"
unsigned short usbDataBuf[USB_BUF_MAX_SIZE];  
int main()
{
    int n;
    n = 0;
    pReg_LED->data = 0;
//    memset(usbDataBuf,0,USB_BUF_MAX_SIZE *2);
    alt_dma_txchan o_usbdma;
    alt_dma_rxchan i_usbdma;
    memset(usbDataBuf,0,USB_BUF_MAX_SIZE *2);  
    if(Initial_InDMA(&i_usbdma) 0) return 0;
            while(!IsOutDone());
        }
        n++;
        if(n>0x3ffff)
        {
            pReg_LED->data = pReg_LED->data + 1;
            n=0;
        }

    };
  return 0;
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top