|
以上問題已經解決@@"
2 @# O1 X, P5 k7 ^但請問 我需要一個另外程式
w. d" r B) c% X ~9 m4 ^去控制暫停開始和暫停
" o Q" c1 P( j. w# V* NLIBRARY ieee;
2 m% L. o5 M5 \* \& ]6 wUSE ieee.std_logic_1164.all;. M7 j; P, V' V. x9 v
USE ieee.std_logic_unsigned.all;
6 U" n3 l. {' x; t- g2 |# XENTITY debounce_v IS
, p z2 |8 e0 C$ J PORT(CLK,PB : IN STD_LOGIC;
: C8 i5 R i3 I# v( t PULSE : OUT STD_LOGIC
J, L, }0 h4 b+ x0 Z) @2 i5 q );
5 n, |5 {% o; n+ _, y3 y# EEND debounce_v;+ }2 y" k* l7 C( ~* [
ARCHITECTURE arc OF debounce_v IS
9 K$ _2 D4 ]1 D SIGNAL imper : STD_LOGIC;
, _: y) K) `; T BEGIN8 N. G+ X( x/ F- r, {5 A
PROCESS (CLK)
: }! X% m5 J" H7 M- G VARIABLE counter : integer range 0 to 49;
8 V- ]) _ Y' k6 ^* F1 F" s, G. }9 w BEGIN
, P) A8 m" w6 E8 U, M" o5 x IF (CLK'event AND CLK='1') THEN
! D( L, _* R1 W# g# Z! z! o IF counter = "1" and (PB = '1') THEN imper <= '1';
# s0 O! T( c9 K: x* l- {# u; a ELSE counter := counter-1; imper <= '0';
) ^% X6 }! ~4 o- |! c" Z6 Y END IF;
# M+ A: w |' B2 o( f, t$ C END IF;7 s3 H2 |' ~9 i, [ E! b! A) h7 p
PULSE <= imper;
. @) F* T) P% |' N END PROCESS ;! U# _* m, G, K: w$ ]9 F$ }
END arc;1 R5 K, _' z8 y0 K, b ` B
7 _% a h" s! l1 i
這是按一次減一次
! @6 L1 t* r: C$ `想要按一下開始 按一下暫停, V" N0 o0 c& b5 P! x8 \) N4 Y
8 `: }& H: I- x$ n( L, W, U( j: gps.轉自全華圖書 |
|