• 大小: 1.27MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-30
  • 语言: 其他
  • 标签: MP3  STM32  

资源简介

这是用SMT32做MP3的全套资源,包括PCB,原理图和程序

资源截图

代码片段和文件信息

/*************************************************************/
/*                   FAT操作函数库                           */
/*  环境WinAVR 20060421                                      */
/*  作者:Bozai(章其波)                                    */
/*  E-mail:sudazqb@163.com                                  */
/*  2007年2月13日                                            */
/*************************************************************/
/*  20071208: modify codes for ARM platform (AT91SAM7S256)  */
/*  20071109: add & modify function for any directory music file playing */
/*  20071103: add function for lyric display */
/*History: 2007年2月13日                                     */
/* 添加了适合于RAM丰富的AVR单片机操作 的FAT表函数  */
/* 改进了查找FAT表的函数使在硬盘操作时不需频繁去读FAT表.   */
/*         注: 只适合RAM足够多的单片机                      */
/*************************************************************/

#include“FAT.h“

DWORD FirstDirClust;    //first directory cluster
DWORD FirstDataSector; // The first sector number of data
WORD BytesPerSector; // Bytes per sector
DWORD FATsectors; // The amount sector a FAT occupied
WORD SectorsPerClust; // Sector per cluster
DWORD FirstFATSector; // The first FAT sector
DWORD FirstDirSector; // The first Dir sector
DWORD RootDirSectors; // The sector number a Root dir occupied 
DWORD RootDirCount; // The count of directory in root dir
BYTE FAT32_Enable;


#if FAT_BUFFERED

BYTE TABLE_READ = 0;
DWORD START_CLUSTER = 0x0ffffff8; //when the mcu has large ram
BYTE FAT_TABLE[512]; //when the mcu has large ram
#endif

BYTE LongNameBuffer[MAX_LONG_NAME_SIZE];
BYTE LongNameFlag = 0;

BYTE (* FAT_ReadSector)(DWORDBYTE *);
BYTE (* FAT_WriteSector)(DWORDBYTE *);
DWORD (* FAT_ReadCapacity)(void);

//函数指针指向sd卡的读写函数
//BYTE (* FAT_ReadSector)(DWORD sector BYTE * buffer) = CH375_ReadOneSector;
//BYTE (* FAT_WriteSector)(DWORD sector BYTE * buffer) =  CH375_WriteOneSector;
//BYTE (* FAT_ReadSector)(DWORD sector BYTE * buffer)=MMC_SD_ReadSingleBlock;//device read
//BYTE (* FAT_WriteSector)(DWORD sector BYTE * buffer)=MMC_SD_WriteSingleBlock;//device write

struct FileInfoStruct FileInfo;//temporarily buffer for file information



//FAT初始化,不含SD的初始化,用之前应先调用sd的初始化
BYTE FAT_Init()//Initialize of FAT  need initialize SD first
{
struct bootsector710 *bs  = 0;
struct bpb710Bytes *bpb = 0;
struct partrecordBytes *pr  = 0;

BYTE buffer[512];
DWORD hidsec=0;
DWORD Capacity;

Capacity = FAT_ReadCapacity();
if(Capacity<0xff)return 1;
if(FAT_ReadSector(0buffer))return 1;
bs = (struct bootsector710 *)buffer;
pr = (struct partrecordBytes*)((struct partsector*)buffer)->psPart;//first partition
hidsec = get32_little(pr->prStartLBA);//the hidden sectors
if(hidsec >= Capacity/512)
{
hidsec = 0;
}
else 
{
if(FAT_ReadSector(get32_little(pr->prStartLBA)buffer))return 1;//read the bpb sector
bs = (struct bootsector710 *)buffer;
if(bs->bsJump[0]!=0xE9 && bs->bsJump[0]!=0xEB)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    4536320  2010-03-14 10:20  mb_STM32F103RBT6.ddb

     文件    1308672  2013-04-02 15:46  STM32F103RBT6.ddb

     文件      21149  2010-03-15 18:46  my_project\LCD12864_ST7920.c

     文件      27178  2010-03-15 19:38  my_project\main.c

     文件       2042  2010-03-05 10:18  my_project\stm32f10x_it.h

     文件        162  2010-02-13 22:04  my_project\led.eww

     文件      47441  2010-03-15 15:48  my_project\gpio_led.ewp

     文件      37926  2010-02-14 16:11  my_project\gpio_led.ewd

     文件      45190  2010-03-15 20:02  my_project\gpio_led.dep

     文件      16309  2009-09-28 19:51  my_project\startup_stm32f10x_cl.s

     文件      16709  2009-09-28 19:51  my_project\startup_stm32f10x_hd.s

     文件      12333  2009-09-28 19:51  my_project\startup_stm32f10x_ld.s

     文件      12594  2009-09-28 19:51  my_project\startup_stm32f10x_md.s

     文件       1343  2010-03-15 19:31  my_project\gpio_led.icf

     文件       2772  2010-03-07 19:11  my_project\MMC_SD.h

     文件       2371  2010-03-15 18:39  my_project\settings\gpio_led.cspy.bat

     文件        705  2010-03-15 20:02  my_project\settings\gpio_led.dni

     文件       6843  2010-03-15 20:02  my_project\settings\led.wsdt

     文件       5587  2010-03-15 20:02  my_project\settings\gpio_led.dbgdt

     文件     291920  2010-03-15 20:00  my_project\Debug\Exe\gpio_led.out

     文件      48404  2010-03-15 20:00  my_project\Debug\Exe\gpio_led.hex

     文件      45708  2010-02-13 22:38  my_project\Debug\Obj\startup_stm32f10x_cl.o

     文件      45896  2010-02-13 22:38  my_project\Debug\Obj\startup_stm32f10x_hd.o

     文件      31100  2010-02-13 22:38  my_project\Debug\Obj\startup_stm32f10x_ld.o

     文件      34248  2010-02-13 22:38  my_project\Debug\Obj\startup_stm32f10x_md.o

     文件       2435  2010-03-15 20:00  my_project\Debug\Obj\gpio_led.pbd

     文件      12036  2010-03-06 18:29  my_project\Debug\Obj\misc.o

     文件      67780  2010-03-06 18:29  my_project\Debug\Obj\stm32f10x_adc.o

     文件      23628  2010-03-06 18:29  my_project\Debug\Obj\stm32f10x_bkp.o

     文件      42804  2010-03-06 18:29  my_project\Debug\Obj\stm32f10x_can.o

............此处省略153个文件信息

评论

共有 条评论