资源简介

NRF24L01的视频传输,用STM32做的,效果试着还挺不错,开源原理图,和程序,程序备注详细,里面实现用纯C语言,效果nice

资源截图

代码片段和文件信息

#include “mp3player.h“	 




u16 f_kbps=0;//歌曲文件位率
//显示播放时间比特率 等事信息 
void MP3_Msg_Show(u32 lenthu16 indexu16 total)
{
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;
if((time!=playtime)&&(time!=0))//1s时间到更新显示数据
{
playtime=time;//更新时间        
temp=VS_Get_HeadInfo(); //获得比特率      
if(temp!=f_kbps)
{
f_kbps=temp;//更新KBPS         
}  
//显示播放时间  
TFT_Show2Num(60110REDtime/602160);   //分钟
TFT_ShowChar(60+16110RED‘:‘160);
TFT_Show2Num(60+24110REDtime%602160);//秒钟
TFT_ShowChar(60+40110RED‘/‘160);       
//显示总时间
if(f_kbps)time=(lenth/f_kbps)/125;//得到秒钟数   (文件长度(字节)/(1000/8)/比特率=持续秒钟数       
else time=0;//非法位率   
  TFT_Show2Num(60+48110REDtime/602160);//分钟
TFT_ShowChar(60+64110RED‘:‘160);
TFT_Show2Num(60+72110REDtime%602160);//秒钟     
//显示当前曲目的索引及总曲目数
   TFT_Show2Num(60+0130REDindex3160);  //索引
TFT_ShowChar(60+24130RED‘/‘160);
   TFT_Show2Num(60+32130REDtotal3160); //总曲目   
//显示位率    
  TFT_ShowNum(60+60130REDf_kbps316);//显示位率
TFT_ShowString(60+84130RED“Kbps“);      
}     
}     

//功能:通过按键选择播放,指定路径上的文件
//输入:*path:路径
//输出:1:硬件复位失败, 2:获取音频文件失败
u32 MUSIC_FILE_TYPE = T_UNTELL;             //存储文件类型默认不能识别的文件类型
u8 Play_Music(char *path)
{
u16 i;
u8 key;       
u16 mus_total=0;//总音乐文件的个数

if(VS_HD_Reset())return 1;    //硬复位
VS_Soft_Reset();   //软复位VS10XX   
set10XX();         //设置音量等信息  

if(VS10XX_ID==VS1053)   //在软件复位时得到ID
{
MUSIC_FILE_TYPE = T_MP3|T_WMA|T_WAV|T_MID|T_FLAC|T_OGG;

else  MUSIC_FILE_TYPE =  T_MP3|T_WMA|T_WAV|T_MID;

Get_File_Info(pathMUSIC_FILE_TYPE&mus_total);//获取当前文件夹下面的目标文件个数 

if(!mus_total)  return 2; //无音频文件则返回
i=1;
while(1)
{     
key=Play_Song(pathimus_total); 
if(key==1)
{
if(i else i=1;
}else if(key==2)
{
if(i>1)i--;
else i=mus_total;
}else
{
;
}    
}  
}
////////////////////////////////////////////////////////
//播放音乐
//index:播放的歌曲编号
//返回值:0成功;1,下一曲;2,上一曲;0xff 得到文件信息失败;0xfe,硬复位失败;  
u8 MUSIC_BUFFER[512];

extern u8 SPI_FLASH_BUF[4096];
u8 *music_path = (u8*)SPI_FLASH_BUF;   

u8 Play_Song(char *pathu16 indexu16 total)
{  
u8 key;
u16 icount=0;  
u8 pause=0n;//不暂停  
FRESULT res;
FILINFO fno;
DIR dir;
FIL music_file;
UINT br;

#if _USE_LFN
static char lfn[_MAX_LFN+1];
fno.lfname = lfn;
fno.lfsize = sizeof(lfn);
#endif

res = f_opendir(&dirpath);
if(!res)
{
for(;;)
{
res = f_readdir(&dir&fno);   //顺序读取目录项
if(res||fno.fname[0]==0) break;
if(fno.fname[0]==‘.‘)  continue;  //跳过自身目录项和父目录项

if(fno.fattrib&AM_DIR) continue;  //跳过文件夹
else
{
if(FileType_Tell(fno.

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-06-11 20:31  NRF24L01视频传输\
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\APPLICATION\
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\APPLICATION\MP3\
     文件        5090  2012-11-23 20:27  NRF24L01视频传输\发送\APPLICATION\MP3\mp3player.c
     文件         362  2012-11-09 14:23  NRF24L01视频传输\发送\APPLICATION\MP3\mp3player.h
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\FATFS\
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\FATFS\doc\
     文件        2815  2012-07-25 00:19  NRF24L01视频传输\发送\FATFS\doc\css_e.css
     文件        3177  2012-07-25 00:19  NRF24L01视频传输\发送\FATFS\doc\css_j.css
     目录           0  2018-12-22 18:20  NRF24L01视频传输\发送\FATFS\doc\en\
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\FATFS\doc\img\
     文件        1414  2011-09-02 22:10  NRF24L01视频传输\发送\FATFS\doc\img\f1.png
     文件        1458  2007-02-10 03:12  NRF24L01视频传输\发送\FATFS\doc\img\f2.png
     文件        1039  2007-02-10 03:12  NRF24L01视频传输\发送\FATFS\doc\img\f3.png
     文件        2335  2008-01-05 20:27  NRF24L01视频传输\发送\FATFS\doc\img\f4.png
     文件        2479  2008-01-05 20:27  NRF24L01视频传输\发送\FATFS\doc\img\f5.png
     文件        1436  2010-08-21 10:13  NRF24L01视频传输\发送\FATFS\doc\img\f6.png
     文件        2401  2009-03-20 21:57  NRF24L01视频传输\发送\FATFS\doc\img\layers.png
     文件        2379  2009-06-13 21:48  NRF24L01视频传输\发送\FATFS\doc\img\layers3.png
     文件        5209  2012-07-27 01:26  NRF24L01视频传输\发送\FATFS\doc\img\modules.png
     文件       19068  2008-10-18 19:31  NRF24L01视频传输\发送\FATFS\doc\img\rwtest.png
     文件        8153  2010-09-13 10:55  NRF24L01视频传输\发送\FATFS\doc\img\rwtest2.png
     文件        3011  2009-06-15 00:03  NRF24L01视频传输\发送\FATFS\doc\img\rwtest3.png
     目录           0  2018-12-22 18:20  NRF24L01视频传输\发送\FATFS\doc\ja\
     文件        4185  2012-08-27 21:56  NRF24L01视频传输\发送\FATFS\doc\updates.txt
     目录           0  2018-06-11 20:31  NRF24L01视频传输\发送\FATFS\src\
     文件        6821  2012-09-04 22:50  NRF24L01视频传输\发送\FATFS\src\00readme.txt
     文件      724229  2013-03-17 18:45  NRF24L01视频传输\发送\FATFS\src\cc936.c
     文件        6946  2012-10-09 19:47  NRF24L01视频传输\发送\FATFS\src\diskio.c
     文件        2763  2012-08-27 21:39  NRF24L01视频传输\发送\FATFS\src\diskio.h
............此处省略770个文件信息

评论

共有 条评论