Chip123 科技應用創新平台
標題:
任務呼叫7段顯示器波型圖
[打印本頁]
作者:
qq77618
時間:
2009-5-16 02:41 AM
標題:
任務呼叫7段顯示器波型圖
module test(reset,clk,down,seg,seg10,segA,sel);
- Q% o) O; \1 E) F) [( s: S0 w
input reset,clk,down,sel;
* H! K8 N3 W: `/ O: _
output [3:0] seg,seg10;
/ f: r+ X, J0 y' l) P6 |, ~- o4 ^
output [6:0] segA;
$ h$ n- ~: b- _
reg [3:0] seg,seg10;
2 Z) N; I- l( c1 O) z# h; Q
reg [6:0] segA;
+ q/ u7 i" z: h& Q* ]" A+ }
4 T9 A8 a+ w7 Y% u
always@(negedge clk)
$ @4 f& e! E( X3 j+ L
begin
- f5 o2 T6 k5 n9 f+ v3 e- @' k
if(down==1)
- |3 b7 G7 p+ }( p$ V$ w( D8 u
begin
2 ]) K: T# d: r( i
if(seg==4'd0000)
, k2 g; O) H2 J1 g4 C6 h
begin
$ `& P3 a! w- c' l
seg10=seg10-4'd0001;
6 g6 ? p% U2 V/ L' t( c3 U: q
seg=4'd1001;
% O, b6 T$ z/ Q" C1 W5 q
end
& M9 t' H* _2 f% C0 `
else
/ S3 i7 u6 F- M7 M
begin
; i7 e/ H9 s: @7 b
seg=seg-4'd0001;
: Y2 N7 o4 F% O0 P
end
- [# r/ M4 E3 @% t& s
end
3 k. q6 \$ k6 k7 e
else if(reset==1)
V0 V+ S2 l& V4 e, p7 G$ Y8 }
begin
3 s& O% t$ H3 O) m5 w" e
seg=4'd0;
/ {, L4 H" c x
seg10=4'd0;
5 b- D3 @6 K& m% {" [7 U
end
& u% e5 b% f4 K2 x6 e8 L8 T
else if(seg==4'd1001)
' ^' H p1 J" P: o6 c
begin
9 a! o) ~8 M+ ~! |; o+ i* w: z
seg10=seg10+1'd1;
$ d. P7 c# k, w
seg=0;
! x- ?9 z, a* g( q
end
' o0 w: x- E/ q V D4 o; q. B
else
' d9 u6 q! U6 G8 @
begin
P4 O8 o. ?6 Y" V0 K; @" P
seg=seg+1'd1;
& g% K y1 M" M8 ^
end
0 c6 S% ]7 c$ w' R# }8 Q- ?+ C
5 Y" z# B$ A7 h$ C0 ?5 |3 ^
if(seg10>4'd1001)
' y$ t8 P, ?6 p& K: r
begin
. B* O# H! R$ u& b4 ?7 E4 }9 I
seg=4'd0;
3 D: V; z3 h+ ^3 Z4 x8 h) O) d/ a; f, s
seg10=4'd0;
1 M+ M! f8 t# E8 j" f
end
# W; `! D: y6 f9 {
if(sel==0)
# U& q# }3 E1 c. \6 E1 S: f
begin
! L, ^( D0 m8 Q+ @2 K) `: E6 V
mm(seg,segA);
1 p, u9 p: h1 x1 I5 m* c8 l
end
) [. Z/ \) p, k5 J. B
end
- {4 x3 }$ Z7 [( w+ P( J; j
: e! b8 d$ e2 a: h# u
task mm;
* c* q& L. g8 E# {; r ]
input seg;
R1 s+ i$ k' n
output[6:0]out;
0 z L7 q, h, Q; }5 f' V
reg[6:0] out;
) n" f! f u, D
begin
$ z6 v# x+ k# ?
case(seg)
, P0 d' j- c$ X+ b& X2 L. ?7 N" z: O
4'd0: out=7'b0111111;
4 ~& I A5 B& }- M4 r
4'd1: out=7'b0000110;
: ?5 B, W- {0 q* i
4'd2: out=7'b1011011;
' {( N* r3 b& g; h) K
4'd3: out=7'b1001111;
- ?/ Q# x8 n2 ?* K
4'd4: out=7'b1100110;
, J) P! v f1 x' d- I" x5 j
4'd5: out=7'b1101101;
. j; V5 ]9 c9 U& ?- Q% f
4'd6: out=7'b1111101;
9 i: j& W( n0 }% c1 q: Q1 _; P
4'd7: out=7'b0000111;
2 c6 ?8 y; l& p
4'd8: out=7'b1111111;
/ r! ?6 M. _4 A4 F
4'd9: out=7'b1101111;
5 f" ^+ T7 @# p, C4 A
default: out=7'b1111111;
1 v: M: I! e# ~/ d4 b9 W4 Q" _ _
endcase
* z! p, I9 F" R. ]
* X4 {: n% n; _' F
end
8 O4 h3 U" J7 H3 Z
endtask
1 w+ p3 n! R: Y0 c2 \1 U' }6 H; P
endmodule
6 C# |. [- U1 M. d
請問我task任務是寫7段顯示器,這程式是說,當我sel為0的時候就會顯示seg所跑的數值7段,但為什麼她7段會變成很有規律性呢?
: e, x: S* a- B# x* Q: ?2 ?* C
我的7段式segA 圖我已上傳
歡迎光臨 Chip123 科技應用創新平台 (http://chip123.com/)
Powered by Discuz! X3.2