📄 1602_main.lis
字号:
01AA .dbline 138
01AA A2BA out 0x12,R10
01AC .dbline 139
01AC DF98 cbi 0x1b,7
01AE .dbline 140
01AE 6E5F subi R22,254 ; offset = 2
01B0 7F4F sbci R23,255
01B2 .dbline 141
01B2 L16:
01B2 .dbline 134
01B2 4150 subi R20,1
01B4 5040 sbci R21,0
01B6 L18:
01B6 .dbline 134
01B6 4030 cpi R20,0
01B8 4507 cpc R20,R21
01BA 99F7 brne L15
01BC X2:
01BC .dbline -2
01BC L14:
01BC .dbline 0 ; func end
01BC 0C940000 xjmp pop_xgsetF00C
01C0 .dbsym r t 10 i
01C0 .dbsym r i 20 i
01C0 .dbsym r pBuffer 22 pki
01C0 .dbsym r num 10 i
01C0 .dbend
01C0 .dbfunc e WriteMenu _WriteMenu fV
01C0 ; t -> R10
01C0 ; i -> R22
01C0 ; pBuffer -> R20,R21
.even
01C0 _WriteMenu::
01C0 0E940000 xcall push_xgsetF00C
01C4 A801 movw R20,R16
01C6 .dbline -1
01C6 .dbline 151
01C6 .dbline 153
01C6 00E8 ldi R16,128
01C8 4FDF xcall _writecom
01CA .dbline 155
01CA DD9A sbi 0x1b,5
01CC .dbline 156
01CC DE98 cbi 0x1b,6
01CE .dbline 157
01CE 02E3 ldi R16,50
01D0 10E0 ldi R17,0
01D2 16DF xcall _s_ms
01D4 .dbline 158
01D4 6627 clr R22
01D6 0BC0 xjmp L23
01D8 L20:
01D8 .dbline 159
01D8 .dbline 160
01D8 FA01 movw R30,R20
01DA A690 elpm R10,Z
01DC .dbline 161
01DC A2BA out 0x12,R10
01DE .dbline 162
01DE DF9A sbi 0x1b,7
01E0 .dbline 163
01E0 02E3 ldi R16,50
01E2 10E0 ldi R17,0
01E4 0DDF xcall _s_ms
01E6 .dbline 164
01E6 DF98 cbi 0x1b,7
01E8 .dbline 165
01E8 4F5F subi R20,255 ; offset = 1
01EA 5F4F sbci R21,255
01EC .dbline 166
01EC L21:
01EC .dbline 158
01EC 6395 inc R22
01EE L23:
01EE .dbline 158
01EE 6031 cpi R22,16
01F0 98F3 brlo L20
01F2 X3:
01F2 .dbline 167
01F2 00EC ldi R16,192
01F4 39DF xcall _writecom
01F6 .dbline 169
01F6 DD9A sbi 0x1b,5
01F8 .dbline 170
01F8 DE98 cbi 0x1b,6
01FA .dbline 171
01FA 02E3 ldi R16,50
01FC 10E0 ldi R17,0
01FE 00DF xcall _s_ms
0200 .dbline 172
0200 6627 clr R22
0202 0BC0 xjmp L27
0204 L24:
0204 .dbline 173
0204 .dbline 174
0204 FA01 movw R30,R20
0206 A690 elpm R10,Z
0208 .dbline 175
0208 A2BA out 0x12,R10
020A .dbline 176
020A DF9A sbi 0x1b,7
020C .dbline 177
020C 02E3 ldi R16,50
020E 10E0 ldi R17,0
0210 F7DE xcall _s_ms
0212 .dbline 178
0212 DF98 cbi 0x1b,7
0214 .dbline 179
0214 4F5F subi R20,255 ; offset = 1
0216 5F4F sbci R21,255
0218 .dbline 180
0218 L25:
0218 .dbline 172
0218 6395 inc R22
021A L27:
021A .dbline 172
021A 6031 cpi R22,16
021C 98F3 brlo L24
021E X4:
021E .dbline -2
021E L19:
021E .dbline 0 ; func end
021E 0C940000 xjmp pop_xgsetF00C
0222 .dbsym r t 10 c
0222 .dbsym r i 22 c
0222 .dbsym r pBuffer 20 pkc
0222 .dbend
0222 .dbfunc e WriteNum _WriteNum fV
0222 ; num -> R20,R21
0222 ; col -> R10,R11
0222 ; row -> R22,R23
.even
0222 _WriteNum::
0222 0E940000 xcall push_xgsetF00C
0226 5901 movw R10,R18
0228 B801 movw R22,R16
022A 4E81 ldd R20,y+6
022C 5F81 ldd R21,y+7
022E .dbline -1
022E .dbline 190
022E .dbline 191
022E 6130 cpi R22,1
0230 E0E0 ldi R30,0
0232 7E07 cpc R23,R30
0234 21F4 brne L29
0236 X5:
0236 .dbline 191
0236 B501 movw R22,R10
0238 6058 subi R22,128 ; offset = 128
023A 7F4F sbci R23,255
023C 03C0 xjmp L30
023E L29:
023E .dbline 192
023E B501 movw R22,R10
0240 6054 subi R22,64 ; offset = 192
0242 7F4F sbci R23,255
0244 L30:
0244 .dbline 193
0244 062F mov R16,R22
0246 10DF xcall _writecom
0248 .dbline 194
0248 4030 cpi R20,0
024A 4507 cpc R20,R21
024C 21F4 brne L33
024E X6:
024E 81E0 ldi R24,1
0250 90E0 ldi R25,0
0252 5C01 movw R10,R24
0254 02C0 xjmp L34
0256 L33:
0256 AA24 clr R10
0258 BB24 clr R11
025A L34:
025A 89E0 ldi R24,9
025C 90E0 ldi R25,0
025E 8417 cp R24,R20
0260 9507 cpc R25,R21
0262 18F4 brsh L35
0264 X7:
0264 61E0 ldi R22,1
0266 70E0 ldi R23,0
0268 02C0 xjmp L36
026A L35:
026A 6627 clr R22
026C 7727 clr R23
026E L36:
026E 1501 movw R2,R10
0270 262A or R2,R22
0272 372A or R3,R23
0274 2220 tst R2
0276 11F4 brne X8
0278 3320 tst R3
027A 19F0 breq L31
027C X8:
027C .dbline 194
027C 40E3 ldi R20,48
027E 50E0 ldi R21,0
0280 02C0 xjmp L32
0282 L31:
0282 .dbline 195
0282 405D subi R20,208 ; offset = 48
0284 5F4F sbci R21,255
0286 L32:
0286 .dbline 197
0286 DD9A sbi 0x1b,5
0288 .dbline 198
0288 04EF ldi R16,500
028A 11E0 ldi R17,1
028C B9DE xcall _s_ms
028E .dbline 199
028E DE98 cbi 0x1b,6
0290 .dbline 200
0290 04EF ldi R16,500
0292 11E0 ldi R17,1
0294 B5DE xcall _s_ms
0296 .dbline 201
0296 42BB out 0x12,R20
0298 .dbline 202
0298 04EF ldi R16,500
029A 11E0 ldi R17,1
029C B1DE xcall _s_ms
029E .dbline 203
029E DF9A sbi 0x1b,7
02A0 .dbline 204
02A0 04EF ldi R16,500
02A2 11E0 ldi R17,1
02A4 ADDE xcall _s_ms
02A6 .dbline 205
02A6 DF98 cbi 0x1b,7
02A8 .dbline 206
02A8 04EF ldi R16,500
02AA 11E0 ldi R17,1
02AC A9DE xcall _s_ms
02AE .dbline -2
02AE L28:
02AE .dbline 0 ; func end
02AE 0C940000 xjmp pop_xgsetF00C
02B2 .dbsym r num 20 i
02B2 .dbsym r col 10 i
02B2 .dbsym r row 22 i
02B2 .dbend
02B2 .dbfunc e WriteChar _WriteChar fV
02B2 ; t -> R12
02B2 ; i -> R10
02B2 ; pBuffer -> R20,R21
02B2 ; num -> y+8
02B2 ; col -> R10
02B2 ; row -> R22
.even
02B2 _WriteChar::
02B2 0E940000 xcall push_xgsetF03C
02B6 A22E mov R10,R18
02B8 602F mov R22,R16
02BA 4A85 ldd R20,y+10
02BC 5B85 ldd R21,y+11
02BE .dbline -1
02BE .dbline 216
02BE .dbline 218
02BE 6130 cpi R22,1
02C0 19F4 brne L38
02C2 X9:
02C2 .dbline 218
02C2 6A2D mov R22,R10
02C4 6058 subi R22,128 ; addi 128
02C6 02C0 xjmp L39
02C8 L38:
02C8 .dbline 219
02C8 6A2D mov R22,R10
02CA 6054 subi R22,64 ; addi 192
02CC L39:
02CC .dbline 220
02CC 062F mov R16,R22
02CE CCDE xcall _writecom
02D0 .dbline 224
02D0 DD9A sbi 0x1b,5
02D2 .dbline 225
02D2 04EF ldi R16,500
02D4 11E0 ldi R17,1
02D6 94DE xcall _s_ms
02D8 .dbline 226
02D8 DE98 cbi 0x1b,6
02DA .dbline 227
02DA 04EF ldi R16,500
02DC 11E0 ldi R17,1
02DE 90DE xcall _s_ms
02E0 .dbline 228
02E0 A884 ldd R10,y+8
02E2 14C0 xjmp L43
02E4 L40:
02E4 .dbline 229
02E4 .dbline 230
02E4 FA01 movw R30,R20
02E6 C080 ldd R12,z+0
02E8 .dbline 231
02E8 04EF ldi R16,500
02EA 11E0 ldi R17,1
02EC 89DE xcall _s_ms
02EE .dbline 232
02EE C2BA out 0x12,R12
02F0 .dbline 233
02F0 04EF ldi R16,500
02F2 11E0 ldi R17,1
02F4 85DE xcall _s_ms
02F6 .dbline 234
02F6 DF9A sbi 0x1b,7
02F8 .dbline 235
02F8 04EF ldi R16,500
02FA 11E0 ldi R17,1
02FC 81DE xcall _s_ms
02FE .dbline 236
02FE DF98 cbi 0x1b,7
0300 .dbline 237
0300 04EF ldi R16,500
0302 11E0 ldi R17,1
0304 7DDE xcall _s_ms
0306 .dbline 238
0306 4F5F subi R20,255 ; offset = 1
0308 5F4F sbci R21,255
030A .dbline 239
030A L41:
030A .dbline 228
030A AA94 dec R10
030C L43:
030C .dbline 228
030C AA20 tst R10
030E 51F7 brne L40
0310 X10:
0310 .dbline -2
0310 L37:
0310 .dbline 0 ; func end
0310 0C940000 xjmp pop_xgsetF03C
0314 .dbsym r t 12 c
0314 .dbsym r i 10 c
0314 .dbsym r pBuffer 20 pc
0314 .dbsym l num 8 i
0314 .dbsym r col 10 c
0314 .dbsym r row 22 c
0314 .dbend
.area data(ram, con, rel)
0000 .dbfile D:\16实验程序\1602液晶\1602.h
0000 _wz::
0000 .blkb 14
.area idata
0000 5757572E49534D43552E434F4D00 .byte 'W,'W,'W,46,'I,'S,'M,'C,'U,46,'C,'O,'M,0
.area data(ram, con, rel)
000E .dbfile D:\16实验程序\1602液晶\1602.h
000E .dbfile D:\16实验程序\1602液晶\1602_main.c
000E .dbsym e wz _wz A[14:14]c
000E _gd::
000E .blkb 11
.area idata
000E 476F6F64204C75636B2100 .byte 'G,'o,'o,'d,32,'L,'u,'c,'k,33,0
.area data(ram, con, rel)
0019 .dbfile D:\16实验程序\1602液晶\1602_main.c
0019 .dbsym e gd _gd A[11:11]c
.area text(rom, con, rel)
0314 .dbfile D:\16实验程序\1602液晶\1602_main.c
0314 .dbfunc e main _main fV
.even
0314 _main::
0314 2497 sbiw R28,4
0316 .dbline -1
0316 .dbline 12
0316 .dbline 13
0316 8FEF ldi R24,255
0318 8ABB out 0x1a,R24
031A .dbline 14
031A 8BBB out 0x1b,R24
031C .dbline 15
031C 81BB out 0x11,R24
031E .dbline 16
031E 82BB out 0x12,R24
0320 .dbline 17
0320 08E8 ldi R16,5000
0322 13E1 ldi R17,19
0324 6DDE xcall _s_ms
0326 .dbline 18
0326 BCDE xcall _LcdInit
0328 .dbline 19
0328 80E0 ldi R24,<_wz
032A 90E0 ldi R25,>_wz
032C 9B83 std y+3,R25
032E 8A83 std y+2,R24
0330 8DE0 ldi R24,13
0332 90E0 ldi R25,0
0334 9983 std y+1,R25
0336 8883 std y+0,R24
0338 21E0 ldi R18,1
033A 01E0 ldi R16,1
033C BADF xcall _WriteChar
033E .dbline 20
033E 80E0 ldi R24,<_gd
0340 90E0 ldi R25,>_gd
0342 9B83 std y+3,R25
0344 8A83 std y+2,R24
0346 8AE0 ldi R24,10
0348 90E0 ldi R25,0
034A 9983 std y+1,R25
034C 8883 std y+0,R24
034E 23E0 ldi R18,3
0350 02E0 ldi R16,2
0352 AFDF xcall _WriteChar
0354 .dbline -2
0354 L44:
0354 .dbline 0 ; func end
0354 2496 adiw R28,4
0356 0895 ret
0358 .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -