针对例程tl-upp-saver加TCP的调试过程


tx1: 不增加TCP部分,传输有限数据

FPGA部分:
FPGA_Demo\Demo1\my_upp
初始值为2,触发后0-1024递增,
增加count变量控制UPP上传数组的个数:count<8’d66
DSP部分:(主要修改upp接收的内存大小)
在文件 shared-protocol.h,原来是641024=64k,
现在修改大小为64
64=4k
在这里插入图片描述
在shared- config.bld 和dsp-configuro-linker.cmd 均修改SR0
原来: SR_0 (RWX) : org = 0xc2000000, len = 0x10000
现在:32k在这里插入图片描述
在这里插入图片描述

ARM部分:
删除了关于filesaver的部分, 在get upp data 之后增加了测试数组,用于遍历显示接收到的数据

//创建一个测试数组,遍历显示收到的数 
      int tst[SR_BUFFER_SIZE];
      int k =0;
      for(k=0;k<SR_BUFFER_SIZE;k++)
      {
      	tst[k] = *(data+k);
      	printf("tst[%d]= %d\n",k,tst[k]);
      }

测试结果:遍历数组为乱码,只显示4K
更改,改成FPGA数据固定的数据 FPGA传输10的时候,到ARM端打印出来是2560,十进制转化为十六进制,2560对应a00.

tx2: 加入TCP

第一步,只配置TCP,不收发,可以实现tx1的功能
第二步,加入收发,MATLAB显示0,10,0,0
更改:tx2.1
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
测试结果:ARM端和PC端显示的均为十进制的2560,对应十六进制的0a00
修改FPGA端的数据,发现ARM和PC机上显示数据一致,后来发现是数据特殊的原因
但是会出现FPGA数据和ARM数据不一致的现象,递增数不按递增数表示了
重新在tx1基础上更改,不改变TCP部分

tx3:恢复tx1所做的更改

shared 和dsp-configuro修改部分,

w2 : 之前传有限组数改成一直传,但是ARM端只接受其中一段,保留在数组中,直接把数组传给PC机
在这里插入图片描述
W1:目前为止最理想的配置,但仍然存在问题
FPGA端设置的如下:
在这里插入图片描述

ARM端创建的测试数组如下:(着重更改char!)
在这里插入图片描述
PC 端程序设置如下:
在这里插入图片描述
经测试发现,不管ARM端和FPGA端的数据格式如何变化,在PC端,小端打印出来的数据与ARM端打印出来的数据一致,大端“镜面对称” ,
测试结果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值