找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3500|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)8位數(shù)碼管電子鐘的設(shè)計與制作

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1054077 發(fā)表于 2022-11-26 16:41 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
設(shè)計并制作一種基于STC89C52單片機(jī)的數(shù)碼管顯示電子時鐘,由8位數(shù)碼管顯示時、分、秒;自動計時,具有校準(zhǔn)功能,可設(shè)置當(dāng)前時間,具備定時啟鬧功能,可以設(shè)置啟鬧時間,啟鬧一定時間后自動關(guān)閉鬧鈴,主要內(nèi)容如下:
1.對MCU的內(nèi)部定時器、I/0口、鍵盤和顯示接口等知識能融匯貫通,初步形成獨(dú)立設(shè)計、制作和調(diào)試較簡單的單片機(jī)應(yīng)用系統(tǒng)的能力;
2.熟悉MCU應(yīng)用系統(tǒng)的硬件設(shè)計、模塊化程序設(shè)計及軟件調(diào)試方法,掌握單片機(jī)應(yīng)用系統(tǒng)的開發(fā)過程;
3.設(shè)計并制作出8位數(shù)碼管顯示電子鐘系統(tǒng),具有設(shè)置、校準(zhǔn)、鬧鈴等功能;
4.系統(tǒng)硬件設(shè)計與制作;
5.系統(tǒng)軟件設(shè)計;
6.系統(tǒng)軟、硬件聯(lián)合調(diào)試;
7.系統(tǒng)性能測試。
2 設(shè)計方案及系統(tǒng)原理
2.1 設(shè)計方案
圖2.1 8位數(shù)碼管電子鐘電路設(shè)計框圖
此次設(shè)計方案如圖2.1所示的設(shè)計框圖,以單片機(jī)為核心,由晶振電路模塊、復(fù)位電路模塊、按鍵電路模塊、蜂鳴器電路模塊(起整點(diǎn)報時的功能)、以及顯示模塊組成。在這次設(shè)計中采用LED數(shù)碼管顯示時、分、秒,以24小時計時方式,根據(jù)數(shù)碼管動態(tài)顯示原理來進(jìn)行顯示,用12MHz的晶振產(chǎn)生振蕩脈沖,定時器計數(shù)。
2.2 系統(tǒng)原理
圖2.2  8位數(shù)碼管電子鐘原理圖
電子鐘是一個將“ 時”,“分”,“秒”顯示于人的視覺器官的計時裝置。它的計時周期為24小時,顯示滿刻度為23時59分59秒,具有校時功能和定時功能。如圖2.2所示,一個基本的電子鐘電路主要由顯示電路、復(fù)位電路、時鐘電路以及蜂鳴器報警電路等部分組成。


