|
module ww (in1,r1,reset,clk,out);! S# T4 K3 W0 x4 o
input in1,clk,reset;
. z' Q0 s ^# { D* P* Uoutput reg [3:0]out;7 H* L p1 M1 _2 b
output reg r1;0 j; [' l. @) M9 z" G
reg [2:0]zxc;2 c- R1 p# z U$ ?
4 @* \; q2 E/ {$ n; zalways @ (posedge clk)
" `; Y$ B8 @. G6 o0 U }5 [$ nbegin
. ^8 D1 ~6 o1 |/ O& L5 nif(!zxc[2]&&zxc[1]); m) h# I9 }3 h& i. D
r1 <=~r1;
% Z7 f, K) N6 N6 i" W) szxc <={zxc[1:0],in1};
- d2 |5 g5 P, l7 q' b( v1 q- x' g: A D$ O7 `4 X
if(!reset)1 n1 M& u* a. ^6 ^; f O3 P M6 E0 o
out <=4'b0000;. m) E7 T6 R# @* P$ Z
else
1 m7 c" c3 Z; O8 d2 q: D0 T1 d1 H' v: u: e/ I
begin; U5 r1 N* `( Q1 u5 A$ n" L
if(in1==1) out<=out+1;
9 k9 F. R( c! u. qif(out==4'b1111) out<=4'b0000;, ^% ^/ ~) h8 A& M
end
, ]& m" ^+ @4 X* h end
. V$ O2 B& ? X7 @7 `endmodule7 K; C# h* o7 g4 ~: y4 _0 a
$ U. ]. [' T2 D$ `
要做一個有reset 和每按一次就亮一顆 例如按一次 亮第一顆 按第二次 第一顆不熄滅 亮第二顆......有四顆 全亮時再按一次 熄滅 就這樣迴圈下去
" D2 A3 Q7 d5 W! [; c! M有做成這樣 有加上除去彈跳 之後就不知道怎打 也不知道這樣語法到底正不正確 |
|