📄 yj12864.s
字号:
.byte 128,96
.byte 30,27
.byte 'f,49
.byte 140,1
.byte 140,'a
.byte 155,'d
.byte 39,249
.byte 254,127
.byte 128,96
.byte 12,27
.byte 'f,1
.byte 140,1
.byte 128,'a
.byte 155,'d
.byte 39,249
.byte 254,127
.byte 128,96
.byte 30,27
.byte 'f,1
.byte 140,1
.byte 128,'a
.byte 155,'d
.byte 35,48
.byte 204,51
.byte 28,'l
.byte 51,27
.byte 'c,49
.byte 156,'p
.byte 204,51
.byte 27,'d
.byte 35,48
.byte 204,51
.byte 28,'x
.byte 127,191
.byte 241,224
.byte 252,'p
.byte 'x,30
.byte 63,244
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 32,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,4
.byte 63,255
.byte 255,255
.byte 255,255
.byte 255,255
.byte 255,255
.byte 255,255
.byte 255,255
.byte 255,252
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.byte 0,0
.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/12864.h
.dbsym e GDRAM _GDRAM A[1024:1024]kc
.area data(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/12864.h
.area text(rom, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/12864.h
.dbfunc e LCD12864_portini _LCD12864_portini fV
.even
_LCD12864_portini::
.dbline -1
.dbline 75
.dbline 76
in R24,0x11
ori R24,240
out 0x11,R24
.dbline 77
in R24,0x17
ori R24,255
out 0x17,R24
.dbline 78
sbi 0x12,7
.dbline -2
L50:
.dbline 0 ; func end
ret
.dbend
.dbfunc e LCD12864_readbyte _LCD12864_readbyte fc
; dByte -> R20
; DatCmd -> R20
.even
_LCD12864_readbyte::
xcall push_gset1
mov R20,R16
.dbline -1
.dbline 87
.dbline 89
tst R20
brne L52
.dbline 90
cbi 0x12,4
xjmp L53
L52:
.dbline 92
sbi 0x12,4
L53:
.dbline 94
sbi 0x12,5
.dbline 95
sbi 0x12,6
.dbline 96
clr R2
out 0x17,R2
.dbline 97
in R20,0x16
.dbline 98
ldi R16,1
ldi R17,0
xcall _Delayms
.dbline 99
cbi 0x12,6
.dbline 100
in R24,0x17
ori R24,255
out 0x17,R24
.dbline 101
mov R16,R20
.dbline -2
L51:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r dByte 20 c
.dbsym r DatCmd 20 c
.dbend
.dbfunc e LCD12864_sendbyte _LCD12864_sendbyte fV
; dByte -> R20
; DatCmd -> R22
.even
_LCD12864_sendbyte::
xcall push_gset2
mov R20,R18
mov R22,R16
.dbline -1
.dbline 111
;
;
;
.dbline 112
;
tst R22
brne L55
.dbline 113
;
cbi 0x12,4
xjmp L56
L55:
.dbline 115
;
;
sbi 0x12,4
L56:
.dbline 117
;
;
cbi 0x12,5
.dbline 118
;
sbi 0x12,6
.dbline 119
;
out 0x18,R20
.dbline 120
;
ldi R16,100
ldi R17,0
xcall _Delayus
.dbline 121
;
cbi 0x12,6
.dbline -2
L54:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym r dByte 20 c
.dbsym r DatCmd 22 c
.dbend
.dbfunc e LCD12864_sendstr _LCD12864_sendstr fV
; ptString -> R20,R21
.even
_LCD12864_sendstr::
xcall push_gset1
movw R20,R16
.dbline -1
.dbline 130
;
;
;
;
;
;
;
;
;
xjmp L59
L58:
.dbline 132
.dbline 133
movw R30,R20
ld R18,Z+
movw R20,R30
ldi R16,1
xcall _LCD12864_sendbyte
.dbline 134
ldi R16,10
ldi R17,0
xcall _Delayms
.dbline 135
L59:
.dbline 131
;
movw R30,R20
ldd R2,z+0
tst R2
brne L58
.dbline -2
L57:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r ptString 20 pc
.dbend
.dbfunc e LCD12864_clear _LCD12864_clear fV
.even
_LCD12864_clear::
.dbline -1
.dbline 144
;
;
;
;
;
;
;
;
;
;
;
;
;
.dbline 145
;
ldi R18,1
clr R16
xcall _LCD12864_sendbyte
.dbline 146
;
ldi R16,2
ldi R17,0
xcall _Delayms
.dbline -2
L61:
.dbline 0 ; func end
ret
.dbend
.dbfunc e LCD12864_readBF _LCD12864_readBF fc
; busy -> R20
.even
_LCD12864_readBF::
xcall push_gset1
.dbline -1
.dbline 155
;
;
;
;
;
;
;
;
;
.dbline 157
;
;
clr R16
xcall _LCD12864_readbyte
mov R20,R16
.dbline 158
;
sbrs R16,7
rjmp L63
.dbline 159
;
ldi R20,1
xjmp L64
L63:
.dbline 161
;
;
clr R20
L64:
.dbline 162
;
mov R16,R20
.dbline -2
L62:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r busy 20 c
.dbend
.dbfunc e LCD12864_gotoXY _LCD12864_gotoXY fV
; Col -> R20
; Row -> R22
.even
_LCD12864_gotoXY::
xcall push_gset2
mov R20,R18
mov R22,R16
.dbline -1
.dbline 172
;
;
;
;
;
;
;
;
;
;
.dbline 173
;
clr R23
cpi R22,2
ldi R30,0
cpc R23,R30
breq L69
cpi R22,3
ldi R30,0
cpc R23,R30
breq L70
cpi R22,4
ldi R30,0
cpc R23,R30
breq L71
xjmp L66
X11:
.dbline 174
;
L69:
.dbline 176
;
;
mov R18,R20
subi R18,112 ; addi 144
clr R16
xcall _LCD12864_sendbyte
.dbline 176
xjmp L67
L70:
.dbline 178
;
;
mov R18,R20
subi R18,120 ; addi 136
clr R16
xcall _LCD12864_sendbyte
.dbline 178
xjmp L67
L71:
.dbline 180
;
;
mov R18,R20
subi R18,104 ; addi 152
clr R16
xcall _LCD12864_sendbyte
.dbline 180
xjmp L67
L66:
.dbline 182
mov R18,R20
subi R18,128 ; addi 128
clr R16
xcall _LCD12864_sendbyte
.dbline 182
L67:
.dbline -2
L65:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym r Col 20 c
.dbsym r Row 22 c
.dbend
.dbfunc e LCD12864_initial _LCD12864_initial fV
.even
_LCD12864_initial::
.dbline -1
.dbline 192
;
;
;
;
;
;
;
;
;
;
;
;
.dbline 193
;
ldi R16,100
ldi R17,0
xcall _Delayms
.dbline 194
;
xcall _LCD12864_portini
.dbline 196
;
;
ldi R18,56
clr R16
xcall _LCD12864_sendbyte
L73:
.dbline 197
L74:
.dbline 197
;
xcall _LCD12864_readBF
tst R16
brne L73
.dbline 198
;
ldi R18,12
clr R16
xcall _LCD12864_sendbyte
L76:
.dbline 199
L77:
.dbline 199
;
xcall _LCD12864_readBF
tst R16
brne L76
.dbline 200
;
xcall _LCD12864_clear
L79:
.dbline 201
L80:
.dbline 201
;
xcall _LCD12864_readBF
tst R16
brne L79
.dbline 202
;
ldi R18,6
clr R16
xcall _LCD12864_sendbyte
.dbline -2
L72:
.dbline 0 ; func end
ret
.dbend
.dbfunc e LCD12864_opGDRAM _LCD12864_opGDRAM fV
; i -> R20
; x -> R22,R23
; j -> R10
; ptGDRAM -> R12,R13
.even
_LCD12864_opGDRAM::
xcall push_gset4
movw R12,R16
.dbline -1
.dbline 211
;
;
;
;
;
;
;
;
;
.dbline 213
;
;
clr R22
clr R23
L83:
.dbline 214
L84:
.dbline 214
;
xcall _LCD12864_readBF
tst R16
brne L83
.dbline 215
;
ldi R18,52
clr R16
xcall _LCD12864_sendbyte
.dbline 217
;
;
clr R20
xjmp L89
L86:
.dbline 218
;
.dbline 219
;
clr R10
xjmp L93
L90:
.dbline 220
.dbline 221
mov R18,R20
ori R18,128
clr R16
xcall _LCD12864_sendbyte
.dbline 222
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 223
mov R18,R10
ori R18,128
clr R16
xcall _LCD12864_sendbyte
.dbline 224
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 225
movw R2,R22
subi R22,255 ; offset = 1
sbci R23,255
movw R30,R2
add R30,R12
adc R31,R13
lpm R18,Z
ldi R16,1
xcall _LCD12864_sendbyte
.dbline 226
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 227
movw R2,R22
subi R22,255 ; offset = 1
sbci R23,255
movw R30,R2
add R30,R12
adc R31,R13
lpm R18,Z
ldi R16,1
xcall _LCD12864_sendbyte
.dbline 228
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 229
L91:
.dbline 219
inc R10
L93:
.dbline 219
mov R24,R10
cpi R24,8
brlo L90
.dbline 230
L87:
.dbline 217
inc R20
L89:
.dbline 217
cpi R20,32
brsh X12
xjmp L86
X12:
.dbline 232
;
;
;
;
;
;
;
;
;
;
;
;
;
clr R20
xjmp L97
L94:
.dbline 233
;
.dbline 234
;
ldi R24,8
mov R10,R24
xjmp L101
L98:
.dbline 235
.dbline 236
mov R18,R20
ori R18,128
clr R16
xcall _LCD12864_sendbyte
.dbline 237
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 238
mov R18,R10
ori R18,128
clr R16
xcall _LCD12864_sendbyte
.dbline 239
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 240
movw R2,R22
subi R22,255 ; offset = 1
sbci R23,255
movw R30,R2
add R30,R12
adc R31,R13
lpm R18,Z
ldi R16,1
xcall _LCD12864_sendbyte
.dbline 241
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 242
movw R2,R22
subi R22,255 ; offset = 1
sbci R23,255
movw R30,R2
add R30,R12
adc R31,R13
lpm R18,Z
ldi R16,1
xcall _LCD12864_sendbyte
.dbline 243
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 244
L99:
.dbline 234
inc R10
L101:
.dbline 234
mov R24,R10
cpi R24,16
brlo L98
.dbline 245
L95:
.dbline 232
inc R20
L97:
.dbline 232
cpi R20,32
brsh X13
xjmp L94
X13:
.dbline 246
;
;
;
;
;
;
;
;
;
;
;
;
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 247
;
ldi R18,54
clr R16
xcall _LCD12864_sendbyte
.dbline 248
;
ldi R18,48
clr R16
xcall _LCD12864_sendbyte
.dbline -2
L82:
xcall pop_gset4
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbsym r x 22 i
.dbsym r j 10 c
.dbsym r ptGDRAM 12 pkc
.dbend
.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/RTC.C
.dbfunc e DS1302_portinit _DS1302_portinit fV
.even
_DS1302_portinit::
.dbline -1
.dbline 26
.dbline 27
in R24,0x17
ori R24,160
out 0x17,R24
.dbline -2
L102:
.dbline 0 ; func end
ret
.dbend
.dbfunc e DS1302_writeB _DS1302_writeB fV
; i -> R20
; byte -> R22
.even
_DS1302_writeB::
xcall push_gset2
mov R22,R16
.dbline -1
.dbline 36
.dbline 38
clr R20
xjmp L107
L104:
.dbline 39
.dbline 40
cbi 0x18,7
.dbline 41
sbrs R22,0
rjmp L108
.dbline 42
.dbline 43
sbi 0x18,5
.dbline 44
xjmp L109
L108:
.dbline 46
.dbline 47
cbi 0x18,5
.dbline 48
L109:
.dbline 49
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 50
sbi 0x18,7
.dbline 51
lsr R22
.dbline 52
L105:
.dbline 38
inc R20
L107:
.dbline 38
cpi R20,8
brlo L104
.dbline -2
L103:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbsym r byte 22 c
.dbend
.dbfunc e DS1302_readB _DS1302_readB fc
; i -> R20
; byte -> R22
.even
_DS1302_readB::
xcall push_gset2
.dbline -1
.dbline 61
.dbline 62
clr R22
.dbline 63
cbi 0x17,5
.dbline 64
cbi 0x18,5
.dbline 65
clr R20
xjmp L114
L111:
.dbline 66
.dbline 67
lsr R22
.dbline 68
sbi 0x18,7
.dbline 69
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 70
cbi 0x18,7
.dbline 71
ldi R16,10
ldi R17,0
xcall _Delayus
.dbline 72
sbis 0x16,5
rjmp L115
.dbline 73
.dbline 74
ori R22,128
.dbline 75
xjmp L116
L115:
.dbline 77
.dbline 78
andi R22,127
.dbline 79
L116:
.dbline 80
L112:
.dbline 65
inc R20
L114:
.dbline 65
cpi R20,8
brlo L111
.dbline 81
sbi 0x17,5
.dbline 82
mov R16,R22
.dbline -2
L110:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym r i 20 c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -