




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、摘 要時間是現(xiàn)代社會中不可缺少的一項(xiàng)參數(shù),無論是平時生活還是社會生產(chǎn)都需要對時間進(jìn)行控制,有的場合對其精確性還有很高的要求.采用單片機(jī)進(jìn)行計(jì)時,對于社會生產(chǎn)有著十分重要的作用。本文首先介紹了單片機(jī)和時鐘的概念,然后根據(jù)設(shè)計(jì)要求提出系統(tǒng)總體設(shè)計(jì)方案,并設(shè)計(jì)各部分硬件模塊和軟件模塊,再用設(shè)計(jì)的具體軟件程序,用PROTEUS軟件進(jìn)行仿真和調(diào)試,結(jié)果證明該設(shè)計(jì)系統(tǒng)的可行性。由于AT89S51系列單片機(jī)的控制器運(yùn)算能力強(qiáng),處理速度快,可以精確計(jì)時,很好地解決了實(shí)際生產(chǎn)生活中對計(jì)時高精確度的要求,因此該設(shè)計(jì)在現(xiàn)代社會中具有廣泛的適用性。關(guān)鍵詞:單片機(jī);定時;報(bào)時;設(shè)計(jì)目 錄 第1章 簡介1一、基于單片機(jī)的
2、數(shù)字鐘介紹1 二、本系統(tǒng)的特點(diǎn)和功能介紹1第2章 硬件設(shè)計(jì)1 一、 總體設(shè)計(jì)方案1 二、 硬件結(jié)構(gòu)設(shè)計(jì)2 1、51單片機(jī)的最小系統(tǒng) 2 2、顯示部分設(shè)計(jì)3 3、電源部分設(shè)計(jì)4 4、串口通信部分設(shè)計(jì)4 5、報(bào)時部分的設(shè)計(jì)4 6、鍵盤部分的設(shè)計(jì)5 7、總體硬件電路圖5第3章 軟件設(shè)計(jì)6 一、部分設(shè)計(jì)思想的說明6 二、參考程序9總結(jié)12參考文獻(xiàn)1316第一章 簡介一、基于單片機(jī)的數(shù)字鐘介紹1.單片機(jī)定義:“單片機(jī)”就是將計(jì)算機(jī)的基本部件集成到一塊芯片上,包括CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Mem
3、ory)、并行口(Parallel Port)、串行口(Serial Port)、定時器計(jì)數(shù)器(Timer/Counter)、中斷系統(tǒng)(Interrupt System)、系統(tǒng)時鐘及系統(tǒng)總線等。2數(shù)字鐘介紹:時鐘是將小時、分鐘、秒鐘顯示于人的肉眼的計(jì)時裝置。而單片機(jī)模塊中最常見的正是數(shù)字鐘,數(shù)字鐘是一種用數(shù)字電路技術(shù)實(shí)現(xiàn)時、分、秒計(jì)時的裝置,與機(jī)械式時鐘相比具有更高的準(zhǔn)確性和直觀性,且無機(jī)械裝置,具有更長的使用壽命,因此得到了廣泛的使用。而LED電子定時時鐘是以單片機(jī)為基礎(chǔ)的數(shù)字電路實(shí)現(xiàn)對時、分、秒的數(shù)字顯示的數(shù)字計(jì)時裝置,它的計(jì)時周期為12小時,另外應(yīng)有校時功能和一些顯示日期、鬧鐘等附加功能
4、。由于時鐘的實(shí)用性和在人們生活中的重要性,所以嘗試設(shè)計(jì)以單片機(jī)為核心的數(shù)字時鐘是很有意義的。鐘表原先的報(bào)時功能已經(jīng)原不能滿足人們?nèi)找嬖鲩L的要求,現(xiàn)代的電子時鐘多帶有類似自動報(bào)警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等功能。 二、本系統(tǒng)的特點(diǎn)和功能介紹1 特點(diǎn):我所設(shè)計(jì)的是LED顯示的自動報(bào)時系統(tǒng),是一種基于單片機(jī)技術(shù)的電子產(chǎn)品,用到的單片機(jī)芯片是AT89C52芯片,除此之外還包括晶振電路和復(fù)位電路構(gòu)成單片機(jī)最小應(yīng)用系統(tǒng),還有按鍵電路,顯示電路,報(bào)時電路等等。計(jì)時方案采用軟件控制利用AT89C52單片機(jī)內(nèi)部的定時/計(jì)數(shù)器進(jìn)行定時,配合軟
5、件延時實(shí)現(xiàn)時、分的計(jì)時。2本單片機(jī)報(bào)時控制系統(tǒng)具備以下功能(1)有電子時鐘,定時鬧鈴功能。(2)時鐘顯示功能:4位LED從左到右依次顯示“分分秒秒”,采用12小時制顯示。(3)采用4個獨(dú)立按鍵(移位鍵、加1鍵、減1鍵、校時置入鍵)移位鍵:每按動移位鍵一次,小數(shù)點(diǎn)從左向右移動1位。加1鍵:對小數(shù)點(diǎn)所在位的數(shù)什進(jìn)行十進(jìn)制加1。減1鍵:對小數(shù)點(diǎn)所在位的數(shù)值進(jìn)行十進(jìn)制減1。校時置入鍵:將顯示的時間值置入實(shí)時時鐘的計(jì)時緩沖區(qū)。(4)預(yù)設(shè)定時時間到則發(fā)出鬧鈴聲第二章 硬件設(shè)計(jì)一、總體設(shè)計(jì)方案本LED定時鬧鐘,是以單片機(jī)及外圍接口電路為核心硬件,輔以其他外圍硬件電路,用軟件程序來實(shí)現(xiàn)的。單片機(jī)定時報(bào)時控制系
6、統(tǒng)硬件原理圖見設(shè)計(jì)原理圖如下圖所示。主控制器AT89C52晶振LED顯示電路復(fù)位電路報(bào)時電路鍵盤電路圖2-1 總體設(shè)計(jì)方框圖二、硬件結(jié)構(gòu)設(shè)計(jì) 1、51單片機(jī)的最小系統(tǒng) (見圖2-2、2-3、2-4所示)在晶振電路中XTAL1、XTAL2為AT89C52中連接晶振的管腳,本系統(tǒng)中所使用的晶振頻率為12MHZ 。XTAL1為振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端,XTAL2為振蕩器反相放大器的輸出端。其中電容C18、C19起著系統(tǒng)時鐘頻率微調(diào)的作用,因此,在本定時報(bào)時系統(tǒng)的實(shí)際應(yīng)用中一定要注意正確選擇參數(shù)(30±10PF),并保證對稱性(盡可能匹配),可能的話,溫度系數(shù)要盡可能的低。實(shí)
7、驗(yàn)表明這兩個電容元件對時鐘走時誤差有較大關(guān)系。本系統(tǒng)采用了RC復(fù)位電路,其實(shí)現(xiàn)簡單,成本低,但復(fù)位可靠性相對較低。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。2、顯示部分設(shè)計(jì)用4位LED七段數(shù)碼管作為顯示器,到達(dá)定時時根據(jù)計(jì)時系統(tǒng)的輸出狀態(tài)產(chǎn)生一脈沖信號,然后去觸發(fā)一音頻發(fā)生器實(shí)現(xiàn)報(bào)時。其驅(qū)動電路簡單。采用了兩片74HC595來驅(qū)動段碼,8個510歐姆的限流電阻。圖2-2 引腳圖 圖2-3 晶振 圖2-4 復(fù)位電路 圖2-4 LED顯示器圖2-5 顯示驅(qū)動部分 3、電源部分設(shè)計(jì)如果是用電池供電,就比較方便攜帶,但是本系統(tǒng),采用了數(shù)碼管作為顯示器,功耗較大,需要經(jīng)常更換電
8、池。況且,本系統(tǒng)的體積較大,即使使用電池供電也不能隨身攜帶,因此,用電池供電不大合適,所以用外部穩(wěn)壓電源來供電。應(yīng)當(dāng)說明的是,盡管有很多型號的7805三端穩(wěn)壓集成芯片,其標(biāo)稱最大輸出電流均為1.5v,但在實(shí)際應(yīng)用中,該最大的輸出電流值往往取決于兩個方面:足夠的散熱面積和不同的成產(chǎn)廠家。在設(shè)計(jì)中必須保證7805的輸入電壓Vi和輸出電壓Vo的壓差大于2.5v,否則會失去穩(wěn)壓能力;同時考慮到功耗問題,此壓差有不宜太大,太大則增加7805本身的功率消耗,增加芯片的溫升,不利于安全。因此,本系統(tǒng)采用9v直流穩(wěn)壓源。圖2-6 電源電路 4、串口通部分塊設(shè)計(jì)軟件程序可通過此口寫入51單片機(jī)中,其原理圖如圖2
9、-7所示。5、報(bào)時部分的設(shè)計(jì)報(bào)時指示可以有聲或光兩種形式,本系統(tǒng)采用聲音指示。關(guān)鍵元件是蜂鳴器,蜂鳴器有無源和有源兩種,前者需要輸入聲音頻率信號才能正常發(fā)聲,后者則只需外加適當(dāng)直流電源電壓即可,元件內(nèi)部已封裝了音頻震蕩電路,在得電狀態(tài)下即起振發(fā)聲。市場上的有源蜂鳴器分為3V、5V、6V等系列,以適應(yīng)不同的應(yīng)用需要,本系統(tǒng)采用5V有源蜂鳴器實(shí)現(xiàn)報(bào)時。由軟件產(chǎn)生方波輸出經(jīng)三極管放大后驅(qū)動蜂鳴器發(fā)音,不用硬件振蕩電路,電路圖如圖2-8所示。圖2-7 串口通信電路 圖2-8 報(bào)時電路 6、鍵盤部分的設(shè)計(jì)如果設(shè)置過多按鍵,將會占用較多I/O口,而且會給布線帶來不便,因此采用4個獨(dú)立按鍵。由于按鍵較少,在
10、修改時間時就不能直接輸入,只能通過加或減完成,稍為麻煩一些,但其程序簡單,而且并不需要經(jīng)常修改時間。圖2-9 鍵盤電路 7、總體硬件電路圖 通過Proteus畫出的總體硬件電路圖如下所示。圖2-10 總體硬件電路圖第三章 軟件設(shè)計(jì)一、部分設(shè)計(jì)思想的說明軟件設(shè)計(jì)的重點(diǎn)在于秒脈沖信號的產(chǎn)生、顯示的實(shí)現(xiàn)、以及按鍵的處理等?;谲浖拿朊}沖信號通常有延時法和中斷法。延時法一般采用查詢方式,在延時子程序前后必然需要查詢和處理的程序,導(dǎo)致誤差的產(chǎn)生,因此其秒脈沖精度不高;中斷法的原理是,利用單片機(jī)內(nèi)部的定時器溢出中斷來實(shí)現(xiàn) 。本系統(tǒng)中所使用的晶振頻率為12MHZ,采用中斷的方法實(shí)現(xiàn)計(jì)時操作。根據(jù)工作流程,
11、軟件設(shè)計(jì)可分為以下幾個功能模塊:1、主程序:是系統(tǒng)軟件的主框架。結(jié)構(gòu)化程序設(shè)計(jì)一般有“自上而下”和“自下而上”兩種方式,“自上而下”法的核心就是主框架的構(gòu)建。它的合理與否關(guān)系到程序最終的功能的多少和性能的好壞。其流程圖見圖3-12、計(jì)時:系統(tǒng)定時采用定時器與軟件循環(huán)相結(jié)合的方法。定時器0每隔100MS溢出中斷1次,則循環(huán)中斷10次延時時間為1S,上述過程重復(fù)60次為1MIN,分計(jì)時60次為1H,小時計(jì)時12次則時間重新回到00:00,如果使用時鐘芯片,系統(tǒng)就不怕掉電且時間精確。但這種芯片比較貴,況且,設(shè)計(jì)本系統(tǒng)主要是為了學(xué)習(xí)單片機(jī)程序的編寫和調(diào)試以及設(shè)計(jì)硬件電路的一些方法,因此采用軟件的方法來
12、計(jì)時而沒有采用價格較高的時鐘芯片系統(tǒng)初始化定時器初始化定時器初始化串口初始化顯示待機(jī)指示符設(shè)定鬧鈴時間判設(shè)置鬧鈴時間否?顯示刷新啟動走時有關(guān)變量初始化刷新顯示判斷日期是否變化化否?秒指示判斷時間是否變化鬧鈴判是否到鬧鈴時間?延時YYYY圖3-1 主函數(shù)流程圖3、時間設(shè)置:由鍵盤出入設(shè)置當(dāng)前時間4、LED數(shù)碼管掃描顯示:完成4位LED顯示5、鍵盤掃描:判斷是否有鍵按下,無鍵按下則循環(huán)等待,有鍵按下則求承諾鍵號并將鍵號送累加器A返回。程序中的去抖延時和循環(huán)等待延時都用顯示子程序來代替,從而保證隨時刷新顯示,軟件的去抖動的實(shí)質(zhì)是軟件延時,即檢測到某一鍵狀態(tài)發(fā)生變化后延時一段時間,再檢測該按鍵的狀態(tài)是
13、否還保持著,如是則作為按鍵處理,否則,視為抖動,不予理睬。去抖中的延時時間一般參考資料多描述為10ms,實(shí)際應(yīng)用中,應(yīng)大于20ms,會導(dǎo)致按一次作多次處理,影響程序正常執(zhí)行。鍵盤管理程序的功能是檢測有無鍵閉和,如有鍵閉和,消除抖動,根據(jù)鍵號轉(zhuǎn)接到相應(yīng)的鍵處理程序。其程序流程圖如圖3-26、報(bào)時處理:判斷時間是否到否,如時間到,則啟動報(bào)時處理程序。鬧鈴判別與鬧鈴處理的關(guān)鍵在于判別何時要進(jìn)行鬧鈴,當(dāng)任一位發(fā)生改變(進(jìn)位)時,就必須進(jìn)行鬧鈴判別,比較當(dāng)前計(jì)數(shù)時間與定時時間是否相等,若相等則將鬧鈴標(biāo)志位置數(shù),開始響鈴。為了避免響鈴影響顯示,采用了每顯示幾屏以后在顯示程序中出現(xiàn)脈沖,驅(qū)動蜂鳴器,不會影響
14、顯示。之后對按鍵進(jìn)行判斷,程序設(shè)計(jì)思想如圖3-3。開始置P2口為輸入方式延時12ms消除鍵抖動0#鍵功能程序有鍵閉合否P2.0=0?P2.1=0?P2.2=0?1#鍵功能程序2#鍵功能程序有鍵閉合否NNNNNYYYYY 圖3-2 鍵盤管理程序流程圖 分十位、個位,秒十位、個位改變了設(shè)置鬧鈴標(biāo)志是否設(shè)置了鬧鈴清除鬧鈴標(biāo)志判當(dāng)前時間是設(shè)定時間中斷返回中斷返回鬧鈴判別處理 圖3-3 鬧鈴實(shí)現(xiàn)思想流程圖二、參考程序#include<reg52.h>#define uchar unsigned char#define uint unsigned intucharcode seg17=0xfc
15、,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0xee,0x3e,0x9c,0x7a,0x9e,0x8e,0x00;uint min,sec,hour,sec1,sec2,min1,min2,n,hour1,hour2;sbit beep=P14; ;位尋址,P1.4接的蜂鳴器void delay(uchar tt) ;延時處理 uchar i;for(;tt>0;tt-)for(i=0;i<200;i+);void LED(uchar d1,uchar d2) ;顯示部分 INT0=0;SBUF=d2;while(!TI);TI=0;
16、SBUF=d1;while(!TI);TI=0;INT0=1;void init1() ;初始化變量 min=0;sec=0;hour=0;sec1=0;sec2=0;min1=0;min2=0;hour1=0;hour2=0;TMOD = 0x01;TH0 = (0xffff-50000)/256;TL0 = (0xffff-50000)%256;IE=0x82;TR0 = 1;void clock() ;報(bào)時處理 if(min=00&sec=04)beep=0;delay(100);beep=1;void TT() interrupt 1 ;定時器0中斷處理函數(shù)入口 TH0 = (
17、0xffff-50000)/256;TL0 = (0xffff-50000)%256; n+; if( 20=n ) n=0; sec+; if(sec=60) sec=0; min+; if(min=60) min=0; hour+; if(hour=12) hour=0; sec1=sec/10; sec2=sec%10; min1= min/10; min2=min%10; hour1= hour/10; hour2= hour%10; main() ;主函數(shù)入口 SCON=0x00;init1();while(1) clock();LED(segmin1,0xef);delay(10)
18、;LED(segmin2,0xdf);delay(10);LED(segsec1,0xbf);delay(10);LED(segsec2,0x7f);delay(10);總 結(jié)由于時間,還有能力與精力的關(guān)系,對程序還不完善,鍵盤處理部分的程序未能加入進(jìn)去,該系統(tǒng)還需要以后進(jìn)行完善。 通過本次的課程設(shè)計(jì),我學(xué)會了單片機(jī)的一般設(shè)計(jì)過程,通常都要進(jìn)行系統(tǒng)擴(kuò)展與配置,因此,要完成一個單片機(jī)的設(shè)計(jì)工作,必須依次做到下述工作:1、硬件電路的設(shè)計(jì)、組裝與調(diào)試;2、應(yīng)用軟件的編寫、調(diào)試;3、完整應(yīng)用軟件的調(diào)試、固化和脫機(jī)運(yùn)行。而在進(jìn)行硬件系統(tǒng)設(shè)計(jì)時我們應(yīng)當(dāng)盡量做到:(1)、盡可能的選擇典型電路,并符合單片機(jī)的常規(guī)使用方法;(2)、在充分滿足系統(tǒng)功能要求前提下,留余地以便于二次開發(fā);(3
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年小學(xué)防觸電測試題及答案
- 2025年大學(xué)生信息課試題及答案
- 2025年觀賞樹木學(xué)試題及答案
- 2025年直播電商考試題及答案
- 2025年攜程客服測試題及答案
- 2025年男生婚前測試試題及答案
- 2025年咸菜釣魚測試題及答案
- 《電商品流通企業(yè)會計(jì) 第4版》課件 第4章批發(fā)商品流通
- 2025年江蘇中考化學(xué)試題及答案
- 2025年奧數(shù)比的應(yīng)用試題及答案
- 2025年湖南中醫(yī)藥高等專科學(xué)校高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 戶外拓展訓(xùn)練基地項(xiàng)目策劃方案
- 《小兔子安家》(說課稿)-2024-2025學(xué)年一年級下冊數(shù)學(xué)北師大版
- 小學(xué)生人際交往能力培養(yǎng)的實(shí)踐研究
- 綜合與實(shí)踐 白晝時長規(guī)律的探究說課稿 2024-2025學(xué)年人教版數(shù)學(xué)七年級下冊
- 2025年春新人教版數(shù)學(xué)七年級下冊教學(xué)課件 7.4 平移
- 廣西河池市(2024年-2025年小學(xué)六年級語文)統(tǒng)編版隨堂測試(下學(xué)期)試卷及答案
- 年產(chǎn)1500臺半導(dǎo)體制冷加熱控溫系統(tǒng)、700臺溫箱控溫單元柜技術(shù)改造及擴(kuò)產(chǎn)項(xiàng)目環(huán)評資料環(huán)境影響
- 高速鐵路建設(shè)工模具管理辦法
- 江蘇省南京市2024年中考英語試題(含解析)
- 2025年匯成集團(tuán)招聘筆試參考題庫含答案解析
評論
0/150
提交評論