簡(jiǎn)易電子時(shí)鐘設(shè)計(jì)單片機(jī)_第1頁(yè)
簡(jiǎn)易電子時(shí)鐘設(shè)計(jì)單片機(jī)_第2頁(yè)
簡(jiǎn)易電子時(shí)鐘設(shè)計(jì)單片機(jī)_第3頁(yè)
簡(jiǎn)易電子時(shí)鐘設(shè)計(jì)單片機(jī)_第4頁(yè)
簡(jiǎn)易電子時(shí)鐘設(shè)計(jì)單片機(jī)_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

.PAGE.>基于單片機(jī)的簡(jiǎn)易電子時(shí)鐘設(shè)計(jì)一功能分析1〕.時(shí)制式為24小時(shí)制。2〕.采用LED數(shù)碼管顯示時(shí)、分,秒采用數(shù)字顯示。3〕.具有方便的時(shí)間調(diào)校功能。4〕.計(jì)時(shí)穩(wěn)定度高,可準(zhǔn)確校正計(jì)時(shí)精度。二總體方案設(shè)計(jì)論證比較2.1實(shí)現(xiàn)時(shí)鐘計(jì)時(shí)的根本方法利用MCS-51系列單片機(jī)的可編程定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)來(lái)實(shí)現(xiàn)時(shí)鐘計(jì)數(shù)。(1)計(jì)數(shù)初值計(jì)算:把定時(shí)器設(shè)為工作方式1,定時(shí)時(shí)間為50ms,則計(jì)數(shù)溢出20次即得時(shí)鐘計(jì)時(shí)最小單位秒,而100次計(jì)數(shù)可用軟件方法實(shí)現(xiàn)。假設(shè)使用T/C0,方式1,50ms定時(shí),fosc=12MHz。則初值*滿足〔216-*〕×1/12MHz×12μs=50000μs*=15536→10000→3CB0H(2)采用中斷方式進(jìn)展溢出次數(shù)累計(jì),計(jì)滿20次為秒計(jì)時(shí)〔1秒〕;(3)從秒到分和從分到時(shí)的計(jì)時(shí)是通過(guò)累加和數(shù)值比較實(shí)現(xiàn)。電子鐘的時(shí)間顯示電子鐘的時(shí)鐘時(shí)間在六位數(shù)碼管上進(jìn)展顯示,因此,在內(nèi)部RAM中設(shè)置顯示緩沖區(qū)共8個(gè)單元。LED8LED7LED6LED5LED4LED3LED2LED137H36H35H34H33H32H31H30H時(shí)十位時(shí)個(gè)位分隔分十位分個(gè)位分隔秒十位秒個(gè)位2.3電子鐘的時(shí)間調(diào)整電子鐘設(shè)置3個(gè)按鍵通過(guò)程序控制來(lái)完成電子鐘的時(shí)間調(diào)整。A鍵調(diào)整時(shí);B鍵調(diào)整分;C鍵復(fù)位2.4總體方案介紹2.4.1計(jì)時(shí)方案利用AT89S51單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器進(jìn)展中斷時(shí),配合軟件延時(shí)實(shí)現(xiàn)時(shí)、分、秒的計(jì)時(shí)。該方案節(jié)省硬件本錢,且能使讀者在定時(shí)/計(jì)數(shù)器的使用、中斷及程序設(shè)計(jì)方面得到鍛煉與提高,對(duì)單片機(jī)的指令系統(tǒng)能有更深入的了解,從而對(duì)學(xué)好單片機(jī)技術(shù)這門課程起到一定的作用。2.4.2控制方案AT89S51的P0口和P2口外接由八個(gè)LED數(shù)碼管(LED8~LED1)構(gòu)成的顯示器,用P0口作LED的段碼輸出口,P2口作八個(gè)LED數(shù)碼管的位控輸出線,P1口外接四個(gè)按鍵A、B、C構(gòu)成鍵盤電路。AT89S51是一種低功耗,高性能的CMOS8位微型計(jì)算機(jī)。它帶有8KFlash可編程和擦除的只讀存儲(chǔ)器〔EPROM〕,該器件采用ATMEL的高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)上標(biāo)準(zhǔn)的80C51和80C52的指令系統(tǒng)及引腳兼容,片內(nèi)Flash集成在一個(gè)芯片上,可用與解決復(fù)雜的問(wèn)題,且本錢較低。簡(jiǎn)易電子鐘的功能不復(fù)雜,采用其現(xiàn)有的I/O便可完成,所以本設(shè)計(jì)中采用此的設(shè)計(jì)方案。三硬件電路設(shè)計(jì)根據(jù)以上的電子時(shí)鐘的設(shè)計(jì)要求可以分為以下的幾個(gè)硬件電路模塊:?jiǎn)纹瑱C(jī)模塊、數(shù)碼顯示模塊與按鍵模塊,模塊之間的關(guān)系圖如下面得方框電路圖1所示。圖1硬件電路方框圖四各模塊電路設(shè)計(jì)AT89C51單片機(jī)引腳圖如下:圖2AT89C51引腳圖MCS-51單片機(jī)是標(biāo)準(zhǔn)的40引腳雙列直插式集成電路芯片,其各引腳功能如下:VCC:+5V電源。VSS:接地。RST:復(fù)位信號(hào)。當(dāng)輸入的復(fù)位信號(hào)延續(xù)兩個(gè)機(jī)器周期以上的高電平時(shí)即為有效,用完成單片機(jī)的復(fù)位初始化操作。*TAL1和*TAL2:外接晶體引線端。當(dāng)使用芯片內(nèi)部時(shí)鐘時(shí),此二引線端用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時(shí)鐘時(shí),用于接外部時(shí)鐘脈沖信號(hào)。P0口:P0口為一個(gè)8位漏極開(kāi)路雙向I/O口,當(dāng)作輸出口使用時(shí),必須接上拉電阻才能有高電平輸出;當(dāng)作輸入口使用時(shí),必須先向電路中的鎖存器寫入"1〞,使FET截止,以防止鎖存器為"0〞狀態(tài)時(shí)對(duì)引腳讀入的干擾。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,它不再需要多路轉(zhuǎn)接電路MU*;因此它作為輸出口使用時(shí),無(wú)需再外接上拉電阻,當(dāng)作為輸入口使用時(shí),同樣也需先向其鎖存器寫"1〞,使輸出驅(qū)動(dòng)電路的FET截止。P2口:P2口電路比P1口電路多了一個(gè)多路轉(zhuǎn)接電路MU*,這又正好與P0口一樣。P2口可以作為通用的I/O口使用,這時(shí)多路轉(zhuǎn)接電路開(kāi)關(guān)倒向鎖豐存器Q端。P3口:P3口特點(diǎn)在于,為適應(yīng)引腳信號(hào)第二功能的需要,增加了第二功能控制邏輯。當(dāng)作為I/O口使用時(shí),第二功能信號(hào)引線應(yīng)保持高電平,與非門開(kāi)通,以維持從鎖存器到輸出端數(shù)據(jù)輸出通路的暢通。當(dāng)輸出第二功能信號(hào)時(shí),該位應(yīng)應(yīng)置"1〞,使與非門對(duì)第二功能信號(hào)的輸出是暢通的,從而實(shí)現(xiàn)第二功能信號(hào)的輸出,具體第二功能如表1所示。4.1.2晶振電路右圖所示為時(shí)鐘電路原理圖,在AT89S51芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端為芯片引腳*TAL1,輸出端為引腳*TAL2。而在芯片內(nèi)部,*TAL1和*TAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。時(shí)鐘電路產(chǎn)生的振蕩脈沖經(jīng)過(guò)觸發(fā)器進(jìn)展二分頻之后,才成為單片機(jī)的時(shí)鐘脈沖信號(hào)。圖3晶振電路單片機(jī)復(fù)位的條件是:必須使RST/VPD或RST引〔9〕加上持續(xù)兩個(gè)機(jī)器周期〔即24個(gè)振蕩周期〕的高電平。例如,假設(shè)時(shí)鐘頻率為12MHz,每機(jī)器周期為1μs,則只需2μs以上時(shí)間的高電平,在RST引腳出現(xiàn)高電平后的第二個(gè)機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常見(jiàn)的復(fù)位如以下圖。電路為上電復(fù)位電路,它是利用電容充電來(lái)實(shí)現(xiàn)的。在接電瞬間,RESET端的電位與VCC一樣,隨著充電電流的減少,RESET的電位逐漸下降。只要保證RESET為高電平的時(shí)間大于兩個(gè)機(jī)器周期,便能正常復(fù)位。該電路除具有上電復(fù)位功能外,假設(shè)要復(fù)位,只需按圖中的RESET鍵,此時(shí)電源VCC經(jīng)電阻R1、R2分壓,在RESET端產(chǎn)生一個(gè)復(fù)位高電平。圖4單片機(jī)復(fù)位電路4.2數(shù)碼顯示模塊設(shè)計(jì)系統(tǒng)采用動(dòng)態(tài)顯示方式,用P0口來(lái)控制LED數(shù)碼管的段控線,而用P2口來(lái)控制其位控線。動(dòng)態(tài)顯示通常都是采用動(dòng)態(tài)掃描的方法進(jìn)展顯示,即循環(huán)點(diǎn)亮每一個(gè)數(shù)碼管,這樣雖然在任何時(shí)刻都只有一位數(shù)碼管被點(diǎn)亮,但由于人眼存在視覺(jué)殘留效應(yīng),只要每位數(shù)碼管間隔時(shí)間足夠短,就可以給人以同時(shí)顯示的感覺(jué)。圖5數(shù)碼顯示電路4.3按鍵模塊以下圖為按鍵模塊電路原理圖,A為復(fù)位鍵,B為時(shí)鐘調(diào)控鍵,C為分鐘調(diào)控鍵。圖6按鍵模塊電路原理圖五軟件設(shè)計(jì)流程圖在編程上,首先進(jìn)展了初始化,定義程序的的入口地址以及中斷的入口地址,在主程序開(kāi)場(chǎng)定義了一組固定單元用來(lái)儲(chǔ)存計(jì)數(shù)的時(shí).分.秒,在顯示初值之后,進(jìn)入主循環(huán)。在主程序中,對(duì)不同的按鍵進(jìn)展掃描,實(shí)現(xiàn)秒表,時(shí)間調(diào)整,復(fù)位清零等功能,系統(tǒng)總流程圖如以下圖7:圖7軟件設(shè)計(jì)流程圖六程序清單ORG0000HMOV30H,#1設(shè)置時(shí)鐘的起始時(shí)間12.00.00,分配顯示數(shù)據(jù)內(nèi)存MOV31H,#2MOV32H,#0MOV33H,#0MOV34H,#0MOV35H,#0MOVTMOD,#01啟動(dòng)計(jì)數(shù)器*S0:SETBTR0使TRO位置1MOVTH0,#00H計(jì)數(shù)器置零MOVTL0,#00H*S:MOV40H,#0FEH掃描控制字初值MOVDPTR,#TAB取段碼表地址MOVP2,40H從P2口輸出MOVA,30H取顯示數(shù)據(jù)到AMOVCA,A+DPTR查顯示數(shù)據(jù)對(duì)應(yīng)段碼MOVP0,A段碼放入P0中LCALLYS1MS顯示1MSMOVP0,#0FFHPO端口清零MOVA,40H取掃描控制字放入A中RLAA中數(shù)據(jù)循環(huán)左移MOV40H,A放回40H地址段內(nèi)MOVP2,40HMOVAADDA,#10進(jìn)位顯示MOVCA,A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVARLMOV40H,AMOVP2,40HMOVAMOVCA,A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVARLMOV40H,AMOVP2,40HMOVAADDA,#10MOVCA,A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVARLMOV40H,AMOVP2,40HMOVAMOVCA,A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVARLMOV40H,AMOVP2,40HMOVAMOVCA,A+DPTRMOVP0,ALCALLYS1MSMOVP0,#0FFHMOVARLMOV40H,AJBTF0,JIA如果TF0為1時(shí),則執(zhí)行JIA,否則順序執(zhí)行JNBP1.0,P100為0則轉(zhuǎn)移到P100 JNBP1.1,P1000為0則轉(zhuǎn)移到P1000JNBP1.2,P10000為0則轉(zhuǎn)移到P10000AJMP*S跳轉(zhuǎn)到*SP100:MOV30H,#0清零程序MOV31H,#0MOV32H,#0MOV33H,#0MOV34H,#0MOV35H,#0JIA:CLRTF0TF0清零MOVA,35H秒單位數(shù)據(jù)到ACJNEA,#9,JIA1與9進(jìn)展比較,大于9就轉(zhuǎn)移到JIA1MOV35H,0秒個(gè)位清零MOVA,34H秒十位數(shù)據(jù)到ACJNEA,#5,JIA10與5進(jìn)展比較,大于5就轉(zhuǎn)移到JIA10MOV34H,#0秒十位清零P10000:JNBP1.2,P10000為0則轉(zhuǎn)移到P10000MOVA,33H取分的個(gè)位到ACJNEA,#9,JIA100與9進(jìn)展比較,大于9就轉(zhuǎn)移到JIA100MOV33H,#0分的個(gè)位清零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í)個(gè)位數(shù)據(jù)到ACJNEA,#9,JIA10000與9進(jìn)展比較,大于9就轉(zhuǎn)移到JIA10000MOV31H,#0時(shí)的個(gè)位清零MOVA,30H時(shí)十位數(shù)據(jù)到ACJNEA,#2,JIA100000與2進(jìn)展比較,大于5就轉(zhuǎn)移到JIA100000MOV30H,#0時(shí)的十位清零AJMP*S0轉(zhuǎn)移到*SOJIA100000:INC30H加1AJMP*S0跳轉(zhuǎn)到*S0JIA10000:CJNEA,#3,JIAJIA與3進(jìn)展比較,大于則轉(zhuǎn)移到JIAJIAMOVA,30H將時(shí)的十位放到ACJNEA,#02,JIAJIA與2進(jìn)展比較,大于則轉(zhuǎn)移到JIAJIAMOV30H,#0時(shí)段清零MOV31H,#0AJMP*S0跳轉(zhuǎn)到*SOJIAJIA:INC31H加一AJMP*S0JIA1000:INC32HAJMP*S0JIA100:INC

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論