[問題] verilog基本簡單的updown counter
module Counter(clk,rst,slect,out);
input [1:0]slect;
input clk,rst;
output [9:0]out;
reg [9:0]out;
always@(slect)
begin
if(slect==2'd0)
always@(posedge clk)
begin
if(rst)
begin
out=10'd0;
end
else if(out==10'd1023)
begin
out=10'd0;
end
else
begin
out=out+1'd1;
end
end
if(slect==2'd1)
always@(posedge clk)
begin
if(rst)
begin
out=10'd1023;
end
else if(out==10'd0)
begin
out=10'd1023;
end
else
begin
out=out-1'd1;
end
end
if(slect==2'd3)
always@(posedge clk)
begin
if(rst)
begin
out<=10'd0;
end
else if(out!=10'd1023)
out<=out+1'd1;
end
else(out!=10'd0)
out<=out-1'd1;
end
end
end
end module
條件我假設是可以讓他
1.往上數到1023
2.往下數到0
3.0~1023~0這樣數
可是compile不過
我是新手一直苦無解答QQ
不知道有沒有人能幫幫我
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.131.177
推
08/05 18:36, , 1F
08/05 18:36, 1F
→
08/05 18:48, , 2F
08/05 18:48, 2F
→
08/05 18:48, , 3F
08/05 18:48, 3F
推
08/09 17:53, , 4F
08/09 17:53, 4F
→
08/09 17:53, , 5F
08/09 17:53, 5F
Programming 近期熱門文章
PTT數位生活區 即時熱門文章