📄 main.s
字号:
xcall _LCD_write_String
.dbline 127
; putstring("SD INIT OK!");
ldi R16,<L31
ldi R17,>L31
xcall _putstring
.dbline 129
;
; sta_Init();
xcall _sta_Init
.dbline 130
; LCD_write_String(0,2,10,"STA013 OK!",0);
clr R2
std y+4,R2
ldi R24,<L32
ldi R25,>L32
std y+3,R25
std y+2,R24
ldi R24,10
std y+0,R24
ldi R18,2
clr R16
xcall _LCD_write_String
.dbline 131
; putstring("STA013 OK!");
ldi R16,<L32
ldi R17,>L32
xcall _putstring
.dbline 133
;
; if(FATinit())
xcall _FATinit
tst R16
breq L33
.dbline 134
; {
.dbline 135
; LCD_write_String(0,3,13,"FAT INIT ERR!",0);
clr R2
std y+4,R2
ldi R24,<L35
ldi R25,>L35
std y+3,R25
std y+2,R24
ldi R24,13
std y+0,R24
ldi R18,3
clr R16
xcall _LCD_write_String
.dbline 136
; putstring("FAT INIT ERR!");
ldi R16,<L35
ldi R17,>L35
xcall _putstring
L36:
.dbline 137
L37:
.dbline 137
; while(1);
xjmp L36
X4:
.dbline 138
; }
L33:
.dbline 139
; LCD_write_String(0,3,12,"FAT INIT OK!",0);
clr R2
std y+4,R2
ldi R24,<L39
ldi R25,>L39
std y+3,R25
std y+2,R24
ldi R24,12
std y+0,R24
ldi R18,3
clr R16
xcall _LCD_write_String
.dbline 140
; putstring("FAT INIT OK!");
ldi R16,<L39
ldi R17,>L39
xcall _putstring
.dbline 142
;
; Mp3_number_Counter();
xcall _Mp3_number_Counter
.dbline 144
;
; if(MP3_all_number==0)
lds R2,_MP3_all_number
tst R2
brne L40
.dbline 145
; {
.dbline 146
; LCD_write_String(0,4,13,"HAVE NOT MP3!",0); //启动3310显示没有MP3文件
clr R2
std y+4,R2
ldi R24,<L42
ldi R25,>L42
std y+3,R25
std y+2,R24
ldi R24,13
std y+0,R24
ldi R18,4
clr R16
xcall _LCD_write_String
.dbline 147
; putstring("HAVE NOT MP3!");
ldi R16,<L42
ldi R17,>L42
xcall _putstring
L43:
.dbline 148
L44:
.dbline 148
; while(1);
xjmp L43
X5:
.dbline 149
; }
L40:
.dbline 151
;
; Delay_ms(500);
ldi R16,500
ldi R17,1
xcall _Delay_ms
.dbline 152
; LCD_clear();
xcall _LCD_clear
.dbline 154
;
; LCD_set_XY(0,2);
ldi R18,2
clr R16
xcall _LCD_set_XY
.dbline 155
; LCD_write_byte(0xFF,1);
ldi R18,1
ldi R16,255
xcall _LCD_write_byte
.dbline 156
; LCD_write_byte(0x01,1);
ldi R18,1
ldi R16,1
xcall _LCD_write_byte
.dbline 158
;
; LCD_set_XY(82,2);
ldi R18,2
ldi R16,82
xcall _LCD_set_XY
.dbline 159
; LCD_write_byte(0x01,1);
ldi R18,1
ldi R16,1
xcall _LCD_write_byte
.dbline 160
; LCD_write_byte(0xFF,1);
ldi R18,1
ldi R16,255
xcall _LCD_write_byte
.dbline 163
;
; //LCD_set_XY(0,3);
; LCD_write_byte(0x0F,1);
ldi R18,1
ldi R16,15
xcall _LCD_write_byte
.dbline 164
; LCD_write_byte(0x08,1);
ldi R18,1
ldi R16,8
xcall _LCD_write_byte
.dbline 166
;
; LCD_set_XY(82,3);
ldi R18,3
ldi R16,82
xcall _LCD_set_XY
.dbline 167
; LCD_write_byte(0x08,1);
ldi R18,1
ldi R16,8
xcall _LCD_write_byte
.dbline 168
; LCD_write_byte(0x0F,1);
ldi R18,1
ldi R16,15
xcall _LCD_write_byte
.dbline 170
;
; LCD_write_String(20,5,1,"-",0);
clr R2
std y+4,R2
ldi R24,<L46
ldi R25,>L46
std y+3,R25
std y+2,R24
ldi R24,1
std y+0,R24
ldi R18,5
ldi R16,20
xcall _LCD_write_String
.dbline 171
; ASCII(buffer,MP3_all_number);
lds R18,_MP3_all_number
ldi R16,<_buffer
ldi R17,>_buffer
xcall _ASCII
.dbline 172
; LCD_write_String(26,5,2,buffer,0);
clr R2
std y+4,R2
ldi R24,<_buffer
ldi R25,>_buffer
std y+3,R25
std y+2,R24
ldi R24,2
std y+0,R24
ldi R18,5
ldi R16,26
xcall _LCD_write_String
.dbline 173
; LCD_write_byte(0xFF,0);
clr R18
ldi R16,255
xcall _LCD_write_byte
.dbline 176
; //=================================================================
; /*音量显示划条*/
; LCD_write_String(40,5,3,"vol",0);
clr R2
std y+4,R2
ldi R24,<L47
ldi R25,>L47
std y+3,R25
std y+2,R24
ldi R24,3
std y+0,R24
ldi R18,5
ldi R16,40
xcall _LCD_write_String
.dbline 177
; buffer[0]=24;
ldi R24,24
sts _buffer,R24
.dbline 178
; LCD_set_XY(58,5);
ldi R18,5
ldi R16,58
xcall _LCD_set_XY
.dbline 179
; LCD_write_byte(0x7E,1);
ldi R18,1
ldi R16,126
xcall _LCD_write_byte
xjmp L49
L48:
.dbline 181
.dbline 182
ldi R18,1
ldi R16,66
xcall _LCD_write_byte
.dbline 183
L49:
.dbline 180
; while(buffer[0]--)
lds R2,_buffer
clr R3
mov R24,R2
subi R24,1
sts _buffer,R24
tst R2
brne L48
.dbline 184
; {
; LCD_write_byte(0x42,1);
; }
; LCD_write_byte(0x7E,1);
ldi R18,1
ldi R16,126
xcall _LCD_write_byte
.dbline 186
; //==================================================================
; sta_SetVolume(59+set_volume*5,1); //第一级为59,每级加5点
ldi R18,1
lds R2,_set_volume
ldi R24,5
mul R24,R2
mov R16,R0
subi R16,197 ; addi 59
xcall _sta_SetVolume
.dbline 187
; LCD_set_XY(59,5);
ldi R18,5
ldi R16,59
xcall _LCD_set_XY
.dbline 188
; buffer[0]=set_volume*3;
lds R2,_set_volume
ldi R24,3
mul R24,R2
sts _buffer,R0
xjmp L52
L51:
.dbline 190
.dbline 191
ldi R18,1
ldi R16,90
xcall _LCD_write_byte
.dbline 192
L52:
.dbline 189
; while(buffer[0]--)
lds R2,_buffer
clr R3
mov R24,R2
subi R24,1
sts _buffer,R24
tst R2
brne L51
.dbline 194
; {
; LCD_write_byte(0x5A,1);
; }
; //==================================================================
; LCD_write_tubiao(0,5,0);
clr R2
std y+0,R2
ldi R18,5
clr R16
xcall _LCD_write_tubiao
.dbline 195
; DAT_Directory();
xcall _DAT_Directory
.dbline 197
;
; pcm1770_Ini();
xcall _pcm1770_Ini
.dbline 198
; pcm1770_init();
xcall _pcm1770_init
.dbline 199
; key_init();
xcall _key_init
.dbline 200
; timer1_init();
xcall _timer1_init
.dbline -2
L24:
adiw R28,5
.dbline 0 ; func end
ret
.dbend
.area bss(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
_mp3_info::
.blkb 57
.dbstruct 0 57 MP3_information
.dbfield 0 NAME A[52:26]i
.dbfield 52 Name_number c
.dbfield 53 DIR_FstClusL A[2:2]c
.dbfield 55 DIR_Filesize A[2:2]c
.dbend
.dbsym e mp3_info _mp3_info S[MP3_information]
_fat_info::
.blkb 7
.dbstruct 0 7 FAT_information
.dbfield 0 Relative c
.dbfield 1 BPB_SecPerClus c
.dbfield 2 BPB_RsvdSecCnt c
.dbfield 3 Firstgengmulu i
.dbfield 5 FirstDateSecter i
.dbend
.dbsym e fat_info _fat_info S[FAT_information]
_buffer::
.blkb 512
.dbsym e buffer _buffer A[512:512]c
_key_value::
.blkb 1
.dbsym e key_value _key_value c
_play_state::
.blkb 1
.dbsym e play_state _play_state c
_MP3_all_number::
.blkb 1
.dbsym e MP3_all_number _MP3_all_number c
_timer1_over::
.blkb 1
.dbsym e timer1_over _timer1_over c
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L47:
.blkb 4
.area idata
.byte 'v,'o,'l,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L46:
.blkb 2
.area idata
.byte 45,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L42:
.blkb 14
.area idata
.byte 'H,'A,'V,'E,32,'N,'O,'T,32,'M,'P,51,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L39:
.blkb 13
.area idata
.byte 'F,'A,'T,32,'I,'N,'I,'T,32,'O,'K,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L35:
.blkb 14
.area idata
.byte 'F,'A,'T,32,'I,'N,'I,'T,32,'E,'R,'R,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L32:
.blkb 11
.area idata
.byte 'S,'T,'A,48,49,51,32,'O,'K,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L31:
.blkb 12
.area idata
.byte 'S,'D,32,'I,'N,'I,'T,32,'O,'K,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L27:
.blkb 13
.area idata
.byte 'S,'D,32,'I,'N,'I,'T,32,'E,'R,'R,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
L18:
.blkb 5
.area idata
.byte 'R,'U,'N,33,0
.area data(ram, con, rel)
.dbfile D:\TDDownload\MP3BOA~1.8\main.c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -