久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學習與研究
當前位置:單片機教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

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

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2010年04月06日   【字體:

這是我在大學的時候編的. 記得當時我們開發(fā)小組從下午5點調(diào)試到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     ;設(shè)定時器0為定時方式1(16位)
      MOV TH0, #0DBH     ;定時初值高8位
      MOV TL0, #0F0H     ;定時初值低8位
      SETB EA            ;開總中斷允許
      SETB ET0           ;開定時器0允許中斷
      SETB TR0           ;啟動定時器
      AJMP  $

;================中斷服務(wù)子程序=====================
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
;===主程序結(jié)束===
;==============拆分子程序=====================
Separate:
        MOV   DPTR,#TAB1
      ;-------------------
      MOV     A,SECOND
      MOVC    A,@A+DPTR     ;查表,十六進制轉(zhuǎn)為十進制數(shù)
      mov     R0,A          ;R0暫存A中的數(shù)
      ANL     A,#0FH        ;屏蔽高4位
      MOV     Second_0, A   ;送秒個位
      MOV     A,R0          ;恢復(fù)A中數(shù)
      ANL     A, #0F0H      ;屏蔽低4位
      SWAP    A             ;高4位與低4位交換
      MOV     Second_1,A    ;送秒十位
  ;--------------------
      MOV   LED2,#0FFH      ;數(shù)碼管滅的顯示代碼
  ;--------------------
      MOV   A,MINUTE
      MOVC  A,@A+DPTR
      mov   R0,A
      ANL   A,#0FH
      MOV   Minute_0, A
      MOV   A,R0
      ANL   A, #0F0H
      SWAP  A
      MOV   Minute_1,A
   ;-----------------------
      MOV   LED5,#0FFH      ;數(shù)碼管滅的顯示代碼
   ;-----------------------
      MOV   A,HOUR
      MOVC  A,@A+DPTR
      ANL   A,#0FH
      MOV   Hour_0, A
      MOV   A,HOUR
      ANL   A, #0F0H
      SWAP  A
      MOV   Hour_1,A
      RET
  ;-----------------------
  TAB1: DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H       ; 十六進制轉(zhuǎn)十進制數(shù)表
        DB 10H,11H,12H,13H,14H,15H,16H,17H,18H,19H
        DB 20H,21H,22H,23H,24H,25H,26H,27H,28H,29H
        DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H
        DB 40H,41H,42H,43H,44H,45H,46H,47H,48H,49H
        DB 50H,51H,52H,53H,54H,55H,56H,57H,58H,59H
        DB 60H,61H,62H,63H,64H,65H,66H,67H,68H,69H
        DB 70H,71H,72H,73H,74H,75H,76H,77H,78H,79H
        DB 80H,81H,82H,83H,84H,85H,86H,87H,88H,89H
        DB 90H,91H,92H,93H,94H,95H,96H,97H,98H,99H
;===================顯示子程序=====================
DISPLAY:
       MOV   DPTR,#TAB2         ;送顯示代碼首地址
      MOV     A,Second_0        ;秒個位送A
      MOVC    A,@A+DPTR         ;顯示代碼查表
      ACALL   SHIFT             ;調(diào)移位子程序
      MOV     A,Second_1
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      MOV     A,LED2
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      MOV     A,Minute_0
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      MOV     A,Minute_1
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      MOV     A,LED5
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      MOV     A,Hour_0
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      MOV     A,Hour_1
      MOVC    A,@A+DPTR
      ACALL   SHIFT
      RET
;----------------------------------------------
TAB2: DB  11H,0D7H,32H,92H,0D4H,98H,18H,0D3H   ;0,1,2,3,4,5,6,7       顯示代碼
      DB  10H,90H,50H,1CH,39H,16H,38H,78H,0FFH ;8,9,A,B,C,D,E,F,滅
;---------------------------------------------
;================移位子程序==================
SHIFT:      push  a            ;A進棧暫存
            MOV     R2,#8
            CLR     C
            CLR     SCL
DL:
            RLC     A
            MOV     SDA,C
            SETB    SCL
            CLR     SCL
            DJNZ    R2,DL
            pop a             ;出棧恢復(fù)A值
            RET
;============延時約一秒子程序=============
DELAY_1S:   MOV     R6,#1FH
LOOP7:      MOV     R5,#0FFH
LOOP6:      NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            DJNZ    R5,LOOP6
            DJNZ    R6,LOOP7
            RET
  END
完整程序請從這里下:http://www.zg4o1577.cn/ziliao/file/shiz.rar  ,本人已經(jīng)測試通過.

關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 欧洲一级毛片 | 精精国产xxxx视频在线 | 成人在线精品 | 国内精品久久影院 | 色眯眯视频在线观看 | 中文字幕日韩一区 | 日本精品在线一区 | 91精品在线播放 | 九七午夜剧场福利写真 | 熟女毛片 | 日韩精品激情 | 色综合天天天天做夜夜夜夜做 | 欧美日韩精品 | 天天色天天 | 欧美日韩一区在线 | 三级黄色片在线播放 | 国产一区二区三区久久久久久久久 | 日本成年免费网站 | 久久在线| 天天爱天天操 | 国产成人亚洲精品自产在线 | h漫在线观看| 成人av一区二区三区 | 亚洲高清在线观看 | 国产综合av | 超碰日本| 国产精品久久 | 亚洲欧洲精品在线 | 九九久久这里只有精品 | 在线黄色网 | 日批的视频 | 国产一二三视频在线观看 | 欧美一级二级视频 | 色综合99 | 久久精品国产v日韩v亚洲 | 亚洲精品久久久久久久久久久久久 | www.亚洲国产精品 | 国内自拍偷拍 | 国产精品一区二区欧美黑人喷潮水 | 亚洲国产精品一区二区www | 久草青青草 |