|
module ww (in1,r1,reset,clk,out);
( y% v* O$ j9 _- a dinput in1,clk,reset;
: S! m" B, \6 R( R Noutput reg [3:0]out;
) a% V& @( d/ u n! G" t( ^ eoutput reg r1;$ ^( a+ I- D, P) v( q" U
reg [2:0]zxc;
) G9 m1 M) V- k* u, G2 n. J9 P0 {: j" s0 E6 m4 n6 M' n
always @ (posedge clk)
7 H0 G& d/ t5 I& x2 x5 W2 Hbegin% ?3 }3 D9 E$ T) w
if(!zxc[2]&&zxc[1])7 H# S' _3 c& e4 X B
r1 <=~r1;
0 }4 L$ L) e- Vzxc <={zxc[1:0],in1};1 K3 W0 V r7 { a0 n
' O! C* c6 t8 x7 f/ i7 J
if(!reset)7 v! o# Z2 L2 w. R) v
out <=4'b0000;
: D; j& |- }4 R Xelse9 p5 o5 q+ ^ W( g) l3 D; W# s; b
$ U+ P3 i: P: c- {, g- p! p9 ^) a begin3 T/ c- ^4 f7 u) ?* L* p7 `' t
if(in1==1) out<=out+1;
9 T2 ^7 H4 P2 J+ cif(out==4'b1111) out<=4'b0000;+ t& v8 N i4 ~3 v* }4 h) Y
end
: L4 @+ h' H# t$ }0 H3 X" i end
; G& A; U- K# c( uendmodule/ \& `: f( {; ^/ {7 ?& J/ Q# j
: \' t" l& `! v# a要做一個有reset 和每按一次就亮一顆 例如按一次 亮第一顆 按第二次 第一顆不熄滅 亮第二顆......有四顆 全亮時再按一次 熄滅 就這樣迴圈下去
' X) c o/ t( X" M, \" W0 O( M3 K有做成這樣 有加上除去彈跳 之後就不知道怎打 也不知道這樣語法到底正不正確 |
|