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

📄 main.lis

📁 一个单片机的完整开发程序AVR的
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 022E           ;                if(data[4]==guest_id||data[4]==0xfe||data[4]==0xdb)
 022E 2090D600          lds R2,_guest_id
 0232 0215              cp R16,R2
 0234 21F0              breq L54
 0236 0E3F              cpi R16,254
 0238 11F0              breq L54
 023A 0B3D              cpi R16,219
 023C A1F6              brne L28
 023E           L54:
 023E                   .dbline 169
 023E           ;                {
 023E                   .dbline 170
 023E           ;                 for(j=5;j<12+ques_num;j++)   //
 023E 45E0              ldi R20,5
 0240 09C0              xjmp L58
 0242           L55:
 0242                   .dbline 171
 0242 3CDF              xcall _getchar
 0244 80E0              ldi R24,<_data
 0246 90E0              ldi R25,>_data
 0248 E42F              mov R30,R20
 024A FF27              clr R31
 024C E80F              add R30,R24
 024E F91F              adc R31,R25
 0250 0083              std z+0,R16
 0252           L56:
 0252                   .dbline 170
 0252 4395              inc R20
 0254           L58:
 0254                   .dbline 170
 0254 80910200          lds R24,_ques_num
 0258 845F              subi R24,244    ; addi 12
 025A 4817              cp R20,R24
 025C 90F3              brlo L55
 025E                   .dbline 172
 025E           ;                 data[j]=getchar();
 025E           ;                }
 025E                   .dbline 173
 025E           ;                else goto begin;
 025E                   .dbline 174
 025E           ;               }
 025E                   .dbline 175
 025E           ;               else goto begin;
 025E                   .dbline 176
 025E           ;          }
 025E                   .dbline 177
 025E           ;          else goto begin;
 025E                   .dbline 178
 025E           ;         }
 025E                   .dbline 179
 025E           ;         else goto begin;
 025E                   .dbline 180
 025E           ;        }
 025E                   .dbline 181
 025E           ;        else goto begin; 
 025E                   .dbline 182
 025E           ;       }
 025E                   .dbline 183
 025E           ;       else goto begin;
 025E           L32:
 025E                   .dbline 184
 025E           ;    return 1;
 025E 01E0              ldi R16,1
 0260                   .dbline -2
 0260           L27:
 0260 0E940000          xcall pop_gset1
 0264                   .dbline 0 ; func end
 0264 0895              ret
 0266                   .dbsym r j 20 c
 0266                   .dbsym r i 20 c
 0266                   .dbend
 0266                   .dbfunc e main _main fV
 0266           ;             d1 -> <dead>
 0266           ;          score -> R10
 0266           ;           temp -> y+217
 0266           ;      keye_flag -> y+216
 0266           ;      keyd_flag -> y+215
 0266           ;      keyb_flag -> y+214
 0266           ;      keya_flag -> y+213
 0266           ;       nques_id -> y+212
 0266           ;          adc_l -> R12
 0266           ;          adc_h -> R22
 0266           ;       key_flag -> y+211
 0266           ;        adc_rel -> R20,R21
 0266           ;      keyc_flag -> y+210
 0266           ;              d -> y+209
 0266           ;        adc_old -> y+207
 0266           ;         n_ques -> y+100
 0266           ;          n_num -> R14
 0266           ;            key -> y+206
 0266           ;        ques_id -> y+205
 0266           ;            ans -> y+0
 0266           ;              j -> y+204
 0266           ;              k -> y+203
 0266           ;              i -> y+202
                        .even
 0266           _main::
 0266 EF97              sbiw R28,63
 0268 EF97              sbiw R28,63
 026A EF97              sbiw R28,63
 026C 6D97              sbiw R28,29  ; offset = 218
 026E                   .dbline -1
 026E                   .dbline 188
 026E           ; }
 026E           ; 
 026E           ; void main()
 026E           ; {
 026E                   .dbline 193
 026E           ;        unsigned char i,j,k,temp,ques_id,key,key_flag,d,d1,
 026E           ;                      n_ques[100],n_num,nques_id,score,ans[100],keya_flag,
 026E           ;                      keyb_flag,keyc_flag,keyd_flag,keye_flag,adc_h,adc_l;
 026E           ;        unsigned int adc_rel,adc_old;
 026E           ;        guest_id=EEPROMread(0x02);
 026E 02E0              ldi R16,2
 0270 10E0              ldi R17,0
 0272 0E940000          xcall _EEPROMread
 0276 0093D600          sts _guest_id,R16
 027A                   .dbline 194
 027A           ;        host_id=EEPROMread(0x03);
 027A 03E0              ldi R16,3
 027C 10E0              ldi R17,0
 027E 0E940000          xcall _EEPROMread
 0282 0093D700          sts _host_id,R16
 0286                   .dbline 195
 0286           ;        i=0;
 0286 0024              clr R0
 0288 FE01              movw R30,R28
 028A E653              subi R30,54  ; addi 202
 028C FF4F              sbci R31,255
 028E 0082              std z+0,R0
 0290                   .dbline 196
 0290           ;        j=0;
 0290 FE01              movw R30,R28
 0292 E453              subi R30,52  ; addi 204
 0294 FF4F              sbci R31,255
 0296 0082              std z+0,R0
 0298                   .dbline 197
 0298           ;        k=0;
 0298 FE01              movw R30,R28
 029A E553              subi R30,53  ; addi 203
 029C FF4F              sbci R31,255
 029E 0082              std z+0,R0
 02A0                   .dbline 198
 02A0           ;        t=0;
 02A0 2224              clr R2
 02A2 2092D500          sts _t,R2
 02A6                   .dbline 199
 02A6           ;        temp=0;
 02A6 FE01              movw R30,R28
 02A8 E752              subi R30,39  ; addi 217
 02AA FF4F              sbci R31,255
 02AC 0082              std z+0,R0
 02AE                   .dbline 200
 02AE           ;        ques_num=0;
 02AE 20920200          sts _ques_num,R2
 02B2                   .dbline 201
 02B2           ;        ques_id=1;
 02B2 0024              clr R0
 02B4 0394              inc R0
 02B6 FE01              movw R30,R28
 02B8 E353              subi R30,51  ; addi 205
 02BA FF4F              sbci R31,255
 02BC 0082              std z+0,R0
 02BE                   .dbline 202
 02BE           ;        nques_id=1;
 02BE FE01              movw R30,R28
 02C0 EC52              subi R30,44  ; addi 212
 02C2 FF4F              sbci R31,255
 02C4 0082              std z+0,R0
 02C6                   .dbline 203
 02C6           ;        keya_flag=0;
 02C6 0024              clr R0
 02C8 FE01              movw R30,R28
 02CA EB52              subi R30,43  ; addi 213
 02CC FF4F              sbci R31,255
 02CE 0082              std z+0,R0
 02D0                   .dbline 204
 02D0           ;        keyb_flag=0;
 02D0 FE01              movw R30,R28
 02D2 EA52              subi R30,42  ; addi 214
 02D4 FF4F              sbci R31,255
 02D6 0082              std z+0,R0
 02D8                   .dbline 205
 02D8           ;        keyc_flag=0;
 02D8 FE01              movw R30,R28
 02DA EE52              subi R30,46  ; addi 210
 02DC FF4F              sbci R31,255
 02DE 0082              std z+0,R0
 02E0                   .dbline 206
 02E0           ;        keyd_flag=0;
 02E0 FE01              movw R30,R28
 02E2 E952              subi R30,41  ; addi 215
 02E4 FF4F              sbci R31,255
 02E6 0082              std z+0,R0
 02E8                   .dbline 207
 02E8           ;        keye_flag=0;
 02E8 FE01              movw R30,R28
 02EA E852              subi R30,40  ; addi 216
 02EC FF4F              sbci R31,255
 02EE 0082              std z+0,R0
 02F0                   .dbline 208
 02F0           ;        key_flag=1;
 02F0 0024              clr R0
 02F2 0394              inc R0
 02F4 FE01              movw R30,R28
 02F6 ED52              subi R30,45  ; addi 211
 02F8 FF4F              sbci R31,255
 02FA 0082              std z+0,R0
 02FC                   .dbline 209
 02FC           ;        init_devices();
 02FC CFDE              xcall _init_devices
 02FE                   .dbline 210
 02FE           ;        init_lcd();
 02FE 0E940000          xcall _init_lcd
 0302                   .dbline 211
 0302           ;        display(0x00);
 0302 0027              clr R16
 0304 0E940000          xcall _display
 0308                   .dbline 224
 0308           ;    //temp=EEPROMread(0x04);
 0308           ;    //ques_num=EEPROMread(0x05);
 0308           ;    //score=EEPROMread(0x06);
 0308           ;    //for(i=0;i<100;i++)
 0308           ;    //{
 0308           ;    // ques[i]=EEPROMread(i+7);
 0308           ;   // } 
 0308           ;   //for(i=0;i<100;i++)
 0308           ;    //{
 0308           ;    // ans[i]=EEPROMread(i+107);
 0308           ;   // } 
 0308           ;       // while(1);
 0308           ;         if((PIND|0x9f)==0x9f)
 0308 80B3              in R24,0x10
 030A 8F69              ori R24,159
 030C 8F39              cpi R24,159
 030E 09F0              breq X4
 0310 15C1              xjmp L60
 0312           X4:
 0312                   .dbline 225
 0312           ;        {
 0312 0DC1              xjmp L63
 0314           L62:
 0314                   .dbline 227
 0314           ;         while(key!=5)
 0314           ;         {
 0314                   .dbline 228
 0314           ;                if(keyc_flag==0)
 0314 FE01              movw R30,R28
 0316 EE52              subi R30,46  ; addi 210
 0318 FF4F              sbci R31,255
 031A 0080              ldd R0,z+0
 031C 0020              tst R0
 031E D1F4              brne L65
 0320                   .dbline 229
 0320           ;               {
 0320                   .dbline 230
 0320           ;                i=host_id/10;
 0320 1AE0              ldi R17,10
 0322 0091D700          lds R16,_host_id
 0326 0E940000          xcall div8u
 032A FE01              movw R30,R28
 032C E653              subi R30,54  ; addi 202
 032E FF4F              sbci R31,255
 0330 0083              std z+0,R16
 0332                   .dbline 231
 0332           ;                k=host_id-(10*i);
 0332 8AE0              ldi R24,10
 0334 002E              mov R0,R16
 0336 809D              mul R24,R0
 0338 2090D700          lds R2,_host_id
 033C 2018              sub R2,R0
 033E FE01              movw R30,R28
 0340 E553              subi R30,53  ; addi 203
 0342 FF4F              sbci R31,255
 0344 2082              std z+0,R2
 0346                   .dbline 232
 0346           ;                lcd_buffer[9]=0x02;
 0346 82E0              ldi R24,2
 0348 8093E100          sts _lcd_buffer+9,R24
 034C                   .dbline 233
 034C           ;                lcd_buffer[1]=0;
 034C 2224              clr R2
 034E 2092D900          sts _lcd_buffer+1,R2
 0352                   .dbline 234
 0352           ;               }
 0352 19C0              xjmp L66
 0354           L65:
 0354                   .dbline 236
 0354           ;               else
 0354           ;               {
 0354                   .dbline 237
 0354           ;                i=guest_id/10;
 0354 1AE0              ldi R17,10
 0356 0091D600          lds R16,_guest_id
 035A 0E940000          xcall div8u
 035E FE01              movw R30,R28
 0360 E653              subi R30,54  ; addi 202
 0362 FF4F              sbci R31,255
 0364 0083              std z+0,R16
 0366                   .dbline 238
 0366           ;                k=guest_id-10*i;
 0366 8AE0              ldi R24,10
 0368 002E              mov R0,R16
 036A 809D              mul R24,R0
 036C 2090D600          lds R2,_guest_id
 0370 2018              sub R2,R0
 0372 FE01              movw R30,R28
 0374 E553              subi R30,53  ; addi 203
 0376 FF4F              sbci R31,255
 0378 2082              std z+0,R2
 037A                   .dbline 239
 037A           ;                lcd_buffer[1]=0x02;
 037A 82E0              ldi R24,2
 037C 8093D900          sts _lcd_buffer+1,R24
 0380                   .dbline 240
 0380           ;                lcd_buffer[9]=0;
 0380 2224              clr R2
 0382 2092E100          sts _lcd_buffer+9,R2
 0386                   .dbline 241
 0386           ;               }
 0386           L66:
 0386                   .dbline 242
 0386           ;               lcd_buffer[7]=table[i];
 0386 80E0              ldi R24,<_table
 0388 90E0              ldi R25,>_table
 038A DE01              movw R26,R28
 038C A653              subi R26,54  ; addi 202
 038E BF4F              sbci R27,255
 0390 EC91              ld R30,x
 0392 FF27              clr R31
 0394 E80F              add R30,R24
 0396 F91F              adc R31,R25
 0398 2080              ldd R2,z+0
 039A 2092DF00          sts _lcd_buffer+7,R2
 039E                   .dbline 243
 039E           ;               lcd_buffer[15]=table[k]&0xef;
 039E DE01              movw R26,R28
 03A0 A553              subi R26,53  ; addi 203
 03A2 BF4F              sbci R27,255
 03A4 EC91              ld R30,x
 03A6 FF27              clr R31
 03A8 E80F              add R30,R24
 03AA F91F              adc R31,R25
 03AC 8081              ldd R24,z+0

⌨️ 快捷键说明

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