⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lis

📁 一个单片机的完整开发程序AVR的
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 05AE           ;       
 05AE           ;       work_state();
 05AE AC9A              sbi 0x15,4
 05B0                   .dbline 305
 05B0           ;     rece_state();
 05B0 AA98              cbi 0x15,2
 05B2                   .dbline 307
 05B2           ;       
 05B2           ;       for(i=0;i<100;i++)
 05B2 0024              clr R0
 05B4 FE01              movw R30,R28
 05B6 E653              subi R30,54  ; addi 202
 05B8 FF4F              sbci R31,255
 05BA 0082              std z+0,R0
 05BC 28C0              xjmp L109
 05BE           L106:
 05BE                   .dbline 308
 05BE                   .dbline 309
 05BE 80E0              ldi R24,<_ques
 05C0 90E0              ldi R25,>_ques
 05C2 DE01              movw R26,R28
 05C4 A653              subi R26,54  ; addi 202
 05C6 BF4F              sbci R27,255
 05C8 EC91              ld R30,x
 05CA FF27              clr R31
 05CC E80F              add R30,R24
 05CE F91F              adc R31,R25
 05D0 2224              clr R2
 05D2 2082              std z+0,R2
 05D4                   .dbline 310
 05D4 CE01              movw R24,R28
 05D6 8C59              subi R24,156  ; offset = 100
 05D8 9F4F              sbci R25,255
 05DA DE01              movw R26,R28
 05DC A653              subi R26,54  ; addi 202
 05DE BF4F              sbci R27,255
 05E0 EC91              ld R30,x
 05E2 FF27              clr R31
 05E4 E80F              add R30,R24
 05E6 F91F              adc R31,R25
 05E8 2082              std z+0,R2
 05EA                   .dbline 311
 05EA CE01              movw R24,R28
 05EC DE01              movw R26,R28
 05EE A653              subi R26,54  ; addi 202
 05F0 BF4F              sbci R27,255
 05F2 EC91              ld R30,x
 05F4 FF27              clr R31
 05F6 E80F              add R30,R24
 05F8 F91F              adc R31,R25
 05FA 2082              std z+0,R2
 05FC                   .dbline 312
 05FC           L107:
 05FC                   .dbline 307
 05FC FE01              movw R30,R28
 05FE E653              subi R30,54  ; addi 202
 0600 FF4F              sbci R31,255
 0602 0080              ldd R0,z+0
 0604 0394              inc R0
 0606 FE01              movw R30,R28
 0608 E653              subi R30,54  ; addi 202
 060A FF4F              sbci R31,255
 060C 0082              std z+0,R0
 060E           L109:
 060E                   .dbline 307
 060E FE01              movw R30,R28
 0610 E653              subi R30,54  ; addi 202
 0612 FF4F              sbci R31,255
 0614 8081              ldd R24,z+0
 0616 8436              cpi R24,100
 0618 08F4              brsh X7
 061A D1CF              xjmp L106
 061C           X7:
 061C                   .dbline 313
 061C           ;       {               
 061C           ;               ques[i]=0;
 061C           ;               n_ques[i]=0;
 061C           ;               ans[i]=0;
 061C           ;       }
 061C           ;       d=0xF0;
 061C 80EF              ldi R24,240
 061E FE01              movw R30,R28
 0620 EF52              subi R30,47  ; addi 209
 0622 FF4F              sbci R31,255
 0624 8083              std z+0,R24
 0626 A9C6              xjmp L111
 0628           L110:
 0628                   .dbline 316
 0628           ; 
 0628           ;  while(1)
 0628           ;  {
 0628                   .dbline 317
 0628           ;   n_num=0;
 0628 EE24              clr R14
 062A                   .dbline 318
 062A           ;   if(t==1)
 062A 8091D500          lds R24,_t
 062E 8130              cpi R24,1
 0630 09F0              breq X8
 0632 F1C0              xjmp L113
 0634           X8:
 0634                   .dbline 319
 0634           ;   {
 0634                   .dbline 320
 0634           ;     i=receive();
 0634 D6DD              xcall _receive
 0636 FE01              movw R30,R28
 0638 E653              subi R30,54  ; addi 202
 063A FF4F              sbci R31,255
 063C 0083              std z+0,R16
 063E                   .dbline 321
 063E           ;       if(i)
 063E 002E              mov R0,R16
 0640 0023              tst R16
 0642 41F1              breq L115
 0644                   .dbline 322
 0644           ;       for(j=0;j<11;j++)
 0644 0024              clr R0
 0646 FE01              movw R30,R28
 0648 E453              subi R30,52  ; addi 204
 064A FF4F              sbci R31,255
 064C 0082              std z+0,R0
 064E 1CC0              xjmp L120
 0650           L117:
 0650                   .dbline 323
 0650 80E0              ldi R24,<_data
 0652 90E0              ldi R25,>_data
 0654 DE01              movw R26,R28
 0656 A453              subi R26,52  ; addi 204
 0658 BF4F              sbci R27,255
 065A EC91              ld R30,x
 065C FF27              clr R31
 065E E80F              add R30,R24
 0660 F91F              adc R31,R25
 0662 2080              ldd R2,z+0
 0664 FE01              movw R30,R28
 0666 EF52              subi R30,47  ; addi 209
 0668 FF4F              sbci R31,255
 066A 0080              ldd R0,z+0
 066C 0224              eor R0,R2
 066E FE01              movw R30,R28
 0670 EF52              subi R30,47  ; addi 209
 0672 FF4F              sbci R31,255
 0674 0082              std z+0,R0
 0676           L118:
 0676                   .dbline 322
 0676 FE01              movw R30,R28
 0678 E453              subi R30,52  ; addi 204
 067A FF4F              sbci R31,255
 067C 0080              ldd R0,z+0
 067E 0394              inc R0
 0680 FE01              movw R30,R28
 0682 E453              subi R30,52  ; addi 204
 0684 FF4F              sbci R31,255
 0686 0082              std z+0,R0
 0688           L120:
 0688                   .dbline 322
 0688 FE01              movw R30,R28
 068A E453              subi R30,52  ; addi 204
 068C FF4F              sbci R31,255
 068E 8081              ldd R24,z+0
 0690 8B30              cpi R24,11
 0692 F0F2              brlo L117
 0694           L115:
 0694                   .dbline 325
 0694           ;       d^=data[j];
 0694           ;       
 0694           ;       if(d==data[11])
 0694 20900E00          lds R2,_data+11
 0698 FE01              movw R30,R28
 069A EF52              subi R30,47  ; addi 209
 069C FF4F              sbci R31,255
 069E 0080              ldd R0,z+0
 06A0 0214              cp R0,R2
 06A2 09F0              breq X9
 06A4 B8C0              xjmp L121
 06A6           X9:
 06A6                   .dbline 326
 06A6           ;       {
 06A6                   .dbline 327
 06A6           ;        if(data[4]==guest_id||data[4]>80||data[4]==0)
 06A6 2090D600          lds R2,_guest_id
 06AA 30900700          lds R3,_data+4
 06AE 3214              cp R3,R2
 06B0 31F0              breq L130
 06B2 80E5              ldi R24,80
 06B4 8315              cp R24,R3
 06B6 18F0              brlo L130
 06B8 3320              tst R3
 06BA 09F0              breq X10
 06BC ACC0              xjmp L124
 06BE           X10:
 06BE           L130:
 06BE                   .dbline 328
 06BE           ;        {
 06BE                   .dbline 330
 06BE           ;       
 06BE           ;        if(data[6]==temp)//
 06BE 20900900          lds R2,_data+6
 06C2 FE01              movw R30,R28
 06C4 E752              subi R30,39  ; addi 217
 06C6 FF4F              sbci R31,255
 06C8 0080              ldd R0,z+0
 06CA 2014              cp R2,R0
 06CC 09F4              brne L131
 06CE                   .dbline 331
 06CE           ;        goto B;
 06CE 28C5              xjmp L134
 06D0           L131:
 06D0                   .dbline 334
 06D0           ;        
 06D0           ;        else
 06D0           ;        {
 06D0                   .dbline 335
 06D0           ;          temp=data[6];
 06D0 20900900          lds R2,_data+6
 06D4 FE01              movw R30,R28
 06D6 E752              subi R30,39  ; addi 217
 06D8 FF4F              sbci R31,255
 06DA 2082              std z+0,R2
 06DC                   .dbline 337
 06DC           ;               //key_flag=0;
 06DC           ;         switch(data[7])
 06DC 20900A00          lds R2,_data+7
 06E0 3324              clr R3
 06E2 FE01              movw R30,R28
 06E4 E853              subi R30,56  ; addi 200
 06E6 FF4F              sbci R31,255
 06E8 3182              std z+1,R3
 06EA 2082              std z+0,R2
 06EC C101              movw R24,R2
 06EE 8232              cpi R24,34
 06F0 E0E0              ldi R30,0
 06F2 9E07              cpc R25,R30
 06F4 79F0              breq L140
 06F6 8232              cpi R24,34
 06F8 E0E0              ldi R30,0
 06FA 9E07              cpc R25,R30
 06FC 0CF4              brge X11
 06FE 8BC0              xjmp L136
 0700           X11:
 0700           L158:
 0700 FE01              movw R30,R28
 0702 E853              subi R30,56  ; addi 200
 0704 FF4F              sbci R31,255
 0706 8081              ldd R24,z+0
 0708 9181              ldd R25,z+1
 070A 8A3D              cpi R24,218
 070C E0E0              ldi R30,0
 070E 9E07              cpc R25,R30
 0710 01F1              breq L148
 0712 81C0              xjmp L136
 0714           X0:
 0714                   .dbline 338
 0714           ;         {
 0714           L140:
 0714                   .dbline 339
 0714           ;          case 0x22: lcd_buffer[1]=0x90;
 0714 80E9              ldi R24,144
 0716 8093D900          sts _lcd_buffer+1,R24
 071A                   .dbline 340
 071A           ;                                 lcd_buffer[11]=0x10;
 071A 80E1              ldi R24,16
 071C 8093E300          sts _lcd_buffer+11,R24
 0720                   .dbline 341
 0720           ;                                 lcd_buffer[15]=0x10;
 0720 8093E700          sts _lcd_buffer+15,R24
 0724                   .dbline 343
 0724           ;               
 0724           ;                                 send_data(0x16,lcd_buffer[11]);
 0724 282F              mov R18,R24
 0726 06E1              ldi R16,22
 0728 0E940000          xcall _send_data
 072C                   .dbline 344
 072C           ;                                 send_data(0x02,lcd_buffer[1]);
 072C 2091D900          lds R18,_lcd_buffer+1
 0730 02E0              ldi R16,2
 0732 0E940000          xcall _send_data
 0736                   .dbline 345
 0736           ;                                 send_data(0x1e,lcd_buffer[15]);
 0736 2091E700          lds R18,_lcd_buffer+15
 073A 0EE1              ldi R16,30
 073C 0E940000          xcall _send_data
 0740                   .dbline 347
 0740           ;               
 0740           ;                                 ques_num=data[8];
 0740 20900B00          lds R2,_data+8
 0744 20920200          sts _ques_num,R2
 0748                   .dbline 348
 0748           ;                                 ques_id=ques_num;
 0748 FE01              movw R30,R28
 074A E353              subi R30,51  ; addi 205
 074C FF4F              sbci R31,255
 074E 2082              std z+0,R2
 0750                   .dbline 349
 0750           ;                                 break;
 0750 62C0              xjmp L137
 0752           L148:
 0752                   .dbline 350
 0752           ;          case 0xDA: score=data[8];
 0752 A0900B00          lds R10,_data+8
 0756                   .dbline 351
 0756           ;                                 key_flag=0;
 0756 0024              clr R0
 0758 FE01              movw R30,R28
 075A ED52              subi R30,45  ; addi 211
 075C FF4F              sbci R31,255
 075E 0082              std z+0,R0
 0760                   .dbline 352
 0760           ;                                 i=score/100;
 0760 14E6              ldi R17,100
 0762 0A2D              mov R16,R10
 0764 0E940000          xcall div8u
 0768 FE01              movw R30,R28
 076A E653              subi R30,54  ; addi 202
 076C FF4F              sbci R31,255
 076E 0083              std z+0,R16
 0770                   .dbline 353
 0770           ;                                 j=(score-i*100)/10;
 0770 84E6              ldi R24,100
 0772 002E              mov R0,R16
 0774 809D              mul R24,R0
 0776 0A2D              mov R16,R10
 0778 0019              sub R16,R0
 077A 1AE0              ldi R17,10
 077C 0E940000          xcall div8u
 0780 FE01              movw R30,R28
 0782 E453              subi R30,52  ; addi 204
 0784 FF4F              sbci R31,255
 0786 0083              std z+0,R16
 0788                   .dbline 354
 0788           ;                                 k=score-i*100-j*10;
 0788 84E6              ldi R24,100
 078A FE01              movw R30,R28
 078C E653              subi R30,54  ; addi 202
 078E FF4F              sbci R31,255
 0790 0080              ldd R0,z+0
 0792 809D              mul R24,R0
 0794 2A2C              mov R2,R10
 0796 2018              sub R2,R0
 0798 8AE0              ldi R24,10

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -