📄 feedis_uart.lis
字号:
041C 80930F00 sts _dip,R24
0420 .dbline 289
0420 ; if(dip==129)
0420 8138 cpi R24,129
0422 89F4 brne L81
0424 .dbline 290
0424 ; dip=128;
0424 80E8 ldi R24,128
0426 80930F00 sts _dip,R24
042A .dbline 291
042A ; }
042A 0DC0 xjmp L81
042C L80:
042C .dbline 292
042C ; else if(flag_control==1)
042C 8A2D mov R24,R10
042E 8130 cpi R24,1
0430 51F4 brne L84
0432 .dbline 293
0432 ; {dip--;
0432 .dbline 293
0432 80910F00 lds R24,_dip
0436 8150 subi R24,1
0438 80930F00 sts _dip,R24
043C .dbline 294
043C ; if(dip==127)
043C 8F37 cpi R24,127
043E 19F4 brne L86
0440 .dbline 295
0440 ; dip=128;
0440 80E8 ldi R24,128
0442 80930F00 sts _dip,R24
0446 L86:
0446 .dbline 296
0446 ; }
0446 L84:
0446 L81:
0446 .dbline 300
0446 ;
0446 ;
0446 ;
0446 ; discounthh++;
0446 C601 movw R24,R12
0448 0196 adiw R24,1
044A 6C01 movw R12,R24
044C .dbline 301
044C ; if(discounthh==700)
044C 8C3B cpi R24,188
044E E2E0 ldi R30,2
0450 9E07 cpc R25,R30
0452 89F4 brne L88
0454 .dbline 302
0454 ; {uart0_txd(light);
0454 .dbline 302
0454 00910200 lds R16,_light
0458 47DF xcall _uart0_txd
045A .dbline 304
045A ; //u
045A ; dip=0;
045A 2224 clr R2
045C 20920F00 sts _dip,R2
0460 .dbline 305
0460 ; discounthh=0;
0460 CC24 clr R12
0462 DD24 clr R13
0464 .dbline 306
0464 ; if(flag_control==0)flag_control=1;
0464 AA20 tst R10
0466 19F4 brne L90
0468 .dbline 306
0468 AA24 clr R10
046A A394 inc R10
046C 04C0 xjmp L91
046E L90:
046E .dbline 307
046E ; else if(flag_control==1)flag_control=0;
046E 8A2D mov R24,R10
0470 8130 cpi R24,1
0472 09F4 brne L92
0474 .dbline 307
0474 AA24 clr R10
0476 L92:
0476 L91:
0476 .dbline 308
0476 ; }
0476 L88:
0476 .dbline 310
0476 ;
0476 ; if(ISDstatus>0)
0476 2224 clr R2
0478 30900000 lds R3,_ISDstatus
047C 2314 cp R2,R3
047E 08F0 brlo X11
0480 8EC0 xjmp L94
0482 X11:
0482 .dbline 311
0482 ; {
0482 .dbline 312
0482 ; if(SPEAK==1)
0482 80910100 lds R24,_SPEAK
0486 8130 cpi R24,1
0488 09F0 breq X12
048A 89C0 xjmp L96
048C X12:
048C .dbline 313
048C ; { switch (ISDstatus)
048C .dbline 313
048C E0900000 lds R14,_ISDstatus
0490 FF24 clr R15
0492 C701 movw R24,R14
0494 8130 cpi R24,1
0496 E0E0 ldi R30,0
0498 9E07 cpc R25,R30
049A 09F4 brne X13
049C 72C0 xjmp L133
049E X13:
049E 8230 cpi R24,2
04A0 E0E0 ldi R30,0
04A2 9E07 cpc R25,R30
04A4 09F4 brne X14
04A6 4FC0 xjmp L121
04A8 X14:
04A8 8330 cpi R24,3
04AA E0E0 ldi R30,0
04AC 9E07 cpc R25,R30
04AE 61F1 breq L108
04B0 8430 cpi R24,4
04B2 E0E0 ldi R30,0
04B4 9E07 cpc R25,R30
04B6 D1F0 breq L103
04B8 8530 cpi R24,5
04BA E0E0 ldi R30,0
04BC 9E07 cpc R25,R30
04BE 79F0 breq L102
04C0 8630 cpi R24,6
04C2 E0E0 ldi R30,0
04C4 9E07 cpc R25,R30
04C6 09F0 breq L101
04C8 65C0 xjmp L99
04CA X9:
04CA .dbline 314
04CA ; { case 0x06:
04CA L101:
04CA .dbline 315
04CA ; ISDplay(34+ISDmoney[0]-0x30);
04CA 00910000 lds R16,_ISDmoney
04CE 0E5D subi R16,222 ; addi 34
04D0 0053 subi R16,48
04D2 0E940000 xcall _ISDplay
04D6 .dbline 316
04D6 ; SPEAK=0;
04D6 2224 clr R2
04D8 20920100 sts _SPEAK,R2
04DC .dbline 317
04DC ; break;
04DC 5BC0 xjmp L99
04DE L102:
04DE .dbline 319
04DE ; case 0x05:
04DE ; ISDplay(20);
04DE 04E1 ldi R16,20
04E0 0E940000 xcall _ISDplay
04E4 .dbline 320
04E4 ; SPEAK=0;
04E4 2224 clr R2
04E6 20920100 sts _SPEAK,R2
04EA .dbline 321
04EA ; break;
04EA 54C0 xjmp L99
04EC L103:
04EC .dbline 323
04EC ; case 0x04:
04EC ; if(ISDmoney[1]!=0x20)
04EC 80910100 lds R24,_ISDmoney+1
04F0 8032 cpi R24,32
04F2 09F4 brne X15
04F4 4FC0 xjmp L99
04F6 X15:
04F6 .dbline 324
04F6 ; {ISDplay(82+ISDmoney[1]-0x30);
04F6 .dbline 324
04F6 082F mov R16,R24
04F8 0E5A subi R16,174 ; addi 82
04FA 0053 subi R16,48
04FC 0E940000 xcall _ISDplay
0500 .dbline 325
0500 ; SPEAK=0;
0500 2224 clr R2
0502 20920100 sts _SPEAK,R2
0506 .dbline 326
0506 ; }
0506 .dbline 327
0506 ; break;
0506 46C0 xjmp L99
0508 L108:
0508 .dbline 329
0508 ; case 0x03:
0508 ; if(ISDmoney[2]!=0x20)
0508 80910200 lds R24,_ISDmoney+2
050C 8032 cpi R24,32
050E 09F4 brne X16
0510 41C0 xjmp L99
0512 X16:
0512 .dbline 330
0512 ; {if(ISDmoney[2]!=0x30)
0512 .dbline 330
0512 8033 cpi R24,48
0514 49F0 breq L112
0516 .dbline 331
0516 ; {ISDplay(73+ISDmoney[2]-0x30);SPEAK=0;}
0516 .dbline 331
0516 082F mov R16,R24
0518 075B subi R16,183 ; addi 73
051A 0053 subi R16,48
051C 0E940000 xcall _ISDplay
0520 .dbline 331
0520 2224 clr R2
0522 20920100 sts _SPEAK,R2
0526 .dbline 331
0526 36C0 xjmp L99
0528 L112:
0528 .dbline 333
0528 ; else
0528 ; {if((ISDmoney[3]!=0x30)||(ISDmoney[4]!=0x30))
0528 .dbline 333
0528 80910300 lds R24,_ISDmoney+3
052C 8033 cpi R24,48
052E 21F4 brne L120
0530 80910400 lds R24,_ISDmoney+4
0534 8033 cpi R24,48
0536 71F1 breq L99
0538 L120:
0538 .dbline 334
0538 ; {ISDplay(54);SPEAK=0;}
0538 .dbline 334
0538 06E3 ldi R16,54
053A 0E940000 xcall _ISDplay
053E .dbline 334
053E 2224 clr R2
0540 20920100 sts _SPEAK,R2
0544 .dbline 334
0544 .dbline 335
0544 ; }
0544 .dbline 337
0544 ;
0544 ; }break;
0544 .dbline 337
0544 27C0 xjmp L99
0546 L121:
0546 .dbline 339
0546 ; case 0x02:
0546 ; if(ISDmoney[3]!=0x20)
0546 80910300 lds R24,_ISDmoney+3
054A 8032 cpi R24,32
054C 19F1 breq L99
054E .dbline 340
054E ; {if(ISDmoney[3]!=0x30)
054E .dbline 340
054E 8033 cpi R24,48
0550 49F0 breq L125
0552 .dbline 341
0552 ; {ISDplay(64+ISDmoney[3]-0x30); SPEAK=0;}
0552 .dbline 341
0552 082F mov R16,R24
0554 005C subi R16,192 ; addi 64
0556 0053 subi R16,48
0558 0E940000 xcall _ISDplay
055C .dbline 341
055C 2224 clr R2
055E 20920100 sts _SPEAK,R2
0562 .dbline 341
0562 18C0 xjmp L99
0564 L125:
0564 .dbline 343
0564 ; else
0564 ; {
0564 .dbline 344
0564 ; if((ISDmoney[4]!=0x30)&&(ISDmoney[2]!=0x30))//hou mian bu wei 0
0564 80910400 lds R24,_ISDmoney+4
0568 8033 cpi R24,48
056A A1F0 breq L99
056C 80910200 lds R24,_ISDmoney+2
0570 8033 cpi R24,48
0572 81F0 breq L99
0574 .dbline 345
0574 ; {ISDplay(54); SPEAK=0;} // bo fang 0
0574 .dbline 345
0574 06E3 ldi R16,54
0576 0E940000 xcall _ISDplay
057A .dbline 345
057A 2224 clr R2
057C 20920100 sts _SPEAK,R2
0580 .dbline 345
0580 .dbline 346
0580 ; }
0580 .dbline 348
0580 ;
0580 ; }
0580 .dbline 349
0580 ; break;
0580 09C0 xjmp L99
0582 L133:
0582 .dbline 351
0582 ; case 0x01:
0582 ; ISDplay(44+ISDmoney[4]-0x30);
0582 00910400 lds R16,_ISDmoney+4
0586 045D subi R16,212 ; addi 44
0588 0053 subi R16,48
058A 0E940000 xcall _ISDplay
058E .dbline 352
058E ; SPEAK=0; break;
058E 2224 clr R2
0590 20920100 sts _SPEAK,R2
0594 .dbline 352
0594 .dbline 353
0594 ; default : break;
0594 L99:
0594 .dbline 355
0594 ; }
0594 ; ISDstatus--;
0594 80910000 lds R24,_ISDstatus
0598 8150 subi R24,1
059A 80930000 sts _ISDstatus,R24
059E .dbline 360
059E ;
059E ;
059E ;
059E ;
059E ; }
059E L96:
059E .dbline 362
059E ;
059E ; }
059E L94:
059E .dbline 363
059E L76:
059E .dbline 278
059E 2CCF xjmp L75
05A0 X10:
05A0 .dbline -2
05A0 L71:
05A0 .dbline 0 ; func end
05A0 0895 ret
05A2 .dbsym l ptr 1 pc
05A2 .dbsym l temp1 1 i
05A2 .dbsym l temp 1 c
05A2 .dbsym r discounthh 12 i
05A2 .dbsym r flag_control 10 c
05A2 .dbend
.area bss(ram, con, rel)
0000 .dbfile C:\DOCUME~1\11111\桌面\13个费显MEGA64\重显MEGA64\feedis_uart.c
0000 _flg::
0000 .blkb 1
0001 .dbsym e flg _flg c
0001 _SPEAK::
0001 .blkb 1
0002 .dbsym e SPEAK _SPEAK c
0002 _light::
0002 .blkb 1
0003 .dbsym e light _light c
0003 _receivebox::
0003 .blkb 70
0049 .dbsym e receivebox _receivebox A[70:70]c
0049 _RX_index::
0049 .blkb 1
004A .dbsym e RX_index _RX_index c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -