隨著電子技術的飛速發(fā)展,單片機的使用率越來越高。教學之余,為了激發(fā)學生對51單片機的學習興趣,我利用89C51制作了一款電子時鐘,經(jīng)驗證這款電子時鐘簡單實用,以至于班上的每個同學都制作一款。由于51系列單片機機展小巧、程序編寫簡、功能強大、價格便宜等優(yōu)點,由51單片機制作的小型智能產(chǎn)品越來越多,也是電子技術相關專業(yè)學生畢業(yè)設計的首選芯片(見圖1)。

1 電路設計流程框圖(見圖2)

2 基于89C51時鐘電路的方案及原理
基于89C51時鐘電路主要由主要由微處理器電路、LED數(shù)碼管顯示電路、鍵盤電路、顯示驅(qū)動電路、時鐘模塊、電源電路等組成。89C51的管腳及技術細節(jié)可以查閱有關手冊。電路模塊的基本工作過程是:
(1)顯示電路主要由兩片74HC595和7個LED共陰紅色數(shù)碼管、LED發(fā)光二極管及限流電阻組成。74HC595是數(shù)碼管和發(fā)光二極管的顯示驅(qū)動電路,是一種8位串行輸入、8位串行輸出或并行輸出的高速CMOS移位寄存器、8位并行輸出口具有三態(tài)輸出功能(即可被程控成高阻狀態(tài))。顯示電路采用動態(tài)掃描方式驅(qū)動數(shù)碼管,即數(shù)碼管的陰極和陽極都用74HC595驅(qū)動,微處理器控制將將要顯示的內(nèi)容(7位數(shù)字段碼)快速的分時送到LED兩端。這種設計的優(yōu)點是最大限度地降低了系統(tǒng)的硬件支出(與靜態(tài)顯示電路相比)。
(2)時鐘模塊電路DS12887是美國Dalls公司生產(chǎn)的實時時鐘芯片,采用CMOS技術制成,具有內(nèi)部晶振和時鐘芯片備份鋰電池。該芯片具有良好的微處理器接口(有Motorola和Intel兩種時序可供選擇,在本系統(tǒng)中采用Intel時序)。芯片內(nèi)含128個字節(jié)RAM單元與軟件接口,其中14個字節(jié)作為時鐘和控制寄存器。114個字節(jié)為通用RAM(在本系統(tǒng)中未用),所有RAM單元都具有掉電保護功能。采用該芯片作為該系統(tǒng)的實時時鐘基準,是為了保證時鐘運行的高精度。
(3)鍵盤是單片機的主要輸入設備,是時間設置和控制的人機接口。本系統(tǒng)中設計了16個鍵,本系統(tǒng)中實際使用9個鍵,其余7個鍵留備系統(tǒng)擴展用。16個按鍵的硬件連接方式是4×4矩陣。單片機對鍵盤狀態(tài)的檢測是通過動態(tài)掃描方式進行的。這樣做的目的是大大減少了鍵盤電路所占用的單片機端口線的數(shù)量。16個鍵的鍵值讀取占用了8根I/O口線(P2口)。如果采用靜態(tài)鍵盤方式,則需占用16根口線。另外,這個鍵盤具有連擊功能,即按下某一鍵達到一定時長后,該鍵對應的功能將得到反復執(zhí)行。利用這個連擊功能,可以快速地調(diào)整時鐘和輸入鬧鐘程序。
3 軟件編程主程序流程框圖(見圖3)

4 定時鬧鐘掃描子程序
該子程序的功能是:將事先編好的鬧鐘程序代碼從EEPROM中逐條讀出,并與當前的實時時鐘進行一次比較。若某一條鬧鐘程序的語句(下面有說明)中的時間代碼與當前的實時時鐘相同,則執(zhí)行該語句對應的鬧鐘功能。否則掃描下一條語句,直至鬧鐘程序末。
鬧鐘程序:所以鬧鐘語句的集合鬧鐘語句:由一個時代碼、一個分代碼和一個鬧鐘時長代碼組成。一條鬧鐘語句定義一個鬧鐘操作。鬧鐘程序存放在EEPROM芯片(型號AT24C16)中,AT24C16是ATMEL公司生產(chǎn)的電擦電寫串行存儲器,容量是2K字節(jié)。一周的鬧鐘程序被編成7頁,一天一頁,每一頁占256個字節(jié),AT24C16中剩下的256個字節(jié)留備用。
每條鬧鐘語句分配4個字節(jié):
第一個字節(jié):存放“時”代碼(指定 時)
第二個字節(jié):存放“分”代碼(指定 分)
第三個字節(jié):存放“時長”代碼(控制鬧鐘時間長短)
第四個字節(jié):未用。
因為一頁占256個字節(jié),那么一頁中可存放約60條鬧鐘語句,即在一天中最多可設置60個鬧鐘點。定時鬧鐘程序流程框圖(見圖4)。

5 結論
以89C51為核心制作的數(shù)字時鐘,經(jīng)過電路調(diào)試和軟件調(diào)試,可以實時時鐘的顯示和調(diào)整、整點報時、定時鬧鐘的設定、以一周為周期的鬧鐘功能。
責任編輯:YYX
-
單片機
+關注
關注
6078文章
45565瀏覽量
673233 -
89C51
+關注
關注
2文章
108瀏覽量
33060 -
時鐘電路
+關注
關注
10文章
247瀏覽量
53942 -
電子時鐘
+關注
關注
11文章
210瀏覽量
26922
發(fā)布評論請先 登錄
89c51是什么
89C51單片機的結構和原理
X25165與89C51的接口電路
基于AT89C51單片機的電子數(shù)字時鐘電路的設計制作開題報告講解
基于89C51的OLED屏顯示
基于89C51時鐘電路的設計與制作
評論