eda課程設計之帶定時功能的計時器

2023-01-15 17:36:07 字數 4764 閱讀 2749

設計題目十七:帶鬧鐘功能的24小時制鬧鐘系統的設計

設計要求:

(1) 計時功能:這是本計時器設計的基本功能,每隔一分鐘計時一次,並在顯示屏上顯示當前時間。

(2) 鬧鐘功能:如果當前時間與設定的鬧鐘時間相同,則揚聲器發出蜂鳴聲。

(3) 設定新的計時器時間:使用者用數字鍵『0』~『9』輸入新的時間,然後按 "time"鍵確認。

(4) 設定新的鬧鐘時間:使用者用數字鍵「0」~「9」輸入新的時間,然後按「alarm」鍵確認。過程與(3)類似。

(5) 顯示所設定的鬧鐘時間:在正常計時顯示狀態下,使用者直接按下「alarm」鍵,則已設定的鬧鐘時間將顯示在顯示屏上。

參考設計思路:

圖4-1 鬧鐘系統總體結構圖

整個鬧鐘系統的總體結構圖如圖4-1所示,我們將整個系統分成:(1)用於鍵盤輸入的緩衝器;(2)用於始終計數的計數器;(3)用於儲存鬧鐘時間的暫存器;(4)用於顯示的七段數碼顯示電路;(5)用於以上四部分協同工作的控制器。其中七段數碼顯示電路又包含解碼器和顯示器電路。

然後按照專案需求設計每個小的模組,經編譯**成功之後組裝成最終產品。

大慶石油學院

課程設計

2023年3月11日

大慶石油學院課程設計任務書

課程 eda技術課程設計

題目鬧鐘系統的設計

專業電子科學與技術姓名蘭士鳳學號 070901240102

主要內容、基本要求、主要參考資料等

主要內容:

設計並製作乙個帶鬧鐘功能的24小時計時器。它包括以下幾個組成部分:

1、顯示屏,由4 個七段數碼管組成,用於顯示當前時間(時:分)或設定的鬧鐘時間;

2、數字鍵,實現『0』—『9』的輸入,用於輸入新的時間或新的鬧鐘時間;

3、time(時間)鍵,用於確定新的時間設定;

4、alarm(鬧鐘)鍵,用於確定新的鬧鐘時間設定,或顯示已設定的鬧鐘時間;

5、揚聲器,在當前時鐘時間與鬧鐘時間相同時,發出蜂鳴聲

基本要求:

1、計時功能:這是本計時器設計的基本功能,每隔一分鐘計時一次,並在顯示屏上顯示當前時間。

2、鬧鐘功能:如果當前時間與設定的鬧鐘時間相同,則揚聲器發出蜂鳴聲。

3、設定新的計時器時間:使用者用數字鍵輸入新的時間,然後按"time"鍵確認。在輸入過程中,輸入數字在顯示屏上從右到左依次顯示。

例如,使用者要設定新的時間12:34,則按順序輸入「1」,「2」,「3」,「4」,與之對應,顯示屏上依次顯示的資訊為:「1」,「12」,「123」,「1234"。

如果使用者在輸入任意幾個數字後較長時間內,例如5 s,沒有按任何鍵,則計時器恢復到正常的計時顯示狀態。

主要參考資料:

[1] 潘松著.eda技術實用教程(第二版). 北京:科學出版社,2005.

[2] 康華光主編.電子技術基礎模擬部分. 北京:高教出版社,2006.

[3] 閻石主編.數字電子技術基礎. 北京:高教出版社,2003.

完成期限 2011.3.11

指導教師

專業負責人

一、總體設計思想

1.基本原理

數字鬧鐘電路的基本結構由兩個60進製計數和乙個24進製計數器組成,分別對秒、分、小時進行計時,當計時到23時59分59秒時,再來乙個計數脈衝,則計數器清零,重新開始計時。秒計數器的技術時鐘clk為hz的標準訊號。當數字鬧鐘處於計時狀態時,秒計數器的進製輸出訊號作為分鐘計數器的計數訊號,分鐘計數器的進製輸出訊號又作為小時計數器的計數訊號時、分、秒得計時結果通過6個數碼管來動態顯示。

因此,通過模式選擇訊號key1、key2控制數字鐘的工作狀態,使其分別工作於正常計時,調整分、時和設定鬧鐘分、時5個狀態。當數字鬧鐘處於計時狀態時,3個計數器允許計數,且秒、分、時計數器的計數時鐘訊號分別為clk,秒的進製,分的進製;當數字鬧鐘處於鬧鐘定時狀態時,可以設定小時和分;當計時到所設定的時刻時,驅動揚聲器,持續1分鐘。

2.設計框圖

系統框圖主要分為三部分:

第一部分為精準秒脈衝產生電路,這裡我們採用頻率為32.768khz的標準晶振搭成精準的秒脈衝產生電路,為電子鐘提供精準的秒脈衝輸入。

第二部分為fpga核心控制電路,主要由型號為ep3c25e144c8n的晶元經過程式設計以後,向解碼顯示電路提供控制訊號。

第三部分為解碼顯示電路,由4片74ls47驅動4個7段數碼管,在核心控制電路輸出的控制訊號的控制下,顯示相應的時、分、秒。具體框圖如下圖1所示。

圖1二、設計步驟和除錯過程

1、總體設計電路

該數字鐘可以實現3個功能:計時功能、定點報時功能和重置時間功能,因此有3個子模組:計時、報時(speak)、重置時間(sd1,sd2)。

其中計時模組有4部分構成:秒計時器(s1)、分計時器(m1)、時計時器(h1)。秒計時器(s1)是由乙個60進製的計數器構成的,。

clk為驅動秒計時器的時鐘,s1為秒計時器的輸出。分計時器(m1)是由乙個60進製的計數器構成的,s1為驅動分計時器工作的時鐘;m1為分計時器的輸出;時計時器(h1)是由乙個24進製的計數器構成的, m1為驅動時計時器工作的時鐘,h1為時計時器的輸出;

報時模組(speak)的功能是定時到時,speak輸出高電平,並且持續一段時間。

(1)、秒脈衝產生電路

如下圖所示,由32.768khz的晶振產生經過cd4060分頻產生精準的秒脈衝。

圖2(2)、fpga 核心控制電路

對ep1k30tc144-3進行程式設計,輸出控制訊號。

圖3(3)、解碼顯示電路

如圖,由cd4511驅動7段數碼管進行顯示。

圖42、模組設計和相應模組程式

(1)、分計時器(second1)

分鐘十位

m110:process(clk,min2,sec1,sec2,md1,md2)

begin

if clk'event and clk='1' then

if (min1="0101" and min2="1001") and (sec1="0101" and sec2="1001") then

min1<="0000";

elsif min1="0101"and min2="1001"and (md1='0' and md2="00")then

min1<="0000";

elsif (min2="1001"and (sec1="0101" and sec2="1001"))

or (min2="1001"and md1='0' and md2="00") then min1<=min1+1;

end if;

end if;--end if;

end process m110;

分鐘個位

m220:process(clk,sec1,sec2,md1,md2)

begin

if clk'event and clk='1' then

if min2="1001"and (sec1="0101" and sec2="1001") then min2<="0000";

elsif min2="1001"and (md1='0' and md2="00") then min2<="0000";

else if (sec1="0101" and sec2="1001") or(md1='0' and md2="00")then

min2<=min2+1;

end if;

end if;end if;

end process m220;

(2)、時計時器(hour1)

小時十位

h110:process(clk,hou2,min1,min2,sec1,sec2,md1,md2)

begin

if clk'event and clk='1' then

if (hou1="00010" and hou2="00011")and(min1="0101" and min2="1001")

and (sec1="0101" and sec2="1001") then hou1<="00000";

elsif hou1="00010"and hou2="00011"and md1='0' and md2="01" then

--當時間為23點且處於校時狀態時

hou1<="00000";

elsif (hou2="01001"and(min1="0101" and min2="1001")

and (sec1="0101" and sec2="1001"))or (hou2="01001"and md1='0' and md2="01")

then hou1<=hou1+1;

end if;

end if;

end process h110;

小時個位

h220:process(clk,min1,min2,sec1,sec2,md1,md2,hou1)

begin

if clk'event and clk='1' then

if (hou1="00010" and hou2="00011")and(min1="0101" and min2="1001")

and (sec1="0101" and sec2="1001") then hou2<="00000";

elsif hou2="01001"and(min1="0101" and min2="1001") and (sec1="0101" and sec2="1001") then hou2<="0000";

elsif (hou2="01001"and md1='0' and md2="01") or (hou1="00010"and hou2="00011") then hou2<="00000";--md<='1';

EDA技術課程設計

河北科技大學 課程設計報告 姓名 學號 潘小霖 17 彭酉幹 18 喬穎晟 19 時金旭 20 宋文雪 21 專業班級 電信112班 課程名稱 eda技術課程設計 學年學期 2 013 2 014 學年第 2 學期 指導教師於國慶 2 0 14 年 6 月 課程設計成績評定表 基於fpga自動量程頻...

EDA課程設計實驗報告

課程設計報告 課程名稱數字系統與邏輯設計 課題名稱 16 16點陣顯示 專業通訊工程 班級1181 學號 201113120107 姓名肖浪 指導教師喬匯東吳德建 2013年 7月 2日 湖南工程學院 課程設計任務書 課程名稱數字系統與邏輯設計 課題 16 16點陣顯示 專業班級通訊工程1181 學...

中南大學EDA課程設計報告

中南大學 指導老師 張靜秋 姓名 梁雪林 學號 0909091925 專業班級 自動化0905 目錄一 設計內容簡介 2 二 設計要求 2 基本要求 2 提高部分要求 3 三 方案論證 整體電路設計原理 3 四 各個模組設計原理 4 4.1 分頻電路模組設計 5 4.2 秒計時器模組設計 7 4.3...