摘 要:電子鬧鐘是一種應用非常廣泛的日常計時工具,數字顯示的日歷鐘已經越來越流行,特別是適合在家庭居室、辦公室、大廳、會議室、車站和廣場等使用,壁掛式LED數碼管顯示的日歷鐘逐漸受到人們的歡迎。
首先介紹設計電子鬧鐘所涉及的主要硬件和特性,然后說明軟件設計的思路,程序結構及流程,并在測試軟件上進行調試和修改,以完成電子鬧鐘的基本要求,即可以隨意設定起始時間,有秒顯示功能,可以設定鬧鐘,停止時由電池供電等功能。
關鍵詞:單片機;集成電路;電子鬧鐘硬件;電子鬧鐘軟件
1 概述
電子鬧鐘在科學技術高度發展的今天,千家萬戶都少不了它,所以很多家庭個人都需要有一個電子鬧鐘,為人們提供報時方便。本文給出了一種以AT89S51單片機電子鬧鐘設計方法,從而給人們帶來更為方便的工作與生活。
1.1 電子鬧鐘發展趨勢
單片機電子鬧鐘是具發前鬧鐘創新性的系統,它代表了時代的發展趨勢。在原材料價格不斷上漲、下游渠道商實力膨脹、價格戰越來越激烈、行業利潤日趨微薄的背景下,日前,中國的電子鬧鐘在節能化、環保化、創新型轉變過程中,正進行新一輪鬧鐘賽跑。
1.2 電子鬧鐘的重要意義
20世紀末,電子技術獲得了飛速的發展,在其推動下,現代電子產品幾乎滲透了社會的各個領域,有力地推動了社會生產力的發展和社會信息化程度的提高,同時也使現代電子產品性能進一步提高,產品更新換代的節奏也越來越快。 時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人1.概述
忘記當前的時間。鐘表的數字化給人們生產生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、定時啟閉電路、定時開關烘箱、通斷動力設備,甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數字化為基礎的。因此,研究數字鐘及擴大其應用,有著非常現實的意義。
1.3 本課題研究的主要內容
首先介紹設計電子鬧鐘所涉及的主要硬件和特性,然后說明軟件設計的思路,程序結構及流程,并在測試軟件上進行調試修改,以完成電子鬧鐘的基本要求,即可隨意設定起始時間,有秒顯示功能,有12/24時制選擇,可設定鬧鐘,由電池供電等功能。
2 電子鬧鐘的系統設計
2.1 AT89S51單片機的特性
Atmel公司的AT89S51芯片具有以下特性:
(1) 指令集和芯片引腳與Intel公司的8051兼容;
(2) 4KB片內在系統可編程Flash程序存儲器;
(3) 時鐘頻率為0~33MHz;
(4) 128字節片內隨機讀寫存儲器(RAM);
(5) 32個可編程輸入/輸出引腳;
(6) 2個16位定時/計數器;
(7) 6個中斷源,2級優先級;
(8) 全雙工串行通信接口;
(9) 監視定時器;
(10) 2個數據指針。
單片機的最小應用系統電路指的是它可以正常工作的最簡單電路組成。AT89S51單片機的最小應用系統電路如圖1所示,該系統中包含4個電路部分:供電電路、程序存儲器選擇電路、時鐘電路、復位電路。
2.2 電子鬧鐘的硬件設計
2.2.1硬件選擇
單片機選用AT89S51型,它是一種帶4K字節閃爍可編程可擦除只讀儲存的低電壓、高性能CMOS8位微處理器,該器件采用ATMEL高密度非易失性存儲器制造技術與工業標準的MCS-51指令集和輸出管腳相兼容,由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT8951是一種高效微控制器,為很多嵌入控制系統提供了一種靈活性高且廉價的方案。
整體系統選用 AT89S51單片機,時鐘芯片DS1302,數碼管顯示驅動芯片MAX7219。共陰極數碼管8個,4511七段譯碼芯片1片, 24M晶振1個。
2.2.2系統組成
該數字鬧鐘包括以下幾個組成部分:(1) 顯示屏:由6個七段數碼管組成,用于顯示當前時間(時 分 秒)或設置的鬧鐘時間;(2) KEY鍵:用于輸入新的時間或新的鬧鐘時間時,對每位輸入數字的確認;(3) TIME(時間)鍵:用于確定新的時間設置; (4)鬧鐘鍵:用于確定新的鬧鐘時間設置,或顯示已設置的鬧鐘時間;(5) 揚聲器:在當前時鐘時間與鬧鐘時間相同時,發出響聲。
2.2.3系統設計
(1)控制器。控制器是電子鬧鐘設計的核心部分,按設計要求產生相應的控制邏輯,以控制其他各部分的工作。由程序計數器、指令寄存器、指令譯碼器、時序產生器和操作控制器組成,它是發布命令的“決策機構”,即完成協調和指揮整個計算機系統的操作。
(2)計數器。計數器實際上是一個異步復位、異步置位的累加器。通常情況下進行時鐘累加計數,必要時可以置入新的時鐘值,然后從該值開始新的計數。
(3)寄存器。寄存器用于保存用戶設置的鬧鐘時間,是一個異步復位寄存器。寄存器是中央處理器內的組成部份,是有限存貯容量的高速存貯部件,它們可用來暫存指令、數據和位址。
(4)分頻器。分頻器將高速的外部時鐘頻率分頻成每一分鐘一次的時鐘頻率,以便進行時鐘計數。由于石英晶體振蕩器產生的頻率很高,要得到秒脈沖,需要用分頻電路。
(5)顯示電路。顯示器根據需要顯示當前時間、用戶設置的鬧鐘時間或用戶通過鍵盤輸入的新時間,同時判斷當前時間是否已到了鬧鐘時間,實際上是一個多路選擇比較器。
(6)計時器。在計時過程中,系統利用89S51自身的計時器T0作為時鐘基準,計時器中斷的準確度直接關系到整個系統的精度,因此獲取精確的定時時鐘信號成為該系統的關鍵。AT89S51單片機內有2個可編程的16位定時器/計數器,并工作在方式l下,晶振頻率為12MHz。
電子鬧鐘的系統硬件電路如圖2所示
2.3 電子鬧鐘的軟件設計
AT89S5l內部定時/計數器T0和Tl設置為定時器模式l工作方式.作為電子時鐘及電子秒表的計時基準。定時器T0產生10 ms的中斷信號,每經過1t30次中斷,時鐘秒位加一,秒位經60次加一后向時位進位,當時問為23時59分59秒時,秒位再加一后變為00時00分00秒.當按鍵切換為電子秒表功能時,T0每產生一次中斷,十毫秒單元加一,十毫秒單元經過l0次加一后,百毫秒單元加一。軟件設計分為主程序、定時器T0和定時器T1中斷服務程序及相應的子程序。
2.3.1子程序及其功能簡介
(1) 比較程序
每當秒存儲單元的內容為0時,系統通過調用比較子程序可判斷當前時間是否符合鬧鈴條件,若符合,則調用發音子程序使蜂鳴器發出鬧鈴聲音。
(2) 檢測按鍵程序
當系統檢測到某個案件被按下時,轉到相應子程序處理,可實現校時、設定鬧鈴時間的功能
(3) 顯示程序
系統通過調用顯示子程序,可將顯示緩沖區里的內容通過動態掃描方式輸出到數碼管顯示器。
(4) 時間設置程序
系統通過按鍵檢測,更改顯示數值,從而實現對當前時間修改的功能。
2.3.2程序設計
我們利用芯片和軟件編程結合的思路。下面將對照程序的構成來闡述我對簡易鬧鐘的方案設計,具體設計方案如下:(一)在主程序中,填寫中斷向量表,應用8255A的IRQ7和IRQ5端。利用8253A和8259A完成計時一秒的功能,然后通過更新時間的子程序完成時間跳變的功能,待到新的時間判斷是否到達設定的鬧鐘的時間,如果是,則啟動揚聲器;如果否,則繼續進行顯示時間。(二)鬧鐘的時間是變化的,在更新時間的子程序中,首先判斷更改后的秒數是否小于10,如果是,則返回主程序;如果否,則秒的個位跳變成0,秒的十位加一;再次判斷秒的十位,過程同判斷秒的個位相同。(三)在顯示時間的子程序中,時間從0,0,0,0開始顯示。
3 系統的調試和性能分析
3.1 系統的調試方法
整個系統調試的主要思想是:先每個模塊進行調試,然后整個系統一起調試。先軟硬件分開調試,然后一起調試。遵循先部分后整體的原則。
系統的在調試過程中要注意以下幾點:
(1)硬件電路設計完之后,在上電之前一定要先用萬用表檢測電源和地之間是否短路。
(2)上電之后要用示波器觀察信號的在電路中變化的情況,與設計當初的情況相比較,找出差別,并進行分析。
(3)軟件調試過程中可以使用斷點、單步執行等常用的方法。
(4)軟硬件聯調時,要注意軟件部分要一個功能一個功能的調試。
3.2 系統的性能分析
系統能在設定的時間內鬧鈴,必須調用一次顯示子程序后才能再次取反,否則在發音期間不能顯示,而調用一次顯示子程序需要的時間大約為6ms(6位每位1ms),所以振蕩頻率f=1/T=1/(2*6ms)≈83Hz,顯然這個頻率過低。經測試,其時鐘誤差約為3秒/天,這是因為從定時器向CPU發出中斷申請信號到重裝定時初值的過程需要一定的時間。
本系統通過測試,能夠實現以下功能:(1)按鍵輸入(2)鬧鈴聲音(3)LED顯示。
4 結論
通過這次課程設計,使的我對這門功課有了更加深刻的了解,首先從硬件的工作原理有了進一步系統的學習,同樣有了進一步的認識,使我懂得了理論與實際相結合的重要性,光靠有理論知識是不夠的只有把所學的理論知識與實踐相互結合起來,才可以提高自己的實際動手能力和獨立思考的能力。其次在這次軟件設計中也有不足的地方,比如沒有實現鬧鈴功能,但是又不知道從哪個地方入手解決這個問題,這要求在以后的學習中,必須拓寬自己的知識面,以解決設計中得不足之處。總之,通過這次課程設計我不僅鞏固了對課本所學的基本知識,還使我具有了撰寫科研報告的初步訓練能力,我相信這些能力在我以后的學習或者工作中一定會起到不小的作用,一切的辛苦和艱難都是值得的。
經過不斷的努力讓電子鬧鐘能實現以下幾個功能:
能正確顯示鬧鐘的走時;
可以進行當前時間的設置;
可以設置鬧鐘時間,并能在時間到時發出響聲。
可是在這次設計中也遇到了許多困難的地方,例如:
單片機的系統設計,它的內置存儲器功能無法集成到芯片內部;
在電路應用中,在關閉電源后短時間內再次啟動電源,系統工作會不正常;
單片機與大功率LED燈共用一個電源,系統會出現死機,程序走亂得現象。
參考文獻
1.李捷.陳典濤等.一種應用單片機電子鬧鐘的設計與制作設計.農機化研究.2005
2.陳明熒.8051單片機課程設計實訓教材 北京:清華大學出版社 2004
3.胡漢才.單片機原理及其接口技術 北京:清華大學出版社 1995
4.徐淑華 程退安 姚萬生 .單片機微型機原理及應用 哈爾濱工業大學出版社1994
5.丁元杰.《單片機原理與應用》.機械工業出版社出版.2003年2月.58-67
6. 朱定華.《單片機原理及接口技術》.電子工業出版社出版.2004年5月.32-46
7. 何立民.《單片機應用系統設計系統配置與接
作者簡介
劉耀(1993-),男,漢,陜西,本科在讀,西安外事學院,學生。