upp怎样可以连续接收FPGA的数据 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4121|回复: 3
打印 上一主题 下一主题

upp怎样可以连续接收FPGA的数据

[复制链接]

3

主题

14

帖子

75

积分

注册会员

Rank: 2

积分
75
跳转到指定楼层
楼主
发表于 2015-5-18 09:38:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
)写了这样的一个乒乓操作:
        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数组之间不是连续的呢?感觉像是因为执行了中断处理函数耽误了时间。如果是这样改怎样解决呢



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

3

主题

14

帖子

75

积分

注册会员

Rank: 2

积分
75
推荐
 楼主| 发表于 2015-7-27 13:32:25 | 只看该作者
fish 发表于 2015-7-27 13:27
你好,我也遇到了同样的问题,请问你怎么解决的?

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

使用道具 举报

3

主题

14

帖子

75

积分

注册会员

Rank: 2

积分
75
沙发
 楼主| 发表于 2015-5-18 17:06:45 | 只看该作者
这个问题已经解决了
回复 支持 反对

使用道具 举报

1

主题

6

帖子

66

积分

注册会员

Rank: 2

积分
66
板凳
发表于 2015-7-27 13:27:10 | 只看该作者
你好,我也遇到了同样的问题,请问你怎么解决的?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-15 18:18 , Processed in 0.038965 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表