|
module ww (in1,r1,reset,clk,out);- V9 E# F! k6 w( R7 F+ w' |
input in1,clk,reset;1 l, n% u* ~7 _' v
output reg [3:0]out;# ?+ K9 ?* v/ n+ q' W" w+ p( K
output reg r1;
: ^, C0 i! t; b; J5 c8 xreg [2:0]zxc;* f+ U* x% |( w4 M! T3 d$ l- U( u
; w$ D- u) m0 o5 w9 y2 Y) F
always @ (posedge clk)" |9 [6 u* T3 J4 D: Q$ A
begin, C6 a1 x% u3 S4 }% L8 l3 y
if(!zxc[2]&&zxc[1])! Z s) }- {+ y; [! A. U
r1 <=~r1;
{4 K2 @3 p% m, O, k& m& yzxc <={zxc[1:0],in1};
7 u; d. g8 n5 k; n, e% i# D7 [2 Y
5 _9 n/ s6 A1 |8 E# R( ~if(!reset)0 b) S! B9 ^: ^# q, x1 T. Y3 ]! R
out <=4'b0000;/ Z0 l% u5 Y; i& m* G
else
; ]. ^5 b. f* l& [3 F# V5 ~: D1 r2 H# Q9 q# ?+ i$ v
begin
6 W2 a) N% R* P: {+ |4 r4 hif(in1==1) out<=out+1;
9 t5 O7 z7 s$ r- f1 V! z! Sif(out==4'b1111) out<=4'b0000;4 M$ Z4 l Q G& S( F+ u
end$ C0 {, R7 O/ X/ m* M2 J
end4 [* i& _0 D( G/ K& Q4 G
endmodule4 b1 [2 l/ D: a/ e; D
+ \% b" Y+ e- A
要做一個有reset 和每按一次就亮一顆 例如按一次 亮第一顆 按第二次 第一顆不熄滅 亮第二顆......有四顆 全亮時再按一次 熄滅 就這樣迴圈下去2 |7 T5 A+ Z9 z' f: A) I" C" ?; y
有做成這樣 有加上除去彈跳 之後就不知道怎打 也不知道這樣語法到底正不正確 |
|