求一个FPGA大神帮个忙,帮我看一下我写的Verilog HDL程序,或者帮我写一个程序也行。感激不尽,加分。

2024-12-05 05:40:59
推荐回答(4个)
回答1:

`timescale 1ns/1nsmodule Automat(A,B,CLK,QH,QQ,Sale,Back,data_XS); input A,B,QH,QQ,CLK; output Sale,Back; output [6:0] data_XS; reg [5:0] sum; reg [3:0] XSH; reg [3:0] XSL; wire [6:0] data_XS; reg Sale,Back; reg D; wire [3:0] data; wire CLK2; Clk D1(CLK2); SEL2X1 D2(XSH,XSL,CLK2,data); bin47seg D3(data,data_XS); initial begin sum=0; end always@(posedge A or posedge B) begin #1 if(A) sum=sum+5; if(B) sum=sum+10; end always@(posedge CLK) begin XSH=sum/10; XSL=sum%10; #1 if(sum<15) D=0; else D=1; end always@(posedge QH) begin if(D) begin Sale=1; sum=sum-10; #5 Sale=0; end end always@(posedge QQ) begin sum=0; Back=1; endendmodulemodule bin47seg(data_in,data_out);input[3:0] data_in;output[6:0] data_out;reg [6:0] data_out;always@(data_in)case(data_in) 4'b0000:data_out=7'b1000000; 4'b0001:data_out=7'b1111001; 4'b0010:data_out=7'b0100100; 4'b0011:data_out=7'b0110000; 4'b0100:data_out=7'b0011001; 4'b0101:data_out=7'b0010010; 4'b0110:data_out=7'b0000010; 4'b0111:data_out=7'b1111000; 4'b1000:data_out=7'b0000000; 4'b1001:data_out=7'b0011000; 4'b1010:data_out=7'b0001000; 4'b1011:data_out=7'b0000011; 4'b1100:data_out=7'b0100111; 4'b1101:data_out=7'b0100001; 4'b1110:data_out=7'b0000110; 4'b1111:data_out=7'b0001110; default: data_out=7'b1111111;endcaseendmodulemodule SEL2X1(data1,data2,Sel,data_C); input [3:0] data1; input [3:0] data2; input Sel; output [3:0] data_C; reg [3:0] data_C; always@(Sel) begin if(Sel==1) data_C=data1; if(Sel==0) data_C=data2; endendmodulemodule Clk(CLK); output CLK; reg CLK; initial begin CLK=0; forever begin #2 CLK=1; #2; CLK=0; end endendmodule

回答2:

你这要求不是很快就能搞定的
要搞uart
要搞数据协议
要写fifo
还要操作AD

烦的很呢

自己慢慢摸索吗

要是有人写了个和你一样的程序,就当我没有说

回答3:

我已加你,联系吧

回答4:

不知道你的问题解决了没?

我是在我们团队的求助里看到你的问题的,很显然你选错了团队了,因为我们属于烦恼分类的,我们擅长的是情感情绪方面的问题,对于编程一窍不通啊。

不过,如果你有什么感情上的困扰,我们可是很乐意帮助你哦!