基于單片機(jī)的簡易電子時鐘設(shè)計_第1頁
基于單片機(jī)的簡易電子時鐘設(shè)計_第2頁
基于單片機(jī)的簡易電子時鐘設(shè)計_第3頁
基于單片機(jī)的簡易電子時鐘設(shè)計_第4頁
基于單片機(jī)的簡易電子時鐘設(shè)計_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

基于單片機(jī)的簡易電子時鐘設(shè)計1設(shè)計任務(wù)與要求1.1設(shè)計背景數(shù)字鐘已成為人們?nèi)粘I钪斜夭豢缮俚谋匦杵?,廣泛用于個人家庭以及辦公室等公共場所,給人們的生活、學(xué)習(xí)、工作、娛樂帶來極大的方便。由于數(shù)字集成電路技術(shù)的開展和采用了先進(jìn)的石英技術(shù),使數(shù)字鐘具有走時準(zhǔn)確、性能穩(wěn)定、攜帶方便等優(yōu)點,它還用于計時、自動報時及自動控制等各個領(lǐng)域。盡管目前市場上已有現(xiàn)成的數(shù)字鐘集成電路芯片出售,價格廉價、使用也方便,但鑒于單片機(jī)的定時器功能也可以完成數(shù)字鐘電路的設(shè)計,因此進(jìn)行數(shù)字鐘的設(shè)計是必要的。在這里我們將已學(xué)過的比擬零散的數(shù)字電路的知識有機(jī)的、系統(tǒng)的聯(lián)系起來用于實際,來培養(yǎng)我們的綜合分析和設(shè)計電路,寫程序、調(diào)試電路的能力。單片機(jī)具有體積小、功能強(qiáng)可靠性高、價格低廉等一系列優(yōu)點,不僅已成為工業(yè)測控領(lǐng)域普遍采用的智能化控制工具,而且已滲入到人們工作和和生活的各個角落,有力地推動了各行業(yè)的技術(shù)改造和產(chǎn)品的更新?lián)Q代,應(yīng)用前景廣闊。1.2課程設(shè)計目的(1)穩(wěn)固、加深和擴(kuò)大單片機(jī)應(yīng)用的知識面,提高綜合及靈活運(yùn)用所學(xué)知識解決工業(yè)控制的能力;(2)培養(yǎng)針對課題需要,選擇和查閱有關(guān)手冊、圖表及文獻(xiàn)資料的自學(xué)能力,提高組成系統(tǒng)、編程、調(diào)試的動手能力;(3)過對課題設(shè)計方案的分析、選擇、比擬、熟悉單片機(jī)用系統(tǒng)開發(fā)、研制的過程,軟硬件設(shè)計的方法、內(nèi)容及步驟。1.3設(shè)計要求1〕.時制式為24小時制。2〕.采用LED數(shù)碼管顯示時、分,秒采用數(shù)字顯示。3〕.具有方便的時間調(diào)校功能。4〕.計時穩(wěn)定度高,可精確校正計時精度。2總體方案設(shè)計2.1實現(xiàn)時鐘計時的根本方法利用MCS-51系列單片機(jī)的可編程定時/計數(shù)器、中斷系統(tǒng)來實現(xiàn)時鐘計數(shù)。(1)計數(shù)初值計算:把定時器設(shè)為工作方式1,定時時間為50ms,那么計數(shù)溢出20次即得時鐘計時最小單位秒,而100次計數(shù)可用軟件方法實現(xiàn)。假設(shè)使用T/C0,方式1,50ms定時,fosc=12MHz。那么初值X滿足〔216-X〕×1/12MHz×12μs=50000μsX=15536→→3CB0H(2)采用中斷方式進(jìn)行溢出次數(shù)累計,計滿20次為秒計時〔1秒〕;(3)從秒到分和從分到時的計時是通過累加和數(shù)值比擬實現(xiàn)。2.2電子鐘的時間顯示電子鐘的時鐘時間在六位數(shù)碼管上進(jìn)行顯示,因此,在內(nèi)部RAM中設(shè)置顯示緩沖區(qū)共8個單元。LED8LED7LED6LED5LED4LED3LED2LED137H36H35H34H33H32H31H30H時十位時個位分隔分十位分個位分隔秒十位秒個位2.3電子鐘的時間調(diào)整電子鐘設(shè)置3個按鍵通過程序控制來完成電子鐘的時間調(diào)整。A鍵調(diào)整時;B鍵調(diào)整分;C鍵復(fù)位2.4總體方案介紹2.4.1計時方案利用AT89S51單片機(jī)內(nèi)部的定時/計數(shù)器進(jìn)行中斷時,配合軟件延時實現(xiàn)時、分、秒的計時。該方案節(jié)省硬件本錢,且能使讀者在定時/計數(shù)器的使用、中斷及程序設(shè)計方面得到鍛煉與提高,對單片機(jī)的指令系統(tǒng)能有更深入的了解,從而對學(xué)好單片機(jī)技術(shù)這門課程起到一定的作用。2.4.2控制方案AT89S51的P0口和P2口外接由八個LED數(shù)碼管(LED8~LED1)構(gòu)成的顯示器,用P0口作LED的段碼輸出口,P2口作八個LED數(shù)碼管的位控輸出線,P1口外接四個按鍵A、B、C構(gòu)成鍵盤電路。AT89S51是一種低功耗,高性能的CMOS8位微型計算機(jī)。它帶有8KFlash可編程和擦除的只讀存儲器〔EPROM〕,該器件采用ATMEL的高密度非易失性存儲器技術(shù)制造,與工業(yè)上標(biāo)準(zhǔn)的80C51和80C52的指令系統(tǒng)及引腳兼容,片內(nèi)Flash集成在一個芯片上,可用與解決復(fù)雜的問題,且本錢較低。簡易電子鐘的功能不復(fù)雜,采用其現(xiàn)有的I/O便可完成,所以本設(shè)計中采用此的設(shè)計方案。3系統(tǒng)硬件電路設(shè)計根據(jù)以上的電子時鐘的設(shè)計要求可以分為以下的幾個硬件電路模塊:單片機(jī)模塊、數(shù)碼顯示模塊與按鍵模塊,模塊之間的關(guān)系圖如下面得方框電路圖1所示。圖1硬件電路方框圖3.1單片機(jī)模塊設(shè)計3.1.1芯片分析AT89C51單片機(jī)引腳圖如下:圖2AT89C51引腳圖MCS-51單片機(jī)是標(biāo)準(zhǔn)的40引腳雙列直插式集成電路芯片,其各引腳功能如下:VCC:+5V電源。VSS:接地。RST:復(fù)位信號。當(dāng)輸入的復(fù)位信號延續(xù)兩個機(jī)器周期以上的高電平時即為有效,用完成單片機(jī)的復(fù)位初始化操作。XTAL1和XTAL2:外接晶體引線端。當(dāng)使用芯片內(nèi)部時鐘時,此二引線端用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時鐘時,用于接外部時鐘脈沖信號。P0口:P0口為一個8位漏極開路雙向I/O口,當(dāng)作輸出口使用時,必須接上拉電阻才能有高電平輸出;當(dāng)作輸入口使用時,必須先向電路中的鎖存器寫入“1〞,使FET截止,以防止鎖存器為“0〞狀態(tài)時對引腳讀入的干擾。P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,它不再需要多路轉(zhuǎn)接電路MUX;因此它作為輸出口使用時,無需再外接上拉電阻,當(dāng)作為輸入口使用時,同樣也需先向其鎖存器寫“1〞,使輸出驅(qū)動電路的FET截止。P2口:P2口電路比P1口電路多了一個多路轉(zhuǎn)接電路MUX,這又正好與P0口一樣。P2口可以作為通用的I/O口使用,這時多路轉(zhuǎn)接電路開關(guān)倒向鎖豐存器Q端。P3口:P3口特點在于,為適應(yīng)引腳信號第二功能的需要,增加了第二功能控制邏輯。當(dāng)作為I/O口使用時,第二功能信號引線應(yīng)保持高電平,與非門開通,以維持從鎖存器到輸出端數(shù)據(jù)輸出通路的暢通。當(dāng)輸出第二功能信號時,該位應(yīng)應(yīng)置“1〞,使與非門對第二功能信號的輸出是暢通的,從而實現(xiàn)第二功能信號的輸出,具體第二功能如表1所示。3.1.2晶振電路右圖所示為時鐘電路原理圖,在AT89S51芯片內(nèi)部有一個高增益反相放大器,其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。而在芯片內(nèi)部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個穩(wěn)定的自激振蕩器。時鐘電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器進(jìn)行二分頻之后,才成為單片機(jī)的時鐘脈沖信號。圖3晶振電路3.1.3復(fù)位電路單片機(jī)復(fù)位的條件是:必須使RST/VPD或RST引〔9〕加上持續(xù)兩個機(jī)器周期〔即24個振蕩周期〕的高電平。例如,假設(shè)時鐘頻率為12MHz,每機(jī)器周期為1μs,那么只需2μs以上時間的高電平,在RST引腳出現(xiàn)高電平后的第二個機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常見的復(fù)位如下圖。電路為上電復(fù)位電路,它是利用電容充電來實現(xiàn)的。在接電瞬間,RESET端的電位與VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。只要保證RESET為高電平的時間大于兩個機(jī)器周期,便能正常復(fù)位。該電路除具有上電復(fù)位功能外,假設(shè)要復(fù)位,只需按圖中的RESET鍵,此時電源VCC經(jīng)電阻R1、R2分壓,在RESET端產(chǎn)生一個復(fù)位高電平。圖4單片機(jī)復(fù)位電路3.2數(shù)碼顯示模塊設(shè)計系統(tǒng)采用動態(tài)顯示方式,用P0口來控制LED數(shù)碼管的段控線,而用P2口來控制其位控線。動態(tài)顯示通常都是采用動態(tài)掃描的方法進(jìn)行顯示,即循環(huán)點亮每一個數(shù)碼管,這樣雖然在任何時刻都只有一位數(shù)碼管被點亮,但由于人眼存在視覺殘留效應(yīng),只要每位數(shù)碼管間隔時間足夠短,就可以給人以同時顯示的感覺。圖5數(shù)碼顯示電路3.3按鍵模塊下列圖為按鍵模塊電路原理圖,A為復(fù)位鍵,B為時鐘調(diào)控鍵,C為分鐘調(diào)控鍵。圖6按鍵模塊電路原理圖4、系統(tǒng)軟件設(shè)計4.1軟件設(shè)計分析在編程上,首先進(jìn)行了初始化,定義程序的的入口地址以及中斷的入口地址,在主程序開始定義了一組固定單元用來儲存計數(shù)的時.分.秒,在顯示初值之后,進(jìn)入主循環(huán)。在主程序中,對不同的按鍵進(jìn)行掃描,實現(xiàn)秒表,時間調(diào)整,復(fù)位清零等功能,系統(tǒng)總流程圖如下列圖7:圖7系統(tǒng)總體流程圖4.2源程序清單ORG0000HMOV30H,#1設(shè)置時鐘的起始時間12.00.00,分配顯示數(shù)據(jù)內(nèi)存MOV31H,#2MOV32H,#0MOV33H,#0MOV34H,#0MOV35H,#0MOVTMOD,#01啟動計數(shù)器XS0:SETBTR0使TRO位置1MOVTH0,#00H計數(shù)器置零MOVTL0,#00HXS:MOV40H,#0FEH掃描控制字初值MOVDPTR,#TAB取段碼表地址MOVP2,40H從P2口輸出MOVA,30H取顯示數(shù)據(jù)到AMOVCA,@A+DPTR查顯示數(shù)據(jù)對應(yīng)段碼MOVP0,A段碼放入P0中LCALLYS1MS顯示1MSMOVP0,#0FFHPO端口清零MOVA,40H取掃描控制字放入A中RLAA中數(shù)據(jù)循環(huán)左移MOV40H,A放回40H地址段內(nèi)MOVP2,40HMOVA,31HADDA,#10進(jìn)位顯示MOVCA,@A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,32HMOVCA,@A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,33HADDA,#10MOVCA,@A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,34HMOVCA,@A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,35HMOVCA,@A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVA,40HRLAMOV40H,AJBTF0,JIA如果TF0為1時,那么執(zhí)行JIA,否那么順序執(zhí)行JNBP1.0,P100為0那么轉(zhuǎn)移到P100 JNBP1.1,P1000為0那么轉(zhuǎn)移到P1000JNBP1.2,P10000為0那么轉(zhuǎn)移到P10000AJMPXS跳轉(zhuǎn)到XSP100:MOV30H,#0清零程序MOV31H,#0MOV32H,#0MOV33H,#0MOV34H,#0MOV35H,#0JIA:CLRTF0TF0清零MOVA,35H秒單位數(shù)據(jù)到ACJNEA,#9,JIA1與9進(jìn)行比擬,大于9就轉(zhuǎn)移到JIA1MOV35H,0秒個位清零MOVA,34H秒十位數(shù)據(jù)到ACJNEA,#5,JIA10與5進(jìn)行比擬,大于5就轉(zhuǎn)移到JIA10MOV34H,#0秒十位清零P10000:JNBP1.2,P10000為0那么轉(zhuǎn)移到P10000MOVA,33H取分的個位到ACJNEA,#9,JIA100與9進(jìn)行比擬,大于9就轉(zhuǎn)移到JIA100MOV33H,#0分的個位清零MOVA,32H分十位數(shù)據(jù)到ACJNEA,#5,JIA1000與5進(jìn)行比擬,大于5就轉(zhuǎn)移到JIA1000MOV32H,#0分的十位清零P1000:JNBP1.1,P1000為0那么轉(zhuǎn)移到P1000MOVA,31H時個位數(shù)據(jù)到ACJNEA,#9,JIA10000與9進(jìn)行比擬,大于9就轉(zhuǎn)移到JIA10000MOV31H,#0時的個位清零MOVA,30H時十位數(shù)據(jù)到ACJNEA,#2,JIA100000與2進(jìn)行比擬,大于5就轉(zhuǎn)移到JIA100000MOV30H,#0時的十位清零AJMPXS0轉(zhuǎn)移到XSOJIA100000:INC30H加1AJMPXS0跳轉(zhuǎn)到XS0JIA10000:CJNEA,#3,JIAJIA與3進(jìn)行比擬,大于那么轉(zhuǎn)移到JIAJIAMOVA,30H將時的十位放到ACJNEA,#02,JIAJIA與2進(jìn)行比擬,大于那么轉(zhuǎn)移到JIAJIAMOV30H,#0時段清零MOV31H,#0AJMPXS0跳轉(zhuǎn)到XSOJIAJIA:INC31H加一AJMPXS0JIA1000:INC32HAJMPXS0JIA100:INC33HAJMPXS0JIA10:INC34HAJMPXS0JIA1:INC35HAJMPXS0RET返回YS1MS:MOVR6,#9H延時程序YL1:MOVR7,#19HDJNZR7,$DJNZR6,YL1RETTAB:DB0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H共陽段碼表DB040H,079H,024H,030H,019H,012H,002H,078H,000H,010HEND5系統(tǒng)仿真與實驗測試5.1系統(tǒng)仿真運(yùn)用proteus軟件進(jìn)行仿真現(xiàn)在proteus軟件中建立一個新的文件,再根據(jù)自己的要求選擇所需的器件,把器件進(jìn)行適當(dāng)?shù)呐盼缓筮M(jìn)行連接,連接后運(yùn)行軟件進(jìn)行仿真。5.2實驗測試電子時鐘主要的設(shè)計要求是能夠?qū)崿F(xiàn)時鐘的一般功能,以及包括時間的調(diào)整功能,這個基于單片機(jī)的電子時鐘根本上實現(xiàn)了上述功能,能夠通過時間調(diào)整電路對時間進(jìn)行調(diào)整以及復(fù)位。下述為18:30:30的仿真圖:圖818:30:30時刻的仿真效果圖6心得體會單片機(jī)作為我們主要的專業(yè)課程之一,我覺得單片機(jī)課程設(shè)計很有必要,而且很有意義。但當(dāng)拿到題目時,確實不知道怎么著手,有些迷茫,上網(wǎng)查資料,問老師,在老師的幫助下,歷時兩個星期,解決一個又一個的困難,終于完成任務(wù)。在這次課程設(shè)計中,運(yùn)用到了很多以前的專業(yè)知識,雖然過去從未獨立應(yīng)用過它們,但在學(xué)習(xí)的過程中帶著問題去學(xué)我發(fā)現(xiàn)效率很高,這是我做這次課程設(shè)計的一大收獲。另外,要做好一個課程設(shè)計,就必須做到:在設(shè)計程序之前,對所用單片機(jī)的內(nèi)部結(jié)構(gòu)有一個系統(tǒng)的了解,知道該單片機(jī)內(nèi)有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設(shè)計程序時,不能妄想一次就將整個程序設(shè)計好,反復(fù)修改、不斷改良是程序設(shè)計的必經(jīng)之路;要養(yǎng)成注釋程序的好習(xí)慣,一個程序的完美與否不僅僅是實現(xiàn)功能,而應(yīng)該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設(shè)計課程過程中遇到問題是很正常德,但我們應(yīng)該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題的課程設(shè)計結(jié)束了,但是從中學(xué)到的知識會讓我受益終身。發(fā)現(xiàn)、提出、分析、解決問題和實踐能力的提高都會受益于我在以后的學(xué)習(xí)、工作和生活中。設(shè)計過程,好比是我們?nèi)祟惓砷L的歷程,常有一些不如意,但畢竟這是第一次做,難免會遇到各種各樣的問題。在設(shè)計的過程中發(fā)現(xiàn)了自己的缺乏之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,不能靈活運(yùn)用。通過這次設(shè)計,我懂得了學(xué)習(xí)的重要性,了解到理論知識與實踐相結(jié)合的重要意義,學(xué)會了堅持、耐心和努力,這將為自己今后的學(xué)習(xí)和工作做出了最好的典范。另外,要非常感謝我的指導(dǎo)老師,是她指引我克服一個由一個的困難,讓我學(xué)會對困難無所畏懼,以及對問題的一些很重要的思考方法。我學(xué)會對困難無所畏懼,以及對問題的一些很重要的思考方法。參考文獻(xiàn)[1]鄭君里,應(yīng)啟珩,楊為理.信號與系統(tǒng)〔第二

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論