• 大小: 845KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-07-01
  • 语言: 其他
  • 标签: STM32  

资源简介

STM32的录音机程序,亲测可用。内有详细的注释和文档。很好的学习资料。

资源截图

代码片段和文件信息

#include “mp3player.h“
#include “vs10xx.h“  
#include “delay.h“
#include “led.h“
#include “key.h“
#include “lcd.h“  
#include “malloc.h“
#include “text.h“
#include “string.h“
#include “exfuns.h“
#include “fattester.h“  
#include “ff.h“   
#include “flac.h“
#include “usart.h“
//////////////////////////////////////////////////////////////////////////////////  


//MP3播放驱动 代码    


//修改日期:2012/9/20
//版本:V1.0


//All rights reserved           
//////////////////////////////////////////////////////////////////////////////////

//显示曲目索引
//index:当前索引
//total:总文件数
void mp3_index_show(u16 indexu16 total)
{
//显示当前曲目的索引及总曲目数
LCD_ShowxNum(60+0230index3160X80); //索引
LCD_ShowChar(60+24230‘/‘160);
LCD_ShowxNum(60+32230total3160X80);  //总曲目      
}
//显示当前音量
void mp3_vol_show(u8 vol)
{     
LCD_ShowString(60+1102302001616“VOL:“);      
LCD_ShowxNum(60+142230vol2160X80);  //显示音量  
}
u16 f_kbps=0;//歌曲文件位率
//显示播放时间比特率 信息 
//lenth:歌曲总长度
void mp3_msg_show(u32 lenth)
{
static u16 playtime=0;//播放时间标记      
  u16 time=0;// 时间变量
u16 temp=0;   
if(f_kbps==0xffff)//未更新过
{
playtime=0;
f_kbps=VS_Get_HeadInfo();    //获得比特率
}    
time=VS_Get_DecodeTime(); //得到解码时间
if(playtime==0)playtime=time;
else if((time!=playtime)&&(time!=0))//1s时间到更新显示数据
{
playtime=time;//更新时间        
temp=VS_Get_HeadInfo(); //获得比特率      
if(temp!=f_kbps)
{
f_kbps=temp;//更新KBPS         
}  
//显示播放时间  
LCD_ShowxNum(60210time/602160X80); //分钟
LCD_ShowChar(60+16210‘:‘160);
LCD_ShowxNum(60+24210time%602160X80); //秒钟
  LCD_ShowChar(60+40210‘/‘160);        
//显示总时间
if(f_kbps)time=(lenth/f_kbps)/125;//得到秒钟数   (文件长度(字节)/(1000/8)/比特率=持续秒钟数       
else time=0;//非法位率   
  LCD_ShowxNum(60+48210time/602160X80); //分钟
LCD_ShowChar(60+64210‘:‘160);
LCD_ShowxNum(60+72210time%602160X80); //秒钟        
//显示位率    
    LCD_ShowxNum(60+110210f_kbps3160X80);  //显示位率  
LCD_ShowString(60+1342102001616“Kbps“);      
LED0=!LED0; //DS0翻转
}     
}     
//得到path路径下目标文件的总个数
//path:路径     
//返回值:总有效文件数
u16 mp3_get_tnum(u8 *path)
{   
u8 res;
u16 rval=0;
  DIR tdir;   //临时目录
FILINFO tfileinfo; //临时文件信息
u8 *fn;             
    res=f_opendir(&tdir(const TCHAR*)path); //打开目录
   tfileinfo.lfsize=_MAX_LFN*2+1; //长文件名最大长度
tfileinfo.lfname=mymalloc(SRAMINtfileinfo.lfsize); //为长文件缓存区分配内存
if(res==FR_OK&&tfileinfo.lfname!=NULL)
{
while(1)//查询总的有效文件数
{
        res=f_readdir(&tdir&tfileinfo);        //读取目录下的一个文件
        if(res!=FR_OK||tfileinfo.fname[0]==0)break; //错误了/到末尾了退出   
      fn=(u8*)(*tfileinfo.lfname?tfileinfo.lfname:tfileinfo.fname);  
res=f_typetell(fn);
if((res&0XF0)==0X40)//取高四位看看是不是音乐文件
{
rval++;//有效文件数增加1
}     
}  

myfree(SRAMINtfileinfo.lfname);
return rval;
}
//播放音乐
void mp

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

     文件       8787  2017-11-25 21:10  实验45 录音机实验\APP\mp3player.c

     文件        559  2017-11-25 21:10  实验45 录音机实验\APP\mp3player.h

     文件       9945  2017-11-25 21:10  实验45 录音机实验\APP\recorder.c

     文件       2099  2017-11-25 21:10  实验45 录音机实验\APP\recorder.h

     文件       2815  2012-07-25 00:19  实验45 录音机实验\FATFS\doc\css_e.css

     文件       3177  2012-07-25 00:19  实验45 录音机实验\FATFS\doc\css_j.css

     文件       1414  2011-09-02 22:10  实验45 录音机实验\FATFS\doc\img\f1.png

     文件       1458  2007-02-10 03:12  实验45 录音机实验\FATFS\doc\img\f2.png

     文件       1039  2007-02-10 03:12  实验45 录音机实验\FATFS\doc\img\f3.png

     文件       2335  2008-01-05 20:27  实验45 录音机实验\FATFS\doc\img\f4.png

     文件       2479  2008-01-05 20:27  实验45 录音机实验\FATFS\doc\img\f5.png

     文件       1436  2010-08-21 10:13  实验45 录音机实验\FATFS\doc\img\f6.png

     文件       2401  2009-03-20 21:57  实验45 录音机实验\FATFS\doc\img\layers.png

     文件       2379  2009-06-13 21:48  实验45 录音机实验\FATFS\doc\img\layers3.png

     文件       5209  2012-07-27 01:26  实验45 录音机实验\FATFS\doc\img\modules.png

     文件      19068  2008-10-18 19:31  实验45 录音机实验\FATFS\doc\img\rwtest.png

     文件       8153  2010-09-13 10:55  实验45 录音机实验\FATFS\doc\img\rwtest2.png

     文件       3011  2009-06-15 00:03  实验45 录音机实验\FATFS\doc\img\rwtest3.png

     文件       4185  2012-08-27 21:56  实验45 录音机实验\FATFS\doc\updates.txt

     文件       3334  2017-11-25 21:10  实验45 录音机实验\FATFS\exfuns\exfuns.c

     文件       1218  2017-11-25 21:10  实验45 录音机实验\FATFS\exfuns\exfuns.h

     文件       6587  2017-11-25 21:10  实验45 录音机实验\FATFS\exfuns\fattester.c

     文件        935  2017-11-25 21:10  实验45 录音机实验\FATFS\exfuns\fattester.h

     文件       4815  2017-11-25 21:10  实验45 录音机实验\FATFS\exfuns\mycc936.c

     文件       6821  2012-09-04 22:50  实验45 录音机实验\FATFS\src\00readme.txt

     文件       5972  2017-11-25 21:10  实验45 录音机实验\FATFS\src\diskio.c

     文件       2763  2012-08-27 21:39  实验45 录音机实验\FATFS\src\diskio.h

     文件     143152  2012-09-19 12:58  实验45 录音机实验\FATFS\src\ff.c

     文件      12506  2012-09-19 12:58  实验45 录音机实验\FATFS\src\ff.h

     文件       7463  2017-11-25 21:07  实验45 录音机实验\FATFS\src\ffconf.h

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

评论

共有 条评论