2.2.2 復(fù)位電路
圖2.4  復(fù)位電路圖
復(fù)位電路的作用是使單片機(jī)的狀態(tài)處于初始化狀態(tài),讓單片機(jī)的程序從頭開始執(zhí)行。如圖2.4復(fù)位電路圖所示,C3和R1構(gòu)成單片機(jī)的上電自動復(fù)位電路。STC89C52單片機(jī)屬于高電平復(fù)位,RST管腳上需要持續(xù)兩個機(jī)器周期(24個時鐘周期)以上的高電平,單片機(jī)才能復(fù)位。復(fù)位原理:上電的瞬間,電源給C3充電,在R1產(chǎn)生壓降,R1上端為高電平,RST管腳檢測到高電平,單片機(jī)的各個寄存器清零或恢復(fù)初始狀態(tài),特別是PC計數(shù)器清零,程序便從頭開始執(zhí)行。如果C3、R1取值過大或過小都會引起單片機(jī)復(fù)位時間過長或過短,不利于單片機(jī)啟動。如果需要加手動復(fù)位,那就在C3兩端并聯(lián)一個按鈕即可。
2.2.3 時鐘電路
圖2.5  時鐘電路圖
時鐘電路作用是來配合晶振實現(xiàn)振蕩的電路,這樣可以為單片機(jī)提供運(yùn)行時鐘。如圖2.5時鐘電路圖所示,C1、C2和X1構(gòu)成單片機(jī)的時鐘源電路。C1和C2是晶振X1的負(fù)載電容,過大或過小都會影響晶振的頻率和幅度。STC89C52單片機(jī)對晶振負(fù)載電容的取值有明確的要求:在20pf到40pf之間,最佳值為30pf。X1的取值可從1MHz到24MHZ選擇,常用的是12MHz。因為51單片機(jī)12個時鐘周期為一個機(jī)器周期,用12MHz晶振,一個機(jī)器周期剛好是1us,編程時計時很方便。
2.2.4 顯示電路
圖2.6  顯示電路圖
顯示電路的作用是對控制電路的信號進(jìn)行放大。本次設(shè)計采用動態(tài)顯示法實現(xiàn)LED顯示,通過對每位數(shù)碼管的依次掃描,使對應(yīng)數(shù)碼管亮,能夠點(diǎn)亮數(shù)碼管后,就可以通過單片機(jī)控制數(shù)碼管顯示數(shù)字或字母。如圖2.6顯示電路圖所示,為了控制方便,我們將數(shù)碼管的a~dp引腳依次連接單片機(jī)的P0.0-P0.7引腳。因為是共陰極數(shù)碼管,所以位選應(yīng)接低電平,段選接高電平時,數(shù)碼管正常顯示。
2.2.5 按鍵控制電路
圖2.7  按鍵控制電路圖
按鍵模塊的作用是調(diào)節(jié)時間及設(shè)置鬧鐘時間。實際的電子鐘電路由于秒信號的精確性和不可能做到完全準(zhǔn)確無誤,加之電路中其它原因,電子鐘總會產(chǎn)生走時誤差的現(xiàn)象,因此,電路中就應(yīng)該有校準(zhǔn)時間的功能的電路。如圖2.7按鍵控制電路圖所示,此次設(shè)計中,K1控制復(fù)位功能;K2為暫停;K3為啟動;K4為調(diào)整,可切換時、分、秒的調(diào)整,從而進(jìn)行鬧鐘的設(shè)置;K5、K6分別為加一、減一。
2.2.6 蜂鳴器報警電路
圖2.8  蜂鳴器報警電路圖
圖2.8為蜂鳴器報警電路圖。它的作用是實現(xiàn)整點(diǎn)。蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電。由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O口是無法直接驅(qū)動的,所以要利用放大電路來驅(qū)動,這里使用三極管Q1來放大電流。當(dāng)單片機(jī)檢測到整點(diǎn)的時候,例如00-01-00時,單片機(jī)系統(tǒng)應(yīng)能發(fā)出信號使蜂鳴器發(fā)出“嘀、嘀、嘀”的聲音。
2.2.7 軟件程序設(shè)計
本設(shè)計中主程序主要實現(xiàn)顯示的初始化和調(diào)用各子程序工作的功能,讀取時間的子程序主要實現(xiàn)初始化,時間信息的采集和顯示段碼的碼的存取。設(shè)計中計時主要以定時器T0中斷完成,定點(diǎn)鬧鈴使用蜂鳴器來完成。當(dāng)端口有開關(guān)按下時,轉(zhuǎn)入相應(yīng)的功能程序,其主程序執(zhí)行流程圖如圖2.9所示:
圖2.9  主程序執(zhí)行流程圖
在時鐘狀態(tài)下,觸發(fā)外中斷1時,進(jìn)入鬧鐘時間設(shè)定模式,且不影響T0計時器的功能狀態(tài),在鍵盤上輸入對應(yīng)的數(shù)字進(jìn)行時間設(shè)定。鬧鐘時間設(shè)定流程圖如圖2.10所示:
圖2.10  鬧鐘時間設(shè)定流程圖
3 設(shè)計步驟和結(jié)果3.1 設(shè)計步驟
(1)先在Proteus上繪制硬件電路;
(2)使用Keil uVisio4進(jìn)行程序軟件編譯,生成.Hex文件;
(3)在以上兩步完成后,雙擊Proteus中的單片機(jī),把用Keil uVisio4編譯生成的.Hex文件指定為下載文件,點(diǎn)擊PLAY鍵即可進(jìn)行仿真;
(4)當(dāng)電路出現(xiàn)錯誤時,列表中說明了具體的錯誤,必須要先排錯才可以繼續(xù)進(jìn)行;
(5)仿真過程中,LED數(shù)碼管要能正常顯示時間;在LED數(shù)碼管顯示時間達(dá)到設(shè)定的鬧鐘時間時,蜂鳴器要響才算成功;
(6)根據(jù)Proteus繪制的硬件電路圖,首先在萬能板上進(jìn)行布局,方便接線;
(7)布局好后按照器件焊接原則進(jìn)行焊接,要求安裝正確。元器件無缺焊、錯焊,連結(jié)無誤,印制板焊點(diǎn)無虛焊、橋接等;
(8)注意三極管接線時需要仔細(xì)對照原理圖,不要接反接錯;
(9)焊接過程中,電烙鐵在焊接處停留的時間不宜過長,以免燙壞元件;烙鐵離開焊接處后,被焊接的零件不能立即移動,否則因焊錫尚未凝固而使零件容易脫焊;
(10)接通電源后,若電子鐘正常工作,即可;若不能正常工作,則對接線進(jìn)行檢查,看是否有虛接、錯接等情況,直至其功能得到實現(xiàn)。
3.2 實驗結(jié)果3.2.1 原理圖仿真結(jié)果
設(shè)置鬧鐘為:“00-01-00”,響鈴一分鐘。如圖3.1所示:
圖3.1 原理圖仿真結(jié)果
3.2.2 實物焊接結(jié)果
接通電源后,LED數(shù)碼管顯示從“00-00-00”開始運(yùn)行,此時按下調(diào)整鍵,將時間調(diào)至“00-01-00”。當(dāng)其再次運(yùn)行時,LED數(shù)碼管顯示時間已到達(dá)設(shè)定的鬧鐘時間,此時蜂鳴器響。實物焊接結(jié)果圖如圖3.2所示:
圖3.2 實物焊接結(jié)果圖

