RSS

关于DS1302实时时钟芯片的51汇编语言源程序

来源: 作者: 时间:2007-06-29 Tag: 点击:

CLK  EQU P1.4
IO   EQU P1.3
RST  EQU P1.2
          ORG 0000H
        AJMP START
        ORG 0003H
        AJMP SIN0
        ORG 000BH
        AJMP DS0
        ORG 0013H
        AJMP SIN1
        ORG 001BH
        AJMP DS1
        ORG 0100H
START:  MOV SP,#30H
        CLR P1
fuwei:  MOV 60H,#8FH   ;写保护控制命令寄存器地址 8FH读,8EH写
        mov 61H,#00H   ; 打开写保护准备写数据 00H写, 80H读
        mov r2,#02h
        setb rst
        LCALL Wrt
        MOV 60H,#70H   ;秒寄存器控制字地址
        MOV 61H,#00H   ;秒初始化为0,同时启动时钟工作
        mov r2,#02h
        setb rst
        lcall WRT
        ;lcall delay
red:    MOV 60h,#10000001B     ;读秒的命令字 10000001b
        mov r2,#01h
        SETB RST
        lcall wrt
        nop
        nop
        nop
        nop
        nop
        lcall red1
        CLR RST
        lcall chuli
        ljmp red
wrt:   MOV R0,#60H
CC:    MOV A,@R0
       MOV R3,#08H
SEND: RRC A
       MOV IO,C
       DJNZ R3,SEND
       INC R0
       DJNZ R2,CC
       RET
RED1:  CLR C
       MOV R3,#08H
CC1:   SETB CLK
       MOV C,IO
RRC A
       SETB CLK
       DJNZ R3,CC1
       MOV 50H,A
       RET
CHULI: MOV A,50H
       ANL A,#0FH
       MOV 40H,A
       MOV A,50H
       ANL A,#01110000B
       MOV 41H,A
       MOV 42H,#0
       MOV 43H,#0
       LCALL DISP
       LCALL DELAY
       RET
DISP:  MOV R0,#40H
       MOV R3,#04H
DISP1: MOV A,@R0
       MOV DPTR,#DDSEG
       MOVC A,@A+DPTR
       MOV SBUF,A
WAIT:  JNB TI,WAIT
       CLR TI
       INC R0
       DJNZ R3,DISP1
       RET
DS0:   NOP
       RETI
DS1:   NOP
       RETI
SIN0:  NOP
       RETI
SIN1:  NOP
       RETI
delay:mov r4,#40
DE1 :mov r5,#20
DE2 :djnz r5,DE2
      djnz r4,DE1
      ret
DDSEG: DB 03H,09FH,25H,0DH,99H,49H,41H,1FH,00H,09H
       DB 11H,00H,63H,85H,61H,71H ;A-F
       DB 0FFH,0FDH  ;灭
        END

1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.


最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
合作站点