專題二數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計_第1頁
專題二數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計_第2頁
專題二數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計_第3頁
專題二數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計_第4頁
專題二數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、專題二數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計第1頁,共47頁,2022年,5月20日,1點33分,星期日數(shù)字鐘及校園打鈴系統(tǒng)設(shè)計設(shè)計目標: 1、基本的數(shù)字鐘計時功能、校時功能; 2、定時鬧鐘功能; 可以任意設(shè)定鬧鐘時間,鬧鈴時間為1分鐘。 3、校園打鈴功能; (1)正常教學打鈴:分夏季作息時間和春季作息時間打鈴,響鈴時間20秒。兩季作息時間通過開關(guān)切換。 (2)考試時間打鈴,響鈴時間20秒。 (3)正常教學打鈴和考試打鈴通過開關(guān)切換。第2頁,共47頁,2022年,5月20日,1點33分,星期日一、基本的數(shù)字鐘計時功能、校時功能電路設(shè)計1、基本計時功能電路設(shè)計60進制計數(shù)器元件外部引腳功能圖說明:1、EN1時

2、,正常計數(shù),0時,停止計數(shù)。 2、CLRN0時,復位清零,1時,正常計數(shù)。 3、CLK時鐘信號,上升沿觸發(fā)。 4、QSA:60進制個位輸出;QSB:60進制十位輸出。第3頁,共47頁,2022年,5月20日,1點33分,星期日LIBRARY ieee; USE ieee.std_logic_1164.all;ENTITY clock_60 ISPORT( CLRN,EN,CLK: IN STD_LOGIC; cout1: out STD_LOGIC; Qsa : OUT INTEGER RANGE 0 TO 9; Qsb : OUT INTEGER RANGE 0 TO 5);END cloc

3、k_60;ARCHITECTURE a OF clock_60 IS BEGIN PROCESS(CLK,CLRN) VARIABLE tmpsa: INTEGER RANGE 0 TO 9; VARIABLE tmpsb: INTEGER RANGE 0 TO 5; 60進制計數(shù)器設(shè)計(VHDL程序)第4頁,共47頁,2022年,5月20日,1點33分,星期日BEGIN IF CLRN=0 THEN tmpsb := 0; tmpsa := 0; ELSIF CLKevent AND CLK=1 THEN IF EN=1 THEN IF tmpsb=5 AND tmpsa=9 THEN tm

4、pSa:=0; tmpSb:=0 ;COUT1=1; ELSIF tmpSa=9 THEN tmpSa:=0; tmpSb:=tmpSb+1; ELSE tmpSa:=tmpSa+1; END IF; END IF; END IF ; QSA=tmpsa;QSB=tmpsb; END PROCESS ;END a;第5頁,共47頁,2022年,5月20日,1點33分,星期日24進制計數(shù)器設(shè)計元件外部引腳功能圖:說明:1、EN1時,正常計數(shù),0時,停止計數(shù)。 2、CLRN0時,復位清零,1時,正常計數(shù)。 3、CLK時鐘信號,上升沿觸發(fā)。 4、QHA:24進制個位輸出;QHB:24進制十位輸出。第

5、6頁,共47頁,2022年,5月20日,1點33分,星期日LIBRARY ieee; USE ieee.std_logic_1164.all;ENTITY clock_24 ISPORT( CLRN,EN,CLK: IN STD_LOGIC; cout: out STD_LOGIC; Qha : OUT INTEGER RANGE 0 TO 9; Qhb : OUT INTEGER RANGE 0 TO 2);END clock_24;ARCHITECTURE a OF clock_24 IS BEGIN PROCESS(CLK,CLRN) VARIABLE tmpha: INTEGER RA

6、NGE 0 TO 9; VARIABLE tmphb: INTEGER RANGE 0 TO 2; 24進制計數(shù)器設(shè)計第7頁,共47頁,2022年,5月20日,1點33分,星期日BEGIN IF CLRN=0 THEN tmphb := 0; tmpha := 0; ELSIF CLKevent AND CLK=1 THEN IF EN=1 THEN IF tmphb=2 AND tmpha=3 THEN tmpha:=0; tmphb:=0 ;COUT=1; ELSIF tmpha=9 THEN tmpha:=0; tmphb:=tmphb+1; ELSE tmpha:=tmpha+1; E

