⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ess1302f.asm

📁 单片机混合编程 嵌入式/单片机编程单片机混合编程 嵌入式/单片机编程
💻 ASM
字号:
   ; 这是被CALLDS07.c调用的DS1302汇编程序,文件名为
   ; ESS1302F.ASM;  这是DS1302时间和RAM读写程序
   ; 用 P1.5,P1.6,P1.7;
   NAME SS1302B
   ?PR?_a_func2?SDS1302B     SEGMENT CODE
   ?DT?_a_func2?SDS1302B     SEGMENT DATA OVERLAYABLE
   ?DT?SDS1302B              SEGMENT DATA
   PUBLIC   chai2
   PUBLIC   ?_a_func2?BYTE
   PUBLIC    _a_func2
   RSEG  ?DT?_a_func2?SDS1302B
	 ?_a_func2?BYTE:
	 aa:DS 1
         bb:DS 1
         cc:DS 1
   RSEG  ?DT?SDS1302B
	 chai2:DS 1
   RSEG  ?PR?_a_func2?SDS1302B
	 _a_func2:
SCLK   BIT P1.5
IO     BIT P1.6
RST    BIT P1.7
SW5    BIT 0D5H

SEC    DATA 60H
MIN    DATA 61H
HR     DATA 62H
DATE   DATA 63H
MONTH  DATA 64H
DAY    DATA 65H
YEAR   DATA 66H
RA1    DATA 67H
RA2    DATA 68H
RA3    DATA 69H
RA4    DATA 6AH
RA5    DATA 6BH
RA6    DATA 6CH
RA7    DATA 6DH
RA8    DATA 6EH
RA9    DATA 6FH
      MOV aa,R7
      MOV bb,R5
      MOV cc,R3
      MOV A,R7  ;IF R7=0FFH,THEN SET SW5=1,READ DS1302
      JNZ CAT   ;IF R7=00H, THEN SET SW5=0,WRITE DS1302
      CLR SW5
      SJMP DOG
CAT:  SETB SW5
DOG:  NOP
      MOV A,R5         ;IF R5=0C1H,THEN MAKE RAM
      CJNE A,#0C1H,PIG ;IF R5=081H,THEN MAKE CLOCK
      MOV R0,#SEC
      MOV R7,#16       
      LCALL RWRTC
      RET
PIG:  MOV R0,#SEC
      MOV R7,#7
      LCALL RWRTC
      RET
RWRTC: MOV R5,bb
       MOV R3,cc
       MOV B,R5          ;0C1==READ RAM-- 081==READ CLOCK
       JB  SW5,RWRTC1
       MOV B,R3          ;0C0==WRITE RAM-- 080==WRITE CLOCK
RWRTC1:CLR SCLK
       NOP
       SETB RST
       MOV R6,#08
       MOV A,B
RWRTC2:CLR SCLK
       RRC A
       MOV IO,C
       NOP
       SETB SCLK
       DJNZ  R6,RWRTC2
       MOV R6,#8
       JNB SW5,RWRTC4
RWRTC3:CLR SCLK
       NOP
       MOV C,IO
       RRC A
       SETB SCLK
       DJNZ  R6,RWRTC3
       MOV @R0,A
       SJMP RWRTC6
RWRTC4:MOV A,@R0
RWRTC5:CLR SCLK
       RRC A
       MOV IO,C
       NOP
       SETB SCLK
       DJNZ  R6,RWRTC5
RWRTC6:INC R0
       MOV A,B
       ADD A,#02H
       MOV B,A
       CLR RST
       NOP
       CLR SCLK
       DJNZ R7,RWRTC1
       RET
       END




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -