在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 用8031單片機控制的數(shù)字鐘

            用8031單片機控制的數(shù)字鐘

            作者: 時間:2012-02-17 來源:網(wǎng)絡(luò) 收藏

            電子鐘的設(shè)計方法有多種,例如,可用中小規(guī)模集成電路組成電子鐘;也可以利用專用的電子鐘芯片配以顯示電路及其所需要的外圍電路組成電子鐘;還可以利用來實現(xiàn)電子鐘等等。這些方法都各有特點,其中,利用實現(xiàn)的電子鐘具有編程靈活,便于電子鐘功能的擴充,即可用該電子鐘發(fā)出各種信號,精確度高等特點。

            本文引用地址:http://www.biyoush.com/article/172074.htm

            所設(shè)計的電子鐘有以下功能:
            1. 24小時制時間顯示。
            2. 可隨時進行時間校對。
            3. 整點報時。
            4. 鬧鐘功能。

            為了節(jié)約制作硬件的開支,我們利用開發(fā)機上的硬件資源,開發(fā)了電腦鐘的軟件。該鐘由8031單片機,采用24小時制計時,利用開發(fā)機上的六個LED顯示器來顯示時、分和秒,使用P1端口中的P1.0端口線實現(xiàn)整點報時功能;使用P3端口的P3.0實現(xiàn)鬧鐘功能。其硬件原理圖如圖一所示。

            9.jpg

            圖中的開關(guān)K4用于鬧鐘,當(dāng)K4=1時(開關(guān)處于ON的位置),打開鬧鐘,使之在預(yù)定時間起鬧;當(dāng)K1=0時(開關(guān)處于OFF的位置),則關(guān)閉鬧鐘,使之不鬧。另外,在鬧鐘響起時,K4也可作為止鬧開關(guān)使用,若不止鬧,則鬧一分鐘。鬧鐘信號用發(fā)光二極管來模擬。

            整點報時信號也是用發(fā)光二極管來模擬的。當(dāng)整點時,P1.0口所接的發(fā)光二極管點亮一分鐘。

            電腦數(shù)字鐘的秒信號是利用8031單片機定時器T0產(chǎn)生的。由于開發(fā)機的晶振頻率為6MHz,使得T0的最大定時時間遠遠小于1秒,因此,在設(shè)計時采用了硬件計數(shù)與軟件計數(shù)相結(jié)合的方式,即通過T0產(chǎn)生一定的定時時間,然后再利用軟件進行計數(shù),從而產(chǎn)生1秒鐘的時間信號。在設(shè)計中,定時器T0采用了中斷方式。當(dāng)定時時間到時,單片機產(chǎn)生中斷,在T0的中斷服務(wù)程序中實現(xiàn)時、分、秒的累加。并且,該中斷的優(yōu)先級別高于其它中斷,因此,保證了電子鐘走時準確。在設(shè)計中,利用外部中斷0和外部中斷1分別作為校時和鬧鐘校時按鍵的觸發(fā)輸入。當(dāng)需要校時時,撥動K5或K6開關(guān),便產(chǎn)生外部中斷,進入相應(yīng)的中斷服務(wù)程序。在外部中斷0和外部中斷1的中斷服務(wù)程序中,都只有一條表示有按鍵的標志位置1的指令,然后在主程序中用查詢標志位的方式判斷是否有鍵按下。若查得標志位為1則進入校時子程序進行校時的相應(yīng)處理;若為0則照常進行時間顯示。當(dāng)撥動K5開關(guān)時,進入校時狀態(tài),用戶可以方便地校準時間。當(dāng)撥動K6開關(guān)時,便進入鬧鐘校時狀態(tài),這時,可根據(jù)需要設(shè)置起鬧時間。在鬧鐘校時期間,時鐘繼續(xù)計數(shù),即鬧鐘校時不影響時鐘走時。

            程序中的一些存儲單元的定義如下:
             ?。玻埃取玻玻龋簳r、分、秒單元
             ?。矗埃取矗玻龋盒r或鬧鐘校時期間的時、分、秒單元
             ?。担埃取担保龋浩痿[時間的時、分單元
             ?。罚梗取罚牛龋猴@示緩沖區(qū)

            用戶標志位F0:校時標志,當(dāng)F0=1時,表示校時,位7FH:鬧鐘校時標志,當(dāng)7FH=1時,表示鬧鐘校時

            以上的總體設(shè)計使得電腦數(shù)字鐘的精確度較高,因為在程序的執(zhí)行過程中,任何指令都不影響定時器的正常計數(shù)。從而,使數(shù)字鐘的精度僅僅取決于單片機的產(chǎn)生機器周期電路和定時器T0硬件電路的精確度。另外,程序較為簡潔,具有可靠性和較好的可讀性。

            我們設(shè)計電腦數(shù)字鐘的目的并不在于電腦數(shù)字鐘本身,而是想將它的設(shè)計應(yīng)用于實時控制之中。只要對上述程序和硬件電路稍加修改,便可以得到實時控制的實用系統(tǒng),從而應(yīng)用到實際工作與生產(chǎn)中去。

            電腦數(shù)字鐘的匯編語言源程序如下所示:
            ORG 0000H
            LJMP MAIN
            ORG 0003H
            SETB PSW.5
            RETI
            ORG 000BH
            LJMP CLOCK
            ORG 0013H
            SETB 7FH
            RETI
            ORG 0030H
            MAIN: MOV SP,#60H
            MOV TMOD,#01H
            MOV IE,#87H
            SETB PT0
            MOV TL0,#0B7H
            MOV TH0,#3CH
            MOV 20H,#00H
            MOV 21H,#00H
            MOV 22H,#00H
            MOV 23H,#00H
            MOV 50H,#06H
            MOV 51H,#28H
            MOV 52H,#00H
            CLR PSW.5
            CLR 7FH
            SETB TR0
            SETB IT0
            SETB IT1
            CLR P3.0
            SS: LCALL CUTIN0
            LCALL SSCAN
            JNB PSW.5,LK
            LCALL KEY0
            LK: JNB 7FH,SS
            LCALL KEY1
            SJMP SS
            CUTIN0: PUSH PSW
            PUSH ACC
            MOV 25H,R0
            MOV R0,#79H
            MOV A,22H
            ACALL BCD
            MOV A,21H
            ACALL BCD
            MOV A,20H
            ACALL BCD
            MOV R0,25H
            POP ACC
            POP PSW
            RET
            CUTIN1: PUSH PSW
            PUSH ACC
            MOV 25H,R0
            MOV R0,#79H
            MOV A,42H
            ACALL BCD
            MOV A,41H
            ACALL BCD
            MOV A,40H
            ACALL BCD
            MOV R0,25H
            POP ACC
            POP PSW
            RET
            BCD: MOV B,#0AH
            DIV AB
            MOV @R0,B
            INC R0
            MOV @R0,A
            INC R0
            RET
            CLOCK: JNB PSW.5,ZC
            LJMP FH
            ZC: MOV TL0,#0B7H
            MOV TH0,#3CH
            PUSH PSW
            PUSH ACC
            INC 23H
            MOV A,23H
            CJNE A,#0AH,RET0
            MOV 23H,#00H
            INC 22H
            MOV A,22H
            CJNE A,#3CH,RET0
            MOV 22H,#00H
            SETB P1.0
            CLR P3.0
            INC 21H
            MOV A,21H
            CJNE A,#3CH,RET0
            MOV 21H,#00H
            CLR P1.0
            INC 20H
            MOV A,20H
            CJNE A,#18H,RET0
            MOV 20H,#00H
            AJMP RET0
            RET0: MOV A,21H
            CJNE A,51H,B0
            MOV A,20H
            CJNE A,50H,B0
            SETB P3.0
            B0: POP ACC
            POP PSW
            FH: RETI
            SSCAN: MOV R6,#05H
            SS2: MOV 30H,#20H
            MOV 31H,#7EH
            MOV R7,#06H
            SS1: MOV R1,#21H


            上一頁 1 2 下一頁

            關(guān)鍵詞: 數(shù)字 控制 單片機

            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