7、ND IF; END IF; END IF ; QHA=tmpha;QHB=tmphb; END PROCESS ;END a;第8頁,共47頁,2022年,5月20日,1點33分,星期日數(shù)字鐘實體第9頁,共47頁,2022年,5月20日,1點33分,星期日數(shù)字鐘實體 LIBRARY ieee; USE ieee.std_logic_1164.all;ENTITY clock_v ISPORT( EN,CLK,CLRN : IN STD_LOGIC; QSa,QMa,QHa : OUT INTEGER RANGE 0 TO 9; QSb,QMb : OUT INTEGER RANGE 0 TO

8、 5; QHb : OUT INTEGER RANGE 0 TO 2 ; cout: out std_logic );END clock_v;第10頁,共47頁,2022年,5月20日,1點33分,星期日ARCHITECTURE a OF clock_v IS signal cout1,cout2,COUT3:STD_LOGIC; BEGINu60s: PROCESS(CLK,CLRN) VARIABLE tmpsa: INTEGER RANGE 0 TO 9; VARIABLE tmpsb: INTEGER RANGE 0 TO 5; BEGIN IF CLRN=0 THEN tmpsb :

9、= 0; tmpsa := 0; ELSIF CLKevent AND CLK=1 THEN IF EN=1 THEN IF tmpsb=5 AND tmpsa=9 THEN tmpSa:=0; tmpSb:=0 ;COUT1=1; ELSIF tmpSa=9 THEN tmpSa:=0; tmpSb:=tmpSb+1; COUT1=0; ELSE tmpSa:=tmpSa+1;COUT1=0; END IF; END IF; END IF ; QSA=tmpsa;QSB=tmpsb; END PROCESS u60s; 數(shù)字鐘VHDL程序的結(jié)構(gòu)體部分接下頁第11頁,共47頁,2022年,5月

10、20日,1點33分,星期日u60M: PROCESS(cout1,CLRN) VARIABLE tmpMa: INTEGER RANGE 0 TO 9; VARIABLE tmpMb: INTEGER RANGE 0 TO 5; BEGIN IF CLRN=0 THEN tmpMb := 0; tmpMa := 0; ELSIF COUT1event AND COUT1=1 THEN IF EN=1 THEN IF tmpMb=5 AND tmpMa=9 THEN tmpMa:=0; tmpMb:=0 ;COUT2=1; ELSIF tmpMa=9 THEN tmpMa:=0; tmpMb:=

11、tmpMb+1; COUT2=0; ELSE tmpMa:=tmpMa+1;COUT2=0; END IF; END IF; END IF ; QMA=tmpMa;QMB=tmpMb; END PROCESS u60M;數(shù)字鐘分計數(shù)器接下頁第12頁,共47頁,2022年,5月20日,1點33分,星期日 u24H: PROCESS(COUT2,CLRN) VARIABLE tmpHa: INTEGER RANGE 0 TO 9; VARIABLE tmpHb: INTEGER RANGE 0 TO 2; BEGIN IF CLRN=0 THEN tmpHb := 0; tmpHa := 0; E

12、LSIF COUT2event AND COUT2=1 THEN IF EN=1 THEN IF tmpHb=2 AND tmpHa=3 THEN tmpHa:=0; tmpHb:=0 ;COUT3=1; ELSIF tmpHa=9 THEN tmpHa:=0; tmpHb:=tmpHb+1; COUT3=0; ELSE tmpHa:=tmpHa+1;COUT3=0; END IF; END IF; END IF ; QHA=tmpHa;QHB=tmpHb;COUT=COUT3; END PROCESS u24H;END a;數(shù)字鐘時計數(shù)器結(jié)構(gòu)圖NO.7:此電路適合于設(shè)計時鐘、定時器、秒表等。

13、因為可利用鍵8和鍵5分別控制時鐘的清零和設(shè)置時間的使能;利用鍵7、5和1進行時、分、秒的設(shè)置。第13頁,共47頁,2022年,5月20日,1點33分,星期日第14頁,共47頁,2022年,5月20日,1點33分,星期日原理圖設(shè)計方法第15頁,共47頁,2022年,5月20日,1點33分,星期日校時電路設(shè)計第16頁,共47頁,2022年,5月20日,1點33分,星期日狀態(tài)機狀態(tài)圖第17頁,共47頁,2022年,5月20日,1點33分,星期日2選1多路選擇器vhdl程序ENTITY mux21a IS PORT( a, b : IN BIT ; k : IN BIT; c : OUT BIT )

14、;END ENTITY mux21a ;ARCHITECTURE one OF mux21a IS BEGIN c = a WHEN k = 1 ELSE b ;END ARCHITECTURE one ;第18頁,共47頁,2022年,5月20日,1點33分,星期日狀態(tài)機程序LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY zhuantaiji ISPORT ( CLK 0,reset: IN STD_LOGIC; y : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);END zhuantaiji;ARCHITECTURE

15、behav OF zhuantaiji IS TYPE states IS (st0, st1, st2, st3,st4); SIGNAL stx : states ; BEGIN COMREG : PROCESS(CLK,RESET) BEGIN -決定轉(zhuǎn)換狀態(tài)的進程 IF RESET =1 THEN STX STX STX STX STX STX y y y y y=“111 ; END CASE ;END PROCESS COM1 ;END behav; 第20頁,共47頁,2022年,5月20日,1點33分,星期日二、定時鬧鐘功能電路設(shè)計定時器控制電路復位定時時間存儲電路調(diào)時或調(diào)分選

16、擇開關(guān)“”鍵分輸出時輸出基本數(shù)字鐘電路秒脈沖時輸出分輸出校時校時功能切換復位秒輸出七段數(shù)碼管譯碼器及顯示器正常計時時間和定時時間輸出選擇切換電路時輸出分輸出秒輸出VCCK1K1閉合,顯示正常計時時間K1斷開,顯示定時器時間思考:在正常顯示時間時,如何使定時器“”鍵失效,以保證在正常計時時定時時間不被修改?第21頁,共47頁,2022年,5月20日,1點33分,星期日正常計時時間和鬧鈴時間比較器電路連接正常計時“時”信號輸出連接正常計時“分”信號輸出連接鬧鈴時間“時”信號輸出連接鬧鈴時間“分”信號輸出與門電路兩時間相等,輸出高電平512Hz周期信號思考:響鈴時間為1秒,如何保證?第22頁,共47

17、頁,2022年,5月20日,1點33分,星期日數(shù)字鐘電路設(shè)計將上一講中的數(shù)字鐘包裝成一個元件,引腳定義如下圖所示。第23頁,共47頁,2022年,5月20日,1點33分,星期日定時器控制電路及定時時間存儲電路設(shè)計定時器控制電路復位定時時間存儲電路調(diào)時或調(diào)分選擇開關(guān)“”鍵分輸出時輸出定時器控制電路及定時時間存儲電路Ctrl_memoresetk1Up_key“+”鍵Q_houra3.0Q_hourb1.0Q_minuea3.0Q_minueb2.0第24頁,共47頁,2022年,5月20日,1點33分,星期日定時器控制電路及定時時間存儲電路VHDL程序LIBRARY ieee; USE ieee

18、.std_logic_1164.all;ENTITY ctrl_memo ISPORT( reset,k1,up_key: IN STD_LOGIC; -k1高電平為調(diào)時,低電平為調(diào)分 Q_hourb : OUT INTEGER RANGE 0 TO 2;-“時”高位 Q_houra : OUT INTEGER RANGE 0 TO 9;-“時”低位 Q_minueb : OUT INTEGER RANGE 0 TO 5; Q_minuea : OUT INTEGER RANGE 0 TO 9);END ctrl_memo;ARCHITECTURE a OF ctrl_memo IS BEGI

19、N PROCESS(reset,k1,up_key) VARIABLE Q_tmpma: INTEGER RANGE 0 TO 9; VARIABLE Q_tmpmb: INTEGER RANGE 0 TO 5; VARIABLE Q_tmpha: INTEGER RANGE 0 TO 9; VARIABLE Q_tmphb: INTEGER RANGE 0 TO 2;第25頁,共47頁,2022年,5月20日,1點33分,星期日BEGIN IF reset=0 THEN Q_tmpma:= 0; Q_tmpmb:= 0;Q_tmpha:= 0; Q_tmphb:= 0; ELSIF up_k

