?? main.lst
字號(hào):
-rn;}
167 1 temp=FAT.DirEntryPoint;
168 1
169 1 while(CommandBuffer[i]) {CommandBuffer[i-5]=CommandBuffer[i];i++;}
170 1 CommandBuffer[i-5]=0;
171 1 do
172 1 {
173 2 FATGetFileName(filename,&(FAT.DirEntryPoint));
174 2 if (strcmp(filename,CommandBuffer)==0) {i=0; break;}
175 2 }while(FATNextEntry(&(FAT.DirEntryPoint)));
C51 COMPILER V7.07 MAIN 05/23/2004 18:02:33 PAGE 4
176 1
178 1 printf("文件\"%s\"未找到.",CommandBuffer);
179 1 else
180 1 if (!FATIsDirectory(&(FAT.DirEntryPoint)))
181 1 {
182 2 MP3PlayDirPoint.ParentDirEntryClus=FAT.DirEntryPoint.ParentDirEntryClus;
183 2 MP3PlayDirPoint.CurrentDirEntryClus=FAT.DirEntryPoint.CurrentDirEntryClus;
184 2 MP3PlayDirPoint.CurrentClus=FAT.DirEntryPoint.CurrentClus;
185 2 MP3PlayDirPoint.CurrentOffset=FAT.DirEntryPoint.CurrentOffset;
186 2 MP3.File=FATOpenFile(&MP3PlayDirPoint);
187 2 LoadMP3Data(MP3.File);
188 2 printf(" 播放\"%s\"\n",CommandBuffer);
189 2 return;
190 2 }
191 1 else printf("\"%s\"是一個(gè)目錄.",CommandBuffer);
192 1 FAT.DirEntryPoint=temp;
193 1 }
194
195 void Stop(void)
196 {
197 1 MP3.Playing=0;
198 1 FATCloseFile(MP3.File);
199 1 }
200 void Pause(void)
201 {
202 1 CLEAR_BIT_6(AUDCON1);
203 1 }
204
205 void GoOn(void)
206 {
207 1 SET_BIT_6(AUDCON1);
208 1 }
209
210 void Bass(void)
211 {
212 1 BYTE i,temp[4];
213 1
214 1 for(i=5;i<9;i++)
215 1 temp[i-5]=CommandBuffer[i];
216 1
217 1 if (strcmp(temp,"ON")==0)
218 1 {
219 2 SET_BIT_6(MP3CON);
220 2 printf(" 重低音開\n");
221 2 }
222 1 else if(strcmp(temp,"OFF")==0)
223 1 {
224 2 CLEAR_BIT_6(MP3CON);
225 2 printf("重低音關(guān)\n");
226 2 }
227 1 }
228
229 void Volume(BYTE m)
230 {
231 1 BYTE n,temp[3];
232 1
233 1 n=strlen(CommandBuffer);
234 1 if ((n==6&&ISNUMBER(CommandBuffer[5]))||(n==7&&ISNUMBER(CommandBuffer[5])&&ISNUMBER(CommandBuffer[6])))
235 1 {
236 2 for(n=5;n<8;n++)
237 2 temp[n-5]=CommandBuffer[n];
C51 COMPILER V7.07 MAIN 05/23/2004 18:02:33 PAGE 5
238 2 n=(BYTE)atoi(temp);
239 2 printf("vol:%bd\n",n);
240 2 if (n>=0&&n<32)
241 2 {
242 3 if (m==0)
243 3 {
244 4 MP3VOL=n;
245 4 printf("左聲道音量:%bd\n",MP3VOL);
246 4 }
247 3 else if(m==1)
248 3 {
249 4 MP3VOR=n;
250 4 printf("右聲道音量:%bd\n",MP3VOR);
251 4 }
252 3 else
253 3 {
254 4 MP3VOL=n;
255 4 MP3VOR=n;
256 4 printf("左聲道音量:%bd 右聲道音量:%bd\n",MP3VOL,MP3VOR);
257 4 }
258 3 }
259 2 }
260 1 }
261
262
263 void main(void)
264 {
265 1 data BYTE cmd;
266 1 // xdata BYTE function=0;
267 1
268 1 P5=0;
269 1 EA=1;
270 1 memset((void *)&IDE,0,sizeof(struct IDEStr));
271 1 memset((void *)&StorageMedia,0,sizeof(struct StorageMediaStr));
272 1 StorageMedia.CurrentPartition=255;
273 1
274 1 //初始化
275 1 InitPLL();
276 1 InitUART();
277 1 InitKEY();
278 1 // InitTimer0();
279 1 InitMP3Decoder(&MP3PlayDirPoint,filename);
280 1
281 1 PrintLogo();
*** WARNING C206 IN LINE 281 OF MAIN.C: 'PrintLogo': missing function-prototype
282 1
283 1 while(1)
284 1 {
285 2 cmd=AcceptCmd();
*** WARNING C206 IN LINE 285 OF MAIN.C: 'AcceptCmd': missing function-prototype
286 2 switch(cmd)
287 2 {
288 3 case 0: Help(); break;
*** WARNING C206 IN LINE 288 OF MAIN.C: 'Help': missing function-prototype
289 3 case 1: InitDisk(); break;
290 3 case 2: ListDisk(); break;
291 3 case 3: MountDisk(); break;
292 3 case 4: ListDrive(); break;
293 3 case 5: MountDrive(); break;
294 3 case 6: Dir(); break;
295 3 case 7: Cd(); break;
296 3 case 8: Play(); break;
C51 COMPILER V7.07 MAIN 05/23/2004 18:02:33 PAGE 6
297 3 case 9: Stop(); break;
298 3 case 10: Pause(); break;
299 3 case 11: GoOn(); break;
300 3 case 12: Volume(0); break;
301 3 case 13: Volume(1); break;
302 3 case 14: Volume(2); break;
303 3 case 15: Bass(); break;
304 3 }
305 2 }
306 1
307 1 FATInit();
308 1 FATSetStorageMedia(FAT_MEDIA_TYPE_HDD);
309 1 FATGetPartitions();
310 1 printf("Total Partitions:%bd\n",StorageMedia.TotalPartitions);
311 1 FATMountPartition(DEFAULT_PARTITION);
312 1 if (FATErrorCode==0)
313 1 printf("Mount Partition %bd OK\n",DEFAULT_PARTITION);
314 1 else
315 1 {
316 2 printf("Mount Partition %bd Error\n");
317 2 while(1);
318 2 }
319 1
320 1
321 1
322 1
323 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1956 ----
CONSTANT SIZE = 938 ----
XDATA SIZE = 1489 442
PDATA SIZE = ---- ----
DATA SIZE = 18 2
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 3 WARNING(S), 0 ERROR(S)
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -