天天看點

針對例程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,

現在修改大小為6464=4k

針對例程tl-upp-saver加TCP的調試過程

在shared- config.bld 和dsp-configuro-linker.cmd 均修改SR0

原來: SR_0 (RWX) : org = 0xc2000000, len = 0x10000

現在:32k

針對例程tl-upp-saver加TCP的調試過程
針對例程tl-upp-saver加TCP的調試過程

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

針對例程tl-upp-saver加TCP的調試過程
針對例程tl-upp-saver加TCP的調試過程
針對例程tl-upp-saver加TCP的調試過程

測試結果:ARM端和PC端顯示的均為十進制的2560,對應十六進制的0a00

修改FPGA端的資料,發現ARM和PC機上顯示資料一緻,後來發現是資料特殊的原因

但是會出現FPGA資料和ARM資料不一緻的現象,遞增數不按遞增數表示了

重新在tx1基礎上更改,不改變TCP部分

tx3:恢複tx1所做的更改

shared 和dsp-configuro修改部分,

w2 : 之前傳有限組數改成一直傳,但是ARM端隻接受其中一段,保留在數組中,直接把數組傳給PC機

針對例程tl-upp-saver加TCP的調試過程

W1:目前為止最理想的配置,但仍然存在問題

FPGA端設定的如下:

針對例程tl-upp-saver加TCP的調試過程

ARM端建立的測試數組如下:(着重更改char!)

針對例程tl-upp-saver加TCP的調試過程

PC 端程式設定如下:

針對例程tl-upp-saver加TCP的調試過程

經測試發現,不管ARM端和FPGA端的資料格式如何變化,在PC端,小端列印出來的資料與ARM端列印出來的資料一緻,大端“鏡面對稱” ,

測試結果如下:

針對例程tl-upp-saver加TCP的調試過程
針對例程tl-upp-saver加TCP的調試過程
針對例程tl-upp-saver加TCP的調試過程

繼續閱讀