20、eyevent AND up_key=1 THEN IF k1=1 THEN IF Q_tmphb=2 AND Q_tmpha=3 THEN Q_tmphb:=0; Q_tmpha:=0 ; ELSIF Q_tmpha=9 THEN Q_tmpha:=0; Q_tmphb:=Q_tmphb+1; ELSE Q_tmpha:=Q_tmpha+1; END IF; else IF Q_tmpmb=5 AND Q_tmpma=9 THEN Q_tmpmb:=0; Q_tmpma:=0 ; ELSIF Q_tmpma=9 THEN Q_tmpma:=0; Q_tmpmb:=Q_tmpmb+1; ELS

21、E Q_tmpma:=Q_tmpma+1; END IF; END IF; END IF ; Q_hourb=Q_tmphb; Q_houra=Q_tmpha; Q_minueb=Q_tmpmb; Q_minuea=Q_tmpma; END PROCESS ;END a;第26頁,共47頁,2022年,5月20日,1點33分,星期日正常計時時間和定時時間輸出選擇切換電路QHAI5.0正常計時時間和定時時間輸出選擇切換電路 NOR_ARM_CTL.VHDk2Q_HAO3.0Q_HBO1.0Q_MAO3.0Q_MBO2.0Q_SAO3.0Q_SBO2.0QSAI6.0QMAI6.0QH_ARM5.

22、0QM_ARM6.0正常時間輸入,接時鐘輸出鬧鐘時間輸入,接鬧鐘定時輸出K2為高電平時顯示正常時間第27頁,共47頁,2022年,5月20日,1點33分,星期日仿真波形第28頁,共47頁,2022年,5月20日,1點33分,星期日正常計時時間和定時時間輸出選擇切換電路 VHDL程序LIBRARY ieee; USE ieee.std_logic_1164.all;ENTITY NOR_ARM_CTL ISPORT( k2: IN STD_LOGIC; QSAI,QMAI,QHAI:IN INTEGER RANGE 0 TO 9; QSBI,QMBI:IN INTEGER RANGE 0 TO

23、5; QHBI:IN INTEGER RANGE 0 TO 2; QH_ARM_A,QM_ARM_A: IN INTEGER RANGE 0 TO 9; QH_ARM_B: IN INTEGER RANGE 0 TO 2; QM_ARM_B: IN INTEGER RANGE 0 TO 5; Q_HAO,Q_MAO,Q_SAO:OUT INTEGER RANGE 0 TO 9; Q_HBO: OUT INTEGER RANGE 0 TO 2; Q_MBO,Q_SBO : OUT INTEGER RANGE 0 TO 5);END NOR_ARM_CTL;第29頁,共47頁,2022年,5月20

24、日,1點33分,星期日ARCHITECTURE a OF NOR_ARM_CTL IS BEGIN Q_HAO=QHAI WHEN K2=1 ELSE QH_ARM_A; Q_HBO=QHBI WHEN K2=1 ELSE QH_ARM_B; Q_MAO=QMAI WHEN K2=1 ELSE QM_ARM_A; Q_MBO=QMBI WHEN K2=1 ELSE QM_ARM_B; Q_SAO=QSAI WHEN K2=1 ELSE 0; Q_SBO=QSBI WHEN K2=1 ELSE 0;END a;第30頁,共47頁,2022年,5月20日,1點33分,星期日仿真波形第31頁,共47

25、頁,2022年,5月20日,1點33分,星期日正常計時時間和鬧鈴時間比較器電路 BIJIAOQI.VHD與門電路兩時間相等,輸出高電平512Hz周期信號正常計時時間和鬧鈴時間比較器電路設(shè)計clk0speakQH_AQH_BQM_AQM_BHARM_AHARM_BMARM_AMARM_BY第32頁,共47頁,2022年,5月20日,1點33分,星期日正常計時時間和鬧鈴時間比較器電路VHDL程序LIBRARY ieee; USE ieee.std_logic_1164.all;ENTITY BIJIAOQI ISPORT( CLk0: IN STD_LOGIC; QH_A,QM_A: IN INT

26、EGER RANGE 0 TO 9; QH_B: IN INTEGER RANGE 0 TO 2; QM_B: IN INTEGER RANGE 0 TO 5; HARM_A,MARM_A: IN INTEGER RANGE 0 TO 9; HARM_B: IN INTEGER RANGE 0 TO 2; MARM_B: IN INTEGER RANGE 0 TO 5; SPEAK: OUT STD_LOGIC);END BIJIAOQI;ARCHITECTURE a OF BIJIAOQI IS SIGNAL Y: STD_LOGIC; BEGIN SPEAK=CLK0 AND Y; Y=1

