📄 ds1302.lis
字号:
0550 80E0 ldi R24,<_WriteTime
0552 90E0 ldi R25,>_WriteTime
0554 1801 movw R2,R16
0556 280E add R2,R24
0558 391E adc R3,R25
055A F101 movw R30,R2
055C 8081 ldd R24,z+0
055E 8F5F subi R24,255 ; addi 1
0560 8083 std z+0,R24
0562 L88:
0562 .dbline -2
0562 L82:
0562 .dbline 0 ; func end
0562 0895 ret
0564 .dbsym r i 16 I
0564 .dbend
0564 .dbfunc e SubHour _SubHour fV
0564 ; i -> R16,R17
.even
0564 _SubHour::
0564 .dbline -1
0564 .dbline 167
0564 .dbline 168
0564 80E0 ldi R24,<_WriteTime
0566 90E0 ldi R25,>_WriteTime
0568 F801 movw R30,R16
056A E80F add R30,R24
056C F91F adc R31,R25
056E 2080 ldd R2,z+0
0570 2220 tst R2
0572 29F4 brne L90
0574 .dbline 169
0574 .dbline 169
0574 F801 movw R30,R16
0576 E80F add R30,R24
0578 F91F adc R31,R25
057A 84E2 ldi R24,36
057C 8083 std z+0,R24
057E .dbline 170
057E L90:
057E .dbline 171
057E 80E0 ldi R24,<_WriteTime
0580 90E0 ldi R25,>_WriteTime
0582 F801 movw R30,R16
0584 E80F add R30,R24
0586 F91F adc R31,R25
0588 8081 ldd R24,z+0
058A 8031 cpi R24,16
058C 39F4 brne L92
058E .dbline 172
058E .dbline 172
058E 80E0 ldi R24,<_WriteTime
0590 90E0 ldi R25,>_WriteTime
0592 F801 movw R30,R16
0594 E80F add R30,R24
0596 F91F adc R31,R25
0598 8AE0 ldi R24,10
059A 8083 std z+0,R24
059C .dbline 173
059C L92:
059C .dbline 174
059C 80E0 ldi R24,<_WriteTime
059E 90E0 ldi R25,>_WriteTime
05A0 F801 movw R30,R16
05A2 E80F add R30,R24
05A4 F91F adc R31,R25
05A6 8081 ldd R24,z+0
05A8 8032 cpi R24,32
05AA 41F4 brne L94
05AC .dbline 175
05AC .dbline 175
05AC 80E0 ldi R24,<_WriteTime
05AE 90E0 ldi R25,>_WriteTime
05B0 F801 movw R30,R16
05B2 E80F add R30,R24
05B4 F91F adc R31,R25
05B6 89E1 ldi R24,25
05B8 8083 std z+0,R24
05BA .dbline 176
05BA 09C0 rjmp L95
05BC L94:
05BC .dbline 178
05BC 80E0 ldi R24,<_WriteTime
05BE 90E0 ldi R25,>_WriteTime
05C0 1801 movw R2,R16
05C2 280E add R2,R24
05C4 391E adc R3,R25
05C6 F101 movw R30,R2
05C8 8081 ldd R24,z+0
05CA 8150 subi R24,1
05CC 8083 std z+0,R24
05CE L95:
05CE .dbline -2
05CE L89:
05CE .dbline 0 ; func end
05CE 0895 ret
05D0 .dbsym r i 16 I
05D0 .dbend
05D0 .dbfunc e PlusDay _PlusDay fV
05D0 ; i -> R16,R17
.even
05D0 _PlusDay::
05D0 .dbline -1
05D0 .dbline 185
05D0 ; //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
05D0 ; //设置日期,子程序
05D0 ; //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
05D0 ; //日期加法
05D0 ; void PlusDay(int i)
05D0 ; { if(WriteTime[i]==0x09)
05D0 .dbline 185
05D0 80E0 ldi R24,<_WriteTime
05D2 90E0 ldi R25,>_WriteTime
05D4 F801 movw R30,R16
05D6 E80F add R30,R24
05D8 F91F adc R31,R25
05DA 8081 ldd R24,z+0
05DC 8930 cpi R24,9
05DE 39F4 brne L97
05E0 .dbline 186
05E0 ; { WriteTime[i]=0x0f;
05E0 .dbline 186
05E0 80E0 ldi R24,<_WriteTime
05E2 90E0 ldi R25,>_WriteTime
05E4 F801 movw R30,R16
05E6 E80F add R30,R24
05E8 F91F adc R31,R25
05EA 8FE0 ldi R24,15
05EC 8083 std z+0,R24
05EE .dbline 187
05EE ; }
05EE L97:
05EE .dbline 188
05EE ; if(WriteTime[i]==0x19)
05EE 80E0 ldi R24,<_WriteTime
05F0 90E0 ldi R25,>_WriteTime
05F2 F801 movw R30,R16
05F4 E80F add R30,R24
05F6 F91F adc R31,R25
05F8 8081 ldd R24,z+0
05FA 8931 cpi R24,25
05FC 39F4 brne L99
05FE .dbline 189
05FE ; {WriteTime[i]=0x1f;
05FE .dbline 189
05FE 80E0 ldi R24,<_WriteTime
0600 90E0 ldi R25,>_WriteTime
0602 F801 movw R30,R16
0604 E80F add R30,R24
0606 F91F adc R31,R25
0608 8FE1 ldi R24,31
060A 8083 std z+0,R24
060C .dbline 190
060C ; }
060C L99:
060C .dbline 191
060C ; if(WriteTime[i]==0x29)
060C 80E0 ldi R24,<_WriteTime
060E 90E0 ldi R25,>_WriteTime
0610 F801 movw R30,R16
0612 E80F add R30,R24
0614 F91F adc R31,R25
0616 8081 ldd R24,z+0
0618 8932 cpi R24,41
061A 39F4 brne L101
061C .dbline 192
061C ; {WriteTime[i]=0x2f;
061C .dbline 192
061C 80E0 ldi R24,<_WriteTime
061E 90E0 ldi R25,>_WriteTime
0620 F801 movw R30,R16
0622 E80F add R30,R24
0624 F91F adc R31,R25
0626 8FE2 ldi R24,47
0628 8083 std z+0,R24
062A .dbline 193
062A ; }
062A L101:
062A .dbline 194
062A ; if(WriteTime[i]==0x31)
062A 80E0 ldi R24,<_WriteTime
062C 90E0 ldi R25,>_WriteTime
062E F801 movw R30,R16
0630 E80F add R30,R24
0632 F91F adc R31,R25
0634 8081 ldd R24,z+0
0636 8133 cpi R24,49
0638 41F4 brne L103
063A .dbline 195
063A ; {WriteTime[i]=0x00;
063A .dbline 195
063A 80E0 ldi R24,<_WriteTime
063C 90E0 ldi R25,>_WriteTime
063E F801 movw R30,R16
0640 E80F add R30,R24
0642 F91F adc R31,R25
0644 2224 clr R2
0646 2082 std z+0,R2
0648 .dbline 196
0648 ; }
0648 09C0 rjmp L104
064A L103:
064A .dbline 198
064A 80E0 ldi R24,<_WriteTime
064C 90E0 ldi R25,>_WriteTime
064E 1801 movw R2,R16
0650 280E add R2,R24
0652 391E adc R3,R25
0654 F101 movw R30,R2
0656 8081 ldd R24,z+0
0658 8F5F subi R24,255 ; addi 1
065A 8083 std z+0,R24
065C L104:
065C .dbline -2
065C L96:
065C .dbline 0 ; func end
065C 0895 ret
065E .dbsym r i 16 I
065E .dbend
065E .dbfunc e SubDay _SubDay fV
065E ; i -> R16,R17
.even
065E _SubDay::
065E .dbline -1
065E .dbline 203
065E ; else
065E ; WriteTime[i]=WriteTime[i]+1;
065E ;
065E ; }
065E ; //日期 减法
065E ; void SubDay(int i)
065E ; {
065E .dbline 204
065E ; if(WriteTime[i]==0x00)
065E 80E0 ldi R24,<_WriteTime
0660 90E0 ldi R25,>_WriteTime
0662 F801 movw R30,R16
0664 E80F add R30,R24
0666 F91F adc R31,R25
0668 2080 ldd R2,z+0
066A 2220 tst R2
066C 29F4 brne L106
066E .dbline 205
066E ; { WriteTime[i]=0x32;
066E .dbline 205
066E F801 movw R30,R16
0670 E80F add R30,R24
0672 F91F adc R31,R25
0674 82E3 ldi R24,50
0676 8083 std z+0,R24
0678 .dbline 206
0678 ; }
0678 L106:
0678 .dbline 207
0678 ; if(WriteTime[i]==0x10)
0678 80E0 ldi R24,<_WriteTime
067A 90E0 ldi R25,>_WriteTime
067C F801 movw R30,R16
067E E80F add R30,R24
0680 F91F adc R31,R25
0682 8081 ldd R24,z+0
0684 8031 cpi R24,16
0686 39F4 brne L108
0688 .dbline 208
0688 ; {WriteTime[i]=0x0a;
0688 .dbline 208
0688 80E0 ldi R24,<_WriteTime
068A 90E0 ldi R25,>_WriteTime
068C F801 movw R30,R16
068E E80F add R30,R24
0690 F91F adc R31,R25
0692 8AE0 ldi R24,10
0694 8083 std z+0,R24
0696 .dbline 209
0696 ; }
0696 L108:
0696 .dbline 210
0696 ; if(WriteTime[i]==0x20)
0696 80E0 ldi R24,<_WriteTime
0698 90E0 ldi R25,>_WriteTime
069A F801 movw R30,R16
069C E80F add R30,R24
069E F91F adc R31,R25
06A0 8081 ldd R24,z+0
06A2 8032 cpi R24,32
06A4 39F4 brne L110
06A6 .dbline 211
06A6 ; {WriteTime[i]=0x1a;
06A6 .dbline 211
06A6 80E0 ldi R24,<_WriteTime
06A8 90E0 ldi R25,>_WriteTime
06AA F801 movw R30,R16
06AC E80F add R30,R24
06AE F91F adc R31,R25
06B0 8AE1 ldi R24,26
06B2 8083 std z+0,R24
06B4 .dbline 212
06B4 ; }
06B4 L110:
06B4 .dbline 213
06B4 ; if(WriteTime[i]==0x30)
06B4 80E0 ldi R24,<_WriteTime
06B6 90E0 ldi R25,>_WriteTime
06B8 F801 movw R30,R16
06BA E80F add R30,R24
06BC F91F adc R31,R25
06BE 8081 ldd R24,z+0
06C0 8033 cpi R24,48
06C2 41F4 brne L112
06C4 .dbline 214
06C4 ; {WriteTime[i]=0x29;
06C4 .dbline 214
06C4 80E0 ldi R24,<_WriteTime
06C6 90E0 ldi R25,>_WriteTime
06C8 F801 movw R30,R16
06CA E80F add R30,R24
06CC F91F adc R31,R25
06CE 89E2 ldi R24,41
06D0 8083 std z+0,R24
06D2 .dbline 215
06D2 ; }
06D2 09C0 rjmp L113
06D4 L112:
06D4 .dbline 217
06D4 80E0 ldi R24,<_WriteTime
06D6 90E0 ldi R25,>_WriteTime
06D8 1801 movw R2,R16
06DA 280E add R2,R24
06DC 391E adc R3,R25
06DE F101 movw R
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -