新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機控制時鐘顯示源程序

        單片機控制時鐘顯示源程序

        作者: 時間:2012-10-31 來源:網絡 收藏

        這是我在大學的時候編的. 記得當時我們開發小組從下午5點調試到11點多才成功, 最有成就感的一天!

        ;=======================================
        ; Clock programe
        ; Create date: 2004_05_12
        ; First Modify: 2004_05_13
        ; First Modify: 2004_05_13
        ; Last Modify: 2004_05_20
        ; Author: Dengjingyue
        ;=======================================
        SDA BIT P0.1 ;定義
        SCL BIT P0.0 ;定義
        Second_0 EQU 40H ;定義秒個位
        Second_1 EQU 41H ;定義秒十位
        LED2 EQU 42H ;
        Minute_0 EQU 43H ;定義分個位
        Minute_1 EQU 44H ;定義分十位
        LED5 EQU 45H
        Hour_0 EQU 46H ;定義小時個位
        Hour_1 EQU 47H ;定義小時十位
        SECOND EQU 48H ;定義秒
        MINUTE EQU 49H ;定義分
        HOUR EQU 50H ;定義小時

        ORG 0000H
        AJMP MAIN
        ORG 000BH
        AJMP INT_CLOCK ;中斷入口
        ORG 0100H
        ;============主程序開始=======================
        MAIN:
        MOV R7,#00H ;賦初值
        MOV SECOND, #00H ;賦初值
        MOV MINUTE, #00H ;賦初值
        MOV HOUR, #00H ;賦初值
        ACALL Separate ;拆分子程序
        ACALL DISPLAY ;顯示子程序
        ;----------------------------
        MOV TMOD,#01H ;設定時器0為定時方式1(16位)
        MOV TH0, #0DBH ;定時初值高8位
        MOV TL0, #0F0H ;定時初值低8位
        SETB EA ;開總中斷允許
        SETB ET0 ;開定時器0允許中斷
        SETB TR0 ;啟動定時器
        AJMP $

        ;================中斷服務子程序=====================
        INT_CLOCK:
        MOV TH0, #0DBH ;定時初值高8位
        MOV TL0, #0F0H ;定時初值低8位
        INC R7
        CJNE R7,#100, EXIT ;每次中斷時間是0.1秒, 100次是1秒.
        MOV R7,#00 ;到1秒, R7清零
        ;-----------------------------------
        INC SECOND ;秒加1
        MOV A,SECOND
        CJNE A,#60, LP
        MOV SECOND, #00H ;秒清0
        INC MINUTE ;分加1
        MOV A,MINUTE
        CJNE A,#60, LP
        MOV MINUTE, #00H ;分清0
        INC HOUR ;小時1
        MOV A,HOUR
        CJNE A,#24, LP
        MOV HOUR, #00H ;小時清0
        LP: ACALL Separate ;拆分子程序
        ACALL DISPLAY ;顯示子程序
        ; ACALL DELAY_1* ;延時約一秒
        **IT: RETI
        ;===主程序結束===


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 大姚县| 尉氏县| 通山县| 西乡县| 太原市| 出国| 宁乡县| 东山县| 兰坪| 永福县| 屯留县| 威海市| 娱乐| 武穴市| 乐业县| 新沂市| 钟山县| 吉林省| 琼结县| 长治市| 南木林县| 南涧| 遵义县| 垣曲县| 洞头县| 民和| 龙川县| 安徽省| 武义县| 远安县| 溧水县| 康定县| 河池市| 嘉义县| 泗洪县| 垦利县| 青铜峡市| 四会市| 鞍山市| 鄂尔多斯市| 乌恰县|