嵌入式开发者社区

标题: upp怎样可以连续接收FPGA的数据 [打印本页]

作者: 叶子wy    时间: 2015-5-18 09:38
标题: upp怎样可以连续接收FPGA的数据
)写了这样的一个乒乓操作:
        while(pingpong_buffer_num <9){
        /*启动UPP DMA传输*/
        UARTPuts("ping\n",-2);
        upp_reg_hdl->UPID0 = (Uint32)upp_buffer_test[pingpong_buffer_num];
        upp_reg_hdl->UPID1 = ((Uint32)upp_line_count << 16) | (Uint32)upp_line_size*sizeof(Uint16);
        upp_reg_hdl->UPID2 = (Uint32)upp_line_offset*sizeof(upp_buffer_ping[0]);

        while((upp_reg_hdl->UPIS2 & CSL_UPP_UPIS2_PEND_MASK) == 2){UARTPuts("p\n",-2);};

        UARTPuts("ping\n",-2);
        pingpong_buffer_num = ++pingpong_buffer_num;
        upp_reg_hdl->UPID0 = (Uint32)upp_buffer_test[pingpong_buffer_num];
        upp_reg_hdl->UPID1 = ((Uint32)upp_line_count << 16) | (Uint32)upp_line_size*sizeof(Uint16);
        upp_reg_hdl->UPID2 = (Uint32)upp_line_offset*sizeof(upp_buffer_ping[0]);

        while(upp_reg_hdl->UPIS2 & CSL_UPP_UPIS2_PEND_MASK == 2){UARTPuts("g\n",-2);};、        pingpong_buffer_num = ++pingpong_buffer_num;
        }
接收FPGA发过来的连续数据(0-65535,循环)。为什么接收到的数据每个test数组之间不是连续的呢?感觉像是因为执行了中断处理函数耽误了时间。如果是这样改怎样解决呢




作者: 叶子wy    时间: 2015-5-18 17:06
这个问题已经解决了
作者: fish    时间: 2015-7-27 13:27
你好,我也遇到了同样的问题,请问你怎么解决的?
作者: 叶子wy    时间: 2015-7-27 13:32
fish 发表于 2015-7-27 13:27
你好,我也遇到了同样的问题,请问你怎么解决的?

改大每一帧数据就好了,这样的问题建议你到TI论坛上找找答案,我在那里也有提问,有人帮忙解答了。




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4