27、 WHEN (QH_A=HARM_A) AND (QM_A=MARM_A) AND (QH_B=HARM_B) AND (QM_B=MARM_B) ELSE 0;END a;第33頁,共47頁,2022年,5月20日,1點33分,星期日仿真波形第34頁,共47頁,2022年,5月20日,1點33分,星期日總電路圖第35頁,共47頁,2022年,5月20日,1點33分,星期日三、校園打鈴系統(tǒng)功能電路設(shè)計方案二:地址發(fā)生器及外置存儲器方式方案一:直接數(shù)據(jù)比較方法第36頁,共47頁,2022年,5月20日,1點33分,星期日方案一:直接數(shù)據(jù)比較方法春季作息時間夏季作息時間6:50起床6:40起床7:

28、40預備7:30預備7:50第一節(jié)上課7:40第一節(jié)上課8:35第一節(jié)下課8:25第一節(jié)下課8:45第二節(jié)上課8:35第二節(jié)上課9:30第二節(jié)下課9:20第二節(jié)下課9:50第三節(jié)上課9:40第三節(jié)上課10:35第三節(jié)下課10:25第三節(jié)下課10:45第四節(jié)上課10:35第四節(jié)上課11:30第四節(jié)下課11:20第四節(jié)下課14:00預備14:20預備14:10下午第一節(jié)上課14:30下午第一節(jié)上課14:55下午第一節(jié)下課15:15下午第一節(jié)下課15:05下午第二節(jié)上課15:25下午第二節(jié)上課15:50下午第二節(jié)下課16:10下午第二節(jié)下課16:00下午第三節(jié)上課16:20下午第三節(jié)上課16:45下

29、午第三節(jié)下課17:05下午第三節(jié)下課16:55下午第四節(jié)上課17:15下午第四節(jié)上課17:40下午第四節(jié)下課18:00下午第四節(jié)下課19:00晚上第一節(jié)上課19:10晚上第一節(jié)上課19:45晚上第一節(jié)下課19:55晚上第一節(jié)下課19:55晚上第二節(jié)上課20:05晚上第二節(jié)上課20:40晚上第二節(jié)下課21:00晚上第二節(jié)下課第37頁,共47頁,2022年,5月20日,1點33分,星期日將“時分”并置,得到下列數(shù)據(jù):春季作息時間夏季作息時間06500640074007300750074008300825084508350930092009500940103510251045103511301120

30、14001420141014301455151515051525155016101600162016451705165517151740180019001810194519551955200520402100第38頁,共47頁,2022年,5月20日,1點33分,星期日實現(xiàn)方法: 將數(shù)字鐘輸出的時間(時和分)逐一與上表中的數(shù)據(jù)進行比較,如果相等,則Q_Y輸出高電平,否則輸出低電平?;緮?shù)字鐘電路秒脈沖時輸出分輸出校時校時功能切換復位秒輸出時間比較器(comp_time)JK交流電鈴220V5VQ_YR3K高電平:春季低電平:夏季K3Q_HAQ_HBQ_MAQ_MB譯碼及顯示第39頁,共47頁,

31、2022年,5月20日,1點33分,星期日時間比較器的VHDL程序(COMP_TIME.VHD)LIBRARY ieee; USE ieee.std_logic_1164.all;ENTITY COMP_TIME ISPORT( K3: IN STD_LOGIC; Q_HA,Q_MA: IN STD_LOGIC_VECTOR(3 DOWNTO 0); Q_HB: IN STD_LOGIC_VECTOR(1 DOWNTO 0); Q_MB-: IN STD_LOGIC_VECTOR(2 DOWNTO 0); Q_Y: OUT STD_LOGIC);END COMP_TIME;ARCHITECTURE a OF COMP_TIME IS SIGNAL QTIME:STD_LOGIC_VECTOR(12 DOWNTO 0); BEGIN QTIME Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y Q_Y=0; END CASE; END IF; END PROCESS; END a;第42頁,共47頁,2022年,5月20日,1點33分,星期日

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論