verilog中的1位流

verilog中的1位流,verilog,bitstream,Verilog,Bitstream,我有6个气体传感器,它们连接到我用作ADC的Arduino uno板。每个传感器的输出将是一个介于0和1023之间的数字。数据从Arduino传输到Altera FPGA进行处理 我将数字的二进制形式发送到Arduino串行数据的输出引脚,通过从FPGA接收“写入”信号,该数据将以大约10kHz 0.1ms的周期串行传输到FPGA的输入端口 串行传输后,如何在FPGA中重建原始数字?要将串行转换为并行,需要某种方法来识别序列的结束或开始。类似于以下的内容应该可以让您开始: input

我有6个气体传感器,它们连接到我用作ADC的Arduino uno板。每个传感器的输出将是一个介于0和1023之间的数字。数据从Arduino传输到Altera FPGA进行处理

我将数字的二进制形式发送到Arduino串行数据的输出引脚,通过从FPGA接收“写入”信号,该数据将以大约10kHz 0.1ms的周期串行传输到FPGA的输入端口


串行传输后,如何在FPGA中重建原始数字?

要将串行转换为并行,需要某种方法来识别序列的结束或开始。类似于以下的内容应该可以让您开始:

input            clk;
input            end_of_sequence;
input            sdata;
output reg [9:0] result;
//10 bit transmission

reg [9:0] pdata;

always @(posedge clk) begin
  // Shift serial data in
  pdata <= {pdata[8:0, sdata};
end

always @(posedge clk) begin
  if (end_of_sequence ) begin
    // at end of shifted data store the full parallel word
    result <= pdata;
  end
end