为什么数据传递不过来?

2019-03-25 07:37发布

我对AD采集的数据进行1s统计,统计 完后直接由串口发往上位机,现在1s统计量也能正常统计(共6个字节),串口也能以1s间隔往上位机上传数据,但是发现串口往上位机传输的一直都是6个字节的00,也就是说统计量没有正确地输送给串口模块。我把统计量传递给串口模块的程序贴上,还有SignalTap II上看到的1s统计量截图贴上。截图上Dataout数据就是1s统计量 2B0H,可以看到在1s定时(timer1s信号)到来时,统计量也相应出现了数据,但是Dataout传递给串口的数据rData可以看到却是00,也就是没传递过来,为什么?另外,从RTL电路图上看,数据之间的传输线是连接上的,因此,问题有点疑惑。
在其它论坛也问过了,可是一直没弄好,因此发到这里再来问问。 下面是我数据传递的程序。
module control_module
(
          clk_a,RSTn,
          TX_Done_Sig,
          timer1s,
          Data_out,
          TX_En_Sig,TX_Data
);

input clk_a;
input RSTn;
input TX_Done_Sig;
input timer1s;
input [47:0] Data_out;


output TX_En_Sig;
output [47:0] TX_Data;

reg isEn;
reg [47:0] rData;

always @ ( posedge clk_a or negedge RSTn )
          begin
          if ( !RSTn )
                  begin
                          isEn <= 1'b0;
                          rData <= 0;
                  end

      else if ( TX_Done_Sig )
                  begin
                          isEn <= 1'b0;
                  end
      else if ( timer1s )   //1s定时到,统计量Data_out传递给rData用于串口传输
            begin
                  rData <= Data_out;
                  isEn <= 1'b1;
                  end

          end

assign TX_Data = rData;
assign TX_En_Sig = isEn;

endmodule

(, 下载次数: 0) 上传 点击文件名下载附件
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
360092224@qq.co
1楼-- · 2019-03-25 12:02
< / 查看波特率是否正确
hms2006
2楼-- · 2019-03-25 15:45
360092224@qq.co 发表于 2016-5-18 16:55
查看波特率是否正确

波特率绝对正确,这个都是直接利用现有模块!
5525
3楼-- · 2019-03-25 21:28
就楼主提供的信息,我有如下疑问
1. 波形上,就看到一个timer1s 的pulse, 其他TX_En_Sig, TX_Done_Sig都没看到啊,
2. RSTn  OK吗
3. timer1s的pulse 是clk_a同期的吗
4. signal tap 用的时钟是clk_a吗
hms2006
4楼-- · 2019-03-25 23:57
 精彩回答 2  元偷偷看……

一周热门 更多>