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

📄 mp3.lis

📁 绝对好用的M64-SD卡MP3程序
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0216           ;                  vol=vol-((uint)(2<<8)+2);
 0216 80910000          lds R24,_vol
 021A 90910100          lds R25,_vol+1
 021E 8250              subi R24,2
 0220 9240              sbci R25,2
 0222 90930100          sts _vol+1,R25
 0226 80930000          sts _vol,R24
 022A                   .dbline 98
 022A           ;                  if(vol<=0x0505) vol=0x0505;
 022A 85E0              ldi R24,1285
 022C 95E0              ldi R25,5
 022E 20900000          lds R2,_vol
 0232 30900100          lds R3,_vol+1
 0236 8215              cp R24,R2
 0238 9305              cpc R25,R3
 023A 28F0              brlo L37
 023C                   .dbline 98
 023C 90930100          sts _vol+1,R25
 0240 80930000          sts _vol,R24
 0244 07C0              xjmp L38
 0246           L37:
 0246                   .dbline 99
 0246           ;                  else vs1003_cmd_write(0x0b,vol);   //每次左右声道VOL加2
 0246 20910000          lds R18,_vol
 024A 30910100          lds R19,_vol+1
 024E 0BE0              ldi R16,11
 0250 0E940000          xcall _vs1003_cmd_write
 0254           L38:
 0254                   .dbline 100
 0254           ;             }
 0254           L35:
 0254                   .dbline 101
 0254           ;               }
 0254           L33:
 0254                   .dbline 103
 0254           ;         //NEXT键按下
 0254           ;         if(!(PINE&NEXTSONG)) 
 0254 0B99              sbic 0x1,3
 0256 23C0              rjmp L39
 0258                   .dbline 104
 0258           ;           {
 0258                   .dbline 105
 0258           ;               delay_nus(250);delay_nus(250);delay_nus(250);delay_nus(250);
 0258 0AEF              ldi R16,250
 025A 10E0              ldi R17,0
 025C 0E940000          xcall _delay_nus
 0260                   .dbline 105
 0260 0AEF              ldi R16,250
 0262 10E0              ldi R17,0
 0264 0E940000          xcall _delay_nus
 0268                   .dbline 105
 0268 0AEF              ldi R16,250
 026A 10E0              ldi R17,0
 026C 0E940000          xcall _delay_nus
 0270                   .dbline 105
 0270 0AEF              ldi R16,250
 0272 10E0              ldi R17,0
 0274 0E940000          xcall _delay_nus
 0278                   .dbline 106
 0278           ;               delay_nus(250);delay_nus(250);delay_nus(250);delay_nus(250);
 0278 0AEF              ldi R16,250
 027A 10E0              ldi R17,0
 027C 0E940000          xcall _delay_nus
 0280                   .dbline 106
 0280 0AEF              ldi R16,250
 0282 10E0              ldi R17,0
 0284 0E940000          xcall _delay_nus
 0288                   .dbline 106
 0288 0AEF              ldi R16,250
 028A 10E0              ldi R17,0
 028C 0E940000          xcall _delay_nus
 0290                   .dbline 106
 0290 0AEF              ldi R16,250
 0292 10E0              ldi R17,0
 0294 0E940000          xcall _delay_nus
 0298                   .dbline 107
 0298           ;               if(!(PINE&NEXTSONG))  goto NEXT;       //跳到下一首歌曲
 0298 0B99              sbic 0x1,3
 029A 01C0              rjmp L41
 029C                   .dbline 107
 029C 72C0              xjmp L43
 029E           L41:
 029E                   .dbline 108
 029E           ;           }
 029E           L39:
 029E                   .dbline 110
 029E           ;           //PREV键按下
 029E           ;         if(!(PINE&PREVSONG)) 
 029E 0A99              sbic 0x1,2
 02A0 1CC0              rjmp L44
 02A2                   .dbline 111
 02A2           ;           {
 02A2                   .dbline 112
 02A2           ;               delay_nus(250);delay_nus(250);delay_nus(250);delay_nus(250);
 02A2 0AEF              ldi R16,250
 02A4 10E0              ldi R17,0
 02A6 0E940000          xcall _delay_nus
 02AA                   .dbline 112
 02AA 0AEF              ldi R16,250
 02AC 10E0              ldi R17,0
 02AE 0E940000          xcall _delay_nus
 02B2                   .dbline 112
 02B2 0AEF              ldi R16,250
 02B4 10E0              ldi R17,0
 02B6 0E940000          xcall _delay_nus
 02BA                   .dbline 112
 02BA 0AEF              ldi R16,250
 02BC 10E0              ldi R17,0
 02BE 0E940000          xcall _delay_nus
 02C2                   .dbline 113
 02C2           ;               if(!(PINE&PREVSONG))
 02C2 0A99              sbic 0x1,2
 02C4 0AC0              rjmp L46
 02C6                   .dbline 114
 02C6           ;                 {
 02C6                   .dbline 115
 02C6           ;                 t=t-2;goto NEXT;  //返回前一首歌曲
 02C6 80910000          lds R24,_t
 02CA 90910100          lds R25,_t+1
 02CE 0297              sbiw R24,2
 02D0 90930100          sts _t+1,R25
 02D4 80930000          sts _t,R24
 02D8                   .dbline 115
 02D8 54C0              xjmp L43
 02DA           L46:
 02DA                   .dbline 117
 02DA           ;             }
 02DA           ;               }
 02DA           L44:
 02DA                   .dbline 120
 02DA           ;               
 02DA           ;               
 02DA           ;                data_pointer=0; 
 02DA CC24              clr R12
 02DC DD24              clr R13
 02DE 19C0              xjmp L49
 02E0           L48:
 02E0                   .dbline 122
 02E0           ;         while(data_pointer<512)
 02E0           ;         {    
 02E0                   .dbline 123
 02E0           ;             if(PINB&MP3_DATA_REQ)
 02E0 B69B              sbis 0x16,6
 02E2 11C0              rjmp L51
 02E4                   .dbline 124
 02E4           ;                {
 02E4                   .dbline 125
 02E4           ;                  for(n=0;n<32;n++)
 02E4 EE24              clr R14
 02E6 0CC0              xjmp L56
 02E8           L53:
 02E8                   .dbline 126
 02E8                   .dbline 127
 02E8 80E0              ldi R24,<_BUFFER
 02EA 90E0              ldi R25,>_BUFFER
 02EC F601              movw R30,R12
 02EE E80F              add R30,R24
 02F0 F91F              adc R31,R25
 02F2 0081              ldd R16,z+0
 02F4 0E940000          xcall _vs1003_data_write
 02F8                   .dbline 128
 02F8 C601              movw R24,R12
 02FA 0196              adiw R24,1
 02FC 6C01              movw R12,R24
 02FE                   .dbline 129
 02FE           L54:
 02FE                   .dbline 125
 02FE E394              inc R14
 0300           L56:
 0300                   .dbline 125
 0300 8E2D              mov R24,R14
 0302 8032              cpi R24,32
 0304 88F3              brlo L53
 0306                   .dbline 130
 0306           ;                          {
 0306           ;                     vs1003_data_write(BUFFER[data_pointer]);
 0306           ;                     data_pointer++;   
 0306           ;                      }
 0306           ;                               }
 0306           L51:
 0306                   .dbline 131
 0306           ;            if (data_pointer==511) break;   //如果现在的数据不够了,则跳出来
 0306 C601              movw R24,R12
 0308 8F3F              cpi R24,255
 030A E1E0              ldi R30,1
 030C 9E07              cpc R25,R30
 030E 09F4              brne L57
 0310                   .dbline 131
 0310 05C0              xjmp L50
 0312           L57:
 0312                   .dbline 132
 0312           L49:
 0312                   .dbline 121
 0312 C601              movw R24,R12
 0314 8030              cpi R24,0
 0316 E2E0              ldi R30,2
 0318 9E07              cpc R25,R30
 031A 10F3              brlo L48
 031C           L50:
 031C                   .dbline 133
 031C           L18:
 031C                   .dbline 66
 031C C501              movw R24,R10
 031E 0196              adiw R24,1
 0320 5C01              movw R10,R24
 0322           L20:
 0322                   .dbline 66
 0322 20900000          lds R2,_SectorsPerCluster
 0326 30900100          lds R3,_SectorsPerCluster+1
 032A A214              cp R10,R2
 032C B304              cpc R11,R3
 032E 08F4              brsh X1
 0330 08CF              xjmp L17
 0332           X1:
 0332                   .dbline 134
 0332           ;            }
 0332           ;       }
 0332           ;       NextCluster = fatNextCluster(NextCluster);
 0332 FE01              movw R30,R28
 0334 0481              ldd R16,z+4
 0336 1581              ldd R17,z+5
 0338 2681              ldd R18,z+6
 033A 3781              ldd R19,z+7
 033C 0E940000          xcall _fatNextCluster
 0340 FE01              movw R30,R28
 0342 0483              std z+4,R16
 0344 1583              std z+5,R17
 0346 2683              std z+6,R18
 0348 3783              std z+7,R19
 034A                   .dbline 135
 034A           ;       if (NextCluster >=(CLUST_RSRVD&FAT_MASK))break;
 034A 46EF              ldi R20,246
 034C 5FEF              ldi R21,255
 034E 6FEF              ldi R22,255
 0350 7FEF              ldi R23,255
 0352 40900500          lds R4,_FAT_MASK+2
 0356 50900600          lds R5,_FAT_MASK+2+1
 035A 20900300          lds R2,_FAT_MASK
 035E 30900400          lds R3,_FAT_MASK+1
 0362 2422              and R2,R20
 0364 3522              and R3,R21
 0366 4622              and R4,R22
 0368 5722              and R5,R23
 036A FE01              movw R30,R28
 036C 6480              ldd R6,z+4
 036E 7580              ldd R7,z+5
 0370 8680              ldd R8,z+6
 0372 9780              ldd R9,z+7
 0374 6214              cp R6,R2
 0376 7304              cpc R7,R3
 0378 8404              cpc R8,R4
 037A 9504              cpc R9,R5
 037C 08F0              brlo L59
 037E                   .dbline 135
 037E 01C0              xjmp L16
 0380           L59:
 0380                   .dbline 136
 0380           L15:
 0380                   .dbline 63
 0380 D1CE              xjmp L14
 0382           L16:
 0382           L43:
 0382                   .dbline 137
 0382           ;       }
 0382           ;  NEXT: delay_nus(1);  /* 下一首歌曲*/
 0382 01E0              ldi R16,1
 0384 10E0              ldi R17,0
 0386 0E940000          xcall _delay_nus
 038A                   .dbline -2
 038A           L13:
 038A 2896              adiw R28,8
 038C 0E940000          xcall pop_gset5
 0390 2496              adiw R28,4
 0392                   .dbline 0 ; func end
 0392 0895              ret
 0394                   .dbsym l t1 1 c
 0394                   .dbsym l rate 1 i
 0394                   .dbsym l NextCluster 4 l
 0394                   .dbsym l LBA 0 l
 0394                   .dbsym r i 10 i
 0394                   .dbsym r n 14 c
 0394                   .dbsym r data_pointer 12 i
 0394                   .dbsym l FirstClust 18 l
 0394                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile E:\V3U~1\sd\M64-SD卡MP3程序\mp3.c
 0000           _t::
 0000                   .blkb 2
 0002                   .dbfile E:\V3U~1\sd\M64-SD卡MP3程序/mp3.h
 0002                   .dbsym e t _t i
 0002           _true::
 0002                   .blkb 1
 0003                   .dbsym e true _true c
 0003           _FAT_MASK::
 0003                   .blkb 4
 0007                   .dbsym e FAT_MASK _FAT_MASK l
                        .area data(ram, con, rel)
 00C3                   .dbfile E:\V3U~1\sd\M64-SD卡MP3程序/mp3.h
 00C3           L3:
 00C3                   .blkb 15
                        .area idata
 00C3 4D45474136344C202020204D503300    .byte 'M,'E,'G,'A,54,52,'L,32,32,32,32,'M,'P,51,0
                        .area data(ram, con, rel)
 00D2                   .dbfile E:\V3U~1\sd\M64-SD卡MP3程序/mp3.h

⌨️ 快捷键说明

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