設(shè)計總結(jié)
此次設(shè)計整體論述了設(shè)計電子鐘的大致思路,然后再采用劃分模塊的方法將系統(tǒng)分為復(fù)位模塊、時鐘模塊、顯示模塊、按鍵模塊等部分。最后將各模塊集成為一個整體,合成一個多功能的電子鐘。在程序編寫的過程中,通過查閱不少的書籍以及參考一下網(wǎng)上一些可用的程序,我更加加深了對單片機(jī)的工作原理以及使用方法。同時,通過對實際的單片機(jī)最小系統(tǒng)的搭建與焊接,我更加掌握了單片機(jī)最小系統(tǒng)的硬件要求和焊接技術(shù)。

在這次設(shè)計中我深深地體會到了理論跟實踐的不同,理論學(xué)的再好不會動手那也只能是紙上談兵。了解了集成電路芯片的型號命名規(guī)律,懂得了沒有某種芯片時的替代方法,以及在網(wǎng)上查找電子電路資料的方法,掌握了各芯片的邏輯功能及使用方法,進(jìn)一步熟悉了集成電路的引腳安排,掌握了數(shù)字鐘的設(shè)計方法,明白了數(shù)字鐘的組成原理以及工作原理。掌握了計數(shù)器的工作原理,以及計數(shù)器進(jìn)制的組成方法和級聯(lián)方法,實現(xiàn)了一次理論指導(dǎo)實踐、理論向?qū)嵺`過渡的跨越,雖然期間遇到一些困難,但這些困難卻增強(qiáng)了我分析問題、解決問題的能力,使我以后不僅只學(xué)習(xí)書本中的理論知識,而且知道學(xué)以致用,動過動手實踐是我對書本中的理論知識掌握地跟牢固、理解地跟深刻,這對我今后的工作及學(xué)習(xí)有積極的影響。
這次設(shè)計不僅再次復(fù)習(xí)了數(shù)字電子和模擬電子,而且讓我對于芯片的使用更加了解。增加了我的動手操作能力,加深了對軟件使用的了解。這就是這次設(shè)計的成果,相信這些實際的操作經(jīng)驗會是我以后的寶貴財富。

以上圖文的Word格式文檔下載(內(nèi)容和本網(wǎng)頁上的一模一樣,方便大家保存):
8位數(shù)碼管電子鐘的設(shè)計與制作.docx (553.17 KB, 下載次數(shù): 39)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩1
回復(fù)

使用道具 舉報

沙發(fā)
ID:34441 發(fā)表于 2022-12-6 11:52 | 只看該作者
下載看看,學(xué)習(xí)下,正在學(xué)習(xí)單片機(jī)
回復(fù)

使用道具 舉報

板凳
ID:1103947 發(fā)表于 2023-12-12 17:19 | 只看該作者
能不能發(fā)一下代碼啊
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表