📄 ds12c887.s
字号:
.area idata
.byte 4,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e nian2 _nian2 A[16:16]c
_yue1::
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,255
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 17,17
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 17,17
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 17,255
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e yue1 _yue1 A[16:16]c
_yue2::
.blkb 2
.area idata
.byte 0,64
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 32,16
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 12,3
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 1,1
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 1,33
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'A,63
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e yue2 _yue2 A[16:16]c
_ri1::
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,254
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'B,'B
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'B,'B
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'B,'B
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'B,254
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e ri1 _ri1 A[16:16]c
_ri2::
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,63
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 16,16
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 16,16
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 16,16
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 16,63
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e ri2 _ri2 A[16:16]c
_xing1::
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,190
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 42,42
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 42,234
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 42,42
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 42,42
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 62,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e xing1 _xing1 A[16:16]c
_xing2::
.blkb 2
.area idata
.byte 0,'H
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'F,'A
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'I,'I
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'I,127
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'I,'I
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'I,'I
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'I,'A
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 64,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e xing2 _xing2 A[16:16]c
_qi1::
.blkb 2
.area idata
.byte 0,4
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 255,'T
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'T,'T
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 255,4
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,254
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 34,34
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 34,254
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e qi1 _qi1 A[16:16]c
_qi2::
.blkb 2
.area idata
.byte 'B,34
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 27,2
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 2,10
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 51,'b
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 24,7
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 2,34
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 'B,63
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.blkb 2
.area idata
.byte 0,0
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbsym e qi2 _qi2 A[16:16]c
.area text(rom, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887/chinese.h
.dbfile C:\DOCUME~1\Administrator\桌面\USING07-07\Mega128\12c887\DS12C887.C
.dbfunc e delayds12887 _delayds12887 fV
; i -> R16
.even
_delayds12887::
.dbline -1
.dbline 15
;
; #include <iom128v.h>
; #include <macros.h>
; #include"DS12C887.H"
; #include"char.h"
; #include"lcd.h"
; #include"chinese.h"
;
; #define uchar unsigned char
; uchar second,second10,second01,minute,minute10,minute01,hour,hour10,hour01;
; uchar weekday,weekday10,weekday01,monthday,monthday10,monthday01,month,month10,month01,year,year10,year01;
; //**********************************延时函数**************************************/
;
; void delayds12887(uchar i)
; {
L2:
.dbline 17
.dbline 17
.dbline 17
L3:
.dbline 16
; while(--i)
mov R24,R16
subi R24,1
mov R16,R24
tst R24
brne L2
.dbline -2
L1:
.dbline 0 ; func end
ret
.dbsym r i 16 c
.dbend
.dbfunc e Write_Regtime _Write_Regtime fV
; Year -> y+8
; Month -> y+6
; Monthday -> y+4
; Weekday -> y+2
; Hour -> y+0
; Minute -> R18
; Second -> R16
.even
_Write_Regtime::
.dbline -1
.dbline 23
; {;}
; }
;
; //*****************************写DS12887时间寄存器函数****************************/
;
; void Write_Regtime(uchar Second,uchar Minute,uchar Hour,uchar Weekday,uchar Monthday,uchar Month,uchar Year)
; {
.dbline 24
; SECOND=Second; //写秒初值
sts 40960,R16
.dbline 25
; MINUTE=Minute; //写分初值
sts 40962,R18
.dbline 26
; HOUR=Hour; //写小时初值
ldd R0,y+0
sts 40964,R0
.dbline 27
; WEEKDAY=Weekday; //写星期天数初值
ldd R0,y+2
sts 40966,R0
.dbline 28
; MONTHDAY=Monthday; //写月天数初值
ldd R0,y+4
sts 40967,R0
.dbline 29
; MONTH=Month; //写月初值
ldd R0,y+6
sts 40968,R0
.dbline 30
; YEAR=Year; //写年初值
ldd R0,y+8
sts 40969,R0
.dbline -2
L5:
.dbline 0 ; func end
ret
.dbsym l Year 8 c
.dbsym l Month 6 c
.dbsym l Monthday 4 c
.dbsym l Weekday 2 c
.dbsym l Hour 0 c
.dbsym r Minute 18 c
.dbsym r Second 16 c
.dbend
.dbfunc e Write_Regspecial _Write_Regspecial fV
; regD -> y+2
; regC -> y+0
; regB -> R18
; regA -> R16
.even
_Write_Regspecial::
.dbline -1
.dbline 37
; }
;
;
; //*************************写DS12887特殊寄存器A,B,C,D函数**********************/
;
; void Write_Regspecial(uchar regA,uchar regB,uchar regC,uchar regD)
; {
.dbline 38
; REG_A=regA;
sts 40970,R16
.dbline 39
; REG_B=regB;
sts 40971,R18
.dbline 40
; REG_C=regC;
ldd R0,y+0
sts 40972,R0
.dbline 41
; REG_C=regD;
ldd R0,y+2
sts 40972,R0
.dbline -2
L6:
.dbline 0 ; func end
ret
.dbsym l regD 2 c
.dbsym l regC 0 c
.dbsym r regB 18 c
.dbsym r regA 16 c
.dbend
.dbfunc e Read_RegSec _Read_RegSec fI
.even
_Read_RegSec::
.dbline -1
.dbline 47
; }
;
; //******************************读DS12887时间寄存器函数*****************************/
;
; Read_RegSec(void)
; {
.dbline 48
; return SECOND;
lds R16,40960
clr R17
.dbline -2
L7:
.dbline 0 ; func end
ret
.dbend
.dbfunc e Read_RegMin _Read_RegMin fI
.even
_Read_RegMin::
.dbline -1
.dbline 52
; }
;
; Read_RegMin(void)
; {
.dbline 53
; return MINUTE;
lds R16,40962
clr R17
.dbline -2
L8:
.dbline 0 ; func end
ret
.dbend
.dbfunc e Read_RegHour _Read_RegHour fI
.even
_Read_RegHour::
.dbline -1
.dbline 57
; }
;
; Read_RegHour(void)
; {
.dbline 58
; return HOUR;
lds R16,40964
clr R17
.dbline -2
L9:
.dbline 0 ; func end
ret
.dbend
.dbfunc e Read_RegWeekday _Read_RegWeekday fI
.even
_Read_RegWeekday::
.dbline -1
.dbline 62
; }
;
; Read_RegWeekday(void)
; {
.dbline 63
; return WEEKDAY;
lds R16,40966
clr R17
.dbline -2
L10:
.dbline 0 ; func end
ret
.dbend
.dbfunc e Read_RegMonthday _Read_RegMonthday fI
.even
_Read_RegMonthday::
.dbline -1
.dbline 67
; }
;
; Read_RegMonthday(void)
; {
.dbline 68
; return MONTHDAY;
lds R16,40967
clr R17
.dbline -2
L11:
.dbline 0 ; func end
ret
.dbend
.dbfunc e Read_RegMonth _Read_RegMonth fI
.even
_Read_RegMonth::
.dbline -1
.dbline 72
; }
;
; Read_RegMonth(void)
; {
.dbline 73
; return MONTH;
lds R16,40968
clr R17
.dbline -2
L12:
.dbline 0 ; func end
ret
.dbend
.dbfunc e Read_RegYear _Read_RegYear fI
.even
_Read_RegYear::
.dbline -1
.dbline 77
; }
;
; Read_RegYear(void)
; {
.dbline 78
; return YEAR;
lds R16,40969
clr R17
.dbline -2
L13:
.dbline 0 ; func end
ret
.dbend
.dbfunc e juddisplay _juddisplay fV
; x -> R22
; y -> R20
; number -> R10
.even
_juddisplay::
xcall push_gset3
mov R20,R18
mov R10,R16
sbiw R28,3
ldd R22,y+9
.dbline -1
.dbline 84
; }
;
; /*********************************显示处理函数************************************/
;
; void juddisplay(uchar number,uchar y,uchar x) //(要显示的字符,X位置,Y位置)
; {
.dbline 85
; switch(number) //判断数字是几,并显示在指定位置上
clr R11
tst R10
brne X0
tst R11
brne X2
xjmp L18
X2:
X0:
movw R24,R10
cpi R24,1
ldi R30,0
cpc R25,R30
brne X3
xjmp L19
X3:
cpi R24,2
ldi R30,0
cpc R25,R30
brne X4
xjmp L20
X4:
cpi R24,3
ldi R30,0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -