CN103794239A - 一种mp3播放器控制系统 - Google Patents
一种mp3播放器控制系统 Download PDFInfo
- Publication number
- CN103794239A CN103794239A CN201210423025.3A CN201210423025A CN103794239A CN 103794239 A CN103794239 A CN 103794239A CN 201210423025 A CN201210423025 A CN 201210423025A CN 103794239 A CN103794239 A CN 103794239A
- Authority
- CN
- China
- Prior art keywords
- module
- file
- control
- control system
- player
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种MP3播放器控制系统,其采用8051与DSP双核模式,DSP用于解码音乐文件,8051用于系统控制;该控制系统还包括:系统初始化模块,用于对所述MP3播放器控制系统进行初始化设置;按键检测模块,用于扫描按键所给出的控制命令并将所述控制命令转换成相应的按键值;设备检测模块,用于检测存储设备的插拔情况;文件系统模块,用于对文件进行播放操作前的准备工作;播放控制模块,用于对文件进行播放操作;显示模块,用于通过LCD屏或LED屏显示操作内容;信息记忆模块,用于存储EPROM信息;调试模块,用于通过该串口调试工具对波特率进行调节。本MP3播放器控制系统系统集成度高、操作简便。
Description
技术领域
本发明涉及电子设备应用技术领域,特别涉及一种MP3播放器控制系统。
背景技术
随着人们生活水平的提高和工作压力的增大,MP3播放器成为了人们业余生活中缓解压力的一种重要电子设备。
对于MP3播放器的控制,目前所使用的操作系统普遍存在着系统集成度低、操作复杂等问题。
发明内容
本发明的目的就是针对上述问题,提供一种系统集成度高、操作简便的MP3播放器控制系统。
为了实现上述目的,本发明提供了以下技术方案:一种MP3播放器控制系统,采用8051与DSP双核模式,DSP用于解码音乐文件,8051用于系统控制;该MP3播放器控制系统还包括:
按键检测模块,连接外部按键,用于扫描按键所给出的控制信号并将该控制信号转换成相应的按键值;
设备检测模块,连接存储设备并转换成相应的设备接入信号或者
设备断开信号,用于检测存储设备的插拔情况;
系统初始化模块,接收上述按键检测模块的控制信号并对控制系统进行初始化设置;
文件系统模块,接收上述设备接入信号,用于对文件进行播放操
作前的准备工作;
播放控制模块,接收上述按键检测模块的控制信号,用于对文件
进行播放操作并转换成相应的播放操作信号;
信息记忆模块,接收上述播放操作信号并存储EPROM信息;
调试模块,连接串口调试工具,接收上述按键检测模块的控制信
号并通过该串口调试工具对波特率进行调节;
显示模块,连接外部LCD屏或LED屏,接收上述各模块的操作信
号并通过该LCD屏或LED屏显示。
优选地,系统初始化模块包括:
系统时钟模块,用于对时钟进行设置;
电检测设备模块,用于对供电进行检测;
定时器模块,用于对定时器进行设置。
优选地,按键包括IO按键、AD按键或者红外按键。
优选地,存储设备包括SD卡或者U盘。
优选地,文件系统模块包括文件查找模块和文件定位模块,用于对文件进行查找并定位。
优选地,播放控制模块包括:
播放音量控制模块,用于设置音量值并把音量值写入音量控制寄存器;
EQ音效控制模块,用于设置EQ值并把EQ值写入EQ控制寄存器;
播放模式控制模块,用于调整不同的播放模式;
上下曲播放控制模块,用于进行上下曲的切换和播放;
上下文件夹播放控制模块,用于进行上下文件夹的切换,并进入文件夹选曲进行播放;
直接选曲播放控制模块,用于直接选曲并进行播放。
优选地,播放模式包括单曲循环模式、所有曲目循环模式、随机播放模式以及文件夹循环模式。
优选地,显示模块包括:
逻辑层,用于缓存需要显示的内容;
物理层,用于把逻辑层的数据写入到硬件直推寄存器,并将数据在LCD屏或者LED屏上显示。
采用以上技术方案的有益效果在于:本系统采用了8051+DSP的双核模式,DSP适合于大数据流的处理,将其用于MP3文件的解码,8051适合一般逻辑处理,将其用于系统的整体控制,使得本系统集成度较高;为系统的各个功能设定相应的各个模块,使得功能模块化,可配置于相应的功能需求,使得操作简单易上手;通过文件系统模块和播放控制模块的配合,文件系统通过查找和定位为文件播放做好前期准备工作,播放控制模块通过内部集成的各个具体功能模块对文件播放实现音量、EQ音效、播放模式、上下曲切换、上下文件夹切换以及直接选曲等功能的控制,使得文件播放流畅;本系统对于市面上的各种存储设备,如SD卡、U盘等都可以进行文件读取,兼容性好。
附图说明
图1是本发明的MP3播放器控制系统在实施例中的系统主流程示意图。
图2是本发明的MP3播放器控制系统在实施例中的按键检测流程示意图。
图3是本发明的MP3播放器控制系统在实施例中的内部框架图。
具体实施方式
下面结合附图详细说明本发明的优选实施方式。
如图1所示,本实施例的MP3播放器控制系统的系统主流程为:系统初始化,系统循环,设备检查,按键扫描,电池检测,功能操作,存储信息以及显示数据处理,其中功能操作包括了文件系统模块和播放控制模块的操作。
本实施例的MP3播放器控制系统采用8051与DSP双核模式,DSP用于解码音乐文件,8051用于系统控制,同时内置DAC,通过PWM输出;该MP3播放器控制系统还包括系统初始化模块、按键检测模块、设备检测模块、文件系统模块、播放控制模块、显示模块、信息记忆模块、调试模块,以及多个硬件接口、USB HOST控制器,SD控制器以及SPI控制器。
上述的系统初始化模块接收上述按键检测模块的控制信号并对控制系统进行初始化设置,其包括系统时钟模块、电检测设备模块以及定时器模块,系统时钟模块用于对时钟进行设置,电检测设备模块用于对供电进行检测,定时器模块用于对定时器进行设置,当显示void st2080startup()时,则开始进入时钟模块进行工作,当显示void InitDeviceModeStack()时,则开始进入电检测设备模块进行工作,当显示Void halDevInit()时,则开始进入定时器模块进行工作。
上述的按键检测模块连接外部按键,用于扫描按键所给出的控制信号并将该控制信号转换成相应的按键值,其具体工作流程如图2所示,扫描的按键包括IO按键、AD按键或者红外按键。IO按键扫描是用矩阵按键扫描对应的按键,返回相应的按键值,没有按键返回KEY_INVALID;AD按键扫描在系统初始化时候需要进行AD初始化,adc_ctrl()设置AD转换的通道以及频率,按键扫描过程中用get_adc_data读取当前AD值,在读取过程中要注意只有在ADCSTAT0寄存器的bit[4]为0读取的值才是有效的值,再根据AD值转换成相应的按键值;红外按键扫描在系统初始化部分halIRINTInit()对红外中断进行初始化,通过8051外部中断1,在中断1中解码红外信息,获取按键码。用GetIRKey()将按键嘛转换成相应的按键值,按键类型的获取与IO按键方式相同。
当显示halkey.c时则进入按键扫描工作,具体如下:
(1)按键功能通过gxwKeyCode的全局变量在(Ui.c)中处理,处理完设置为KEY_INVALID;
(2)按键分为以下5种事件:
PRESS,(按下要响应快可用这个按键事件)
SHORT_RELEASE,(短按释放)
LONG_START,(长按开始,用于长按只响应一次的事件)
LONG,(长按中事件)
LONG_RELEASE (长按释放);
(3)按键根据AD和IO按键来分是间隔2ms还是6ms检测一次。
设备检测模块连接存储设备并转换成相应的设备接入信号或者
设备断开信号,用于检测存储设备的插拔情况,包括对SD卡或者U盘的检测。SD 卡的检测是用IO口检测SD来的插拔,halSDCheck(); 返回为TRUE插入了SD卡返回为FALSE拔除了SD卡;U盘检测是系统初始化时,已经对USB HOST部分做了初始化halUsbInit(),U 盘插入检测是用halUsbCheckIn进行U盘的插入检测,检测到系统切换到U盘进行播放,U盘拔除检测是在U 盘不处于播状态时用halUsbCheckOut检测U盘是否拔除检测。检测到拔除以后一定要用 halUsbInit()对HOST部分进行硬件重新初始化,以便下次的插入检测。
上述的文件系统模块接收上述设备接入信号,用于对文件进行播
放操作前的准备工作,该文件系统模块包括文件查找模块和文件定位模块,具体用于对文件进行查找并定位,本系统支持FAT12,FAT16,FAT32 三种文件系统,并支持在FSDRIVER.c对文件系统的读操作,具体工作内容包括:
1)文件系统的初始化
文件系统初始化用函数FileSystemInit()进行,目前支持1个分区,可完成对文件系统的簇大小、文件系统类型、FAT表、根目录位置的初始化、为文件的查找以及文件的读取准备好;
2)歌曲文件的查找
针对磁盘容量较大,磁盘歌曲数目较多,对文件进行快速的查找,快速定位,支持100-150个有歌曲的目录查找和10-30级目录查找,可把每个有歌曲的目录地址进行记忆,方便播放中文件的快速定位,快速播放;
3)歌曲文件的快速定位
将查找到的有歌曲的目录进行计算,快速跳转到新的目录,定位到新的曲目,可以根据不同的循环模式找到曲目:
初始化文件基本信息包括:
typedef struct{
DWORD FileSize;
DWORD CurrPos;
DWORD start_clus;
DWORD cur_clus;
DWORD cur_sector_address;
BYTE sec_of_clus_idx;
WORD total_songs;
WORD cur_file_idx;
WORD cur_dir; //music_dir_chain[k]
BYTE total_dir;
BYTE cur_filename[13];//包括后缀
}FILE_INFO;
说明:FileSize:文件大小,文件播放结束控制,
CurrPos: 文件播放的位置,播放位置超过FileSize时
曲目播放结束,
start_clus:播放曲目的起始簇,
total_songs:磁盘中曲目的总数,
cur_file_idx:当前播放的曲目索引,
cur_dir :当前播放的文件夹索引,
total_dir:磁盘中有歌曲的总文件夹数;
4)歌曲文件的播放
调用sys_play_song()把歌曲文件的内容读取出来,并送往内部DSP的MP3 Buffer,内部框架图如图3所示。
上述的播放控制模块接收上述按键检测模块的控制信号,用于对
文件进行播放操作并转换成相应的播放操作信号,该播放控制模块包括播放音量控制模块、EQ音效控制模块、播放模式控制模块、上下曲播放控制模块、上下文件夹播放控制模块以及直接选曲播放控制模块。播放控制采用状态机的机制来控制,不同的状态有不同的控制,状态机由mp3status来控制,包括五种状态:
#define MP3STATUS_IDLE 1
#define MP3STATUS_DEVINIT 2
#define MP3STATUS_INIT 3
#define MP3STATUS_PLAY 4
#define MP3STATUS_PAUSE 5;
说明:
MP3STATUS_IDLE:播放空闲状态,也就是没有播放任何歌曲的状态;
MP3STATUS_DEVINIT:设备的初始化状态主要是SD卡和U盘的初始化过程,这一状态还包括了设备的文件系统的初始化;
MP3STATUS_INIT:系统初始化完成,出于播放准备阶段,此阶段用于播放曲目的定位;
MP3STATUS_PLAY:曲目播放状态,在这种状态下进行播放送数据到DSP;
MP3STATUS_PAUSE:曲目暂停播放;
播放音量控制模块用于设置音量值并把音量值写入音量控制寄存器,void_halVolRegSet(BYTE bVol) 设置音量,用全局变量gxtConInfo.bMp3Vol设置音量大小的值,把相应的音量值写入到音量
控制寄存器;
EQ音效控制模块用于设置EQ值并把EQ值写入EQ控制寄存器,
halEQSet()函数设置EQ效果,gxtConInfo.bEQIdx为EQ模式,把EQ效果值写入到EQ控制寄存器,达到调节EQ效果;
播放模式控制模块用于调整不同的播放模式,包括单曲循环模式、所有曲目循环模式、随机播放模式以及文件夹循环模式的播放模式,本播放模式控制模块是通过Key_SetRepteate()函数调整不同的播放模式,具体播放模式的说明如下:
MP3_PMODE_REPEAT1: 单曲循环
MP3_PMODE_REPEATALL: 所有曲目循环
MP3_PMODE_REPEATRAN: 随机播放
MP3_PMODE_REPEARTFLO: 文件夹循环;
上下曲播放控制模块用于进行上下曲的切换和播放,设置Sys_NextPrevFile(BYTE Direct ),当Direct为1时表示下一曲,当Direct为0还是上一曲,设置文件操作模式file_op为FILE_SKIP_NEXT或FILE_SKIP_PREV进行上下曲操作,通过调用sys_skip_file(file_op)找到要播放的曲目,并且打开文件播放;
上下文件夹播放控制模块用于进行上下文件夹的切换,并进入文件夹选曲进行播放,系统支持上下文件夹,来选择曲目播放,有利于对不同类型,不同歌手的歌曲按文件夹播放,操作更方便,设置Sys_Skip_Folder(BYTE Direct),当Direct为1时表示下一文件夹,当Direc为0还是上一文件夹,设置文件操作模式file_op为FILE_SKIP_NEXTDIR或FILE_SKIP_PREVDIR进行上下文件夹操作,通过调用sys_skip_file(file_op)找到目录里的第一曲,并且打开文件播放;
直接选曲播放控制模块用于直接选曲并进行播放,通过IR按键选择播放的曲目播放,设置file_op = FILE_SELECT并调用sys_skip_file(file_op)找到曲目播放。
上述的显示模块连接外部LCD屏或LED屏,接收上述各模块的操作信号并通过该LCD屏或LED屏显示,处理器支持硬件直推LCD屏,支持软件推LED屏,该显示模块包括:
逻辑层(halddlcd.c),把要显示的内容缓存起来;
物理层(halddlcd3X9.c halddlcd4X8.c),把逻辑层的数据写入到硬件直推的寄存器里,物理层根据显示的数据,按LCD的驱动把数据在LCD上显示,如果是LED屏则需要软件在定时器里,根据LED的显示方式即时刷新数据。
上述的信息记忆模块接收上述播放操作信号并存储EPROM信息,EPROM信息存储较慢,在高码流的文件下会影响播放,每次只写一个字节。每次写入的对应的字节设置gxwConfigInfo相应的位即可,存储的数据在 gxtConInfo里。
上述的调试模块连接串口调试工具,接收上述按键检测模块的控
制信号并通过该串口调试工具对波特率进行调节,系统支持多个波特率 9600 115200等等,可根据需要调整波特率要使用串口调试功能需在系统工程里设置,设置方式:串口调试在工程属性->C51里设置,UART_DEBUG=0 关闭UART,UART_DEBUG=1 打开UART,函数 UartOutText 以串口输出字符,函数UartOutValue 串口输出16进制数值。
本系统所采用的编译器版本为Keil uvision4。
采用以上技术方案的有益效果在于:本系统采用了8051+DSP的双核模式,DSP适合于大数据流的处理,将其用于MP3文件的解码,8051适合一般逻辑处理,将其用于系统的整体控制,使得本系统集成度较高;为系统的各个功能设定相应的各个模块,使得功能模块化,可配置于相应的功能需求,使得操作简单易上手;通过文件系统模块和播放控制模块的配合,文件系统通过查找和定位为文件播放做好前期准备工作,播放控制模块通过内部集成的各个具体功能模块对文件播放实现音量、EQ音效、播放模式、上下曲切换、上下文件夹切换以及直接选曲等功能的控制,使得文件播放流畅;本系统对于市面上的各种存储设备,如SD卡、U盘等都可以进行文件读取,兼容性好。
以上所述的仅是本发明的优选实施方式,应当指出,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (8)
1.一种MP3播放器控制系统,其特征在于:采用8051与DSP双核模式,所述DSP用于解码音乐文件,所述8051用于系统控制;所述MP3播放器控制系统还包括:
按键检测模块,连接外部按键,用于扫描按键所给出的控制信号并将所述控制信号转换成相应的按键值;
设备检测模块,连接存储设备并转换成相应的设备接入信号或者设
备断开信号,用于检测存储设备的插拔情况;
系统初始化模块,接收所述按键检测模块的控制信号并对控制系统进行初始化设置;
文件系统模块,接收所述设备接入信号,用于对文件进行播放操作
前的准备工作;
播放控制模块,接收所述按键检测模块的控制信号,用于对文件进
行播放操作并转换成相应的播放操作信号;
信息记忆模块,接收所述播放操作信号并存储EPROM信息;
调试模块,连接串口调试工具,接收所述按键检测模块的控制信号
并通过所述串口调试工具对波特率进行调节;
显示模块,连接外部LCD屏或LED屏,接收所述各模块的操作信号
并通过所述LCD屏或LED屏显示。
2.根据权利要求1所述的MP3播放器控制系统,其特征在于:所述系统初始化模块包括:
系统时钟模块,用于对时钟进行设置;
电检测设备模块,用于对供电进行检测;
定时器模块,用于对定时器进行设置。
3.根据权利要求1或2所述的MP3播放器控制系统,其特征在于:所述按键包括IO按键、AD按键或者红外按键。
4.根据权利要求1-3任一所述的MP3播放器控制系统,其特征在于:所述存储设备包括SD卡或者U盘。
5.根据权利要求1所述的MP3播放器控制系统,其特征在于:所述文件系统模块包括文件查找模块和文件定位模块,用于对文件进行查找并定位。
6.根据权利要求1所述的MP3播放器控制系统,其特征在于:所述播放控制模块包括:
播放音量控制模块,用于设置音量值并把所述音量值写入音量控制寄存器;
EQ音效控制模块,用于设置EQ值并把所述EQ值写入EQ控制寄存器;
播放模式控制模块,用于调整不同的播放模式;
上下曲播放控制模块,用于进行上下曲的切换和播放;
上下文件夹播放控制模块,用于进行上下文件夹的切换,并进入文件夹选曲进行播放;
直接选曲播放控制模块,用于直接选曲并进行播放。
7.根据权利要求6所述的MP3播放器控制系统,其特征在于:所述播放模式包括单曲循环模式、所有曲目循环模式、随机播放模式以及文件夹循环模式。
8.根据权利要求1所述的MP3播放器控制系统,其特征在于:所述显示模块包括:
逻辑层,用于缓存需要显示的内容;
物理层,用于把所述逻辑层的数据写入到硬件直推寄存器,并将所述数据在LCD屏或者LED屏上显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210423025.3A CN103794239A (zh) | 2012-10-30 | 2012-10-30 | 一种mp3播放器控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210423025.3A CN103794239A (zh) | 2012-10-30 | 2012-10-30 | 一种mp3播放器控制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103794239A true CN103794239A (zh) | 2014-05-14 |
Family
ID=50669822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210423025.3A Pending CN103794239A (zh) | 2012-10-30 | 2012-10-30 | 一种mp3播放器控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103794239A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050049113A1 (en) * | 2003-08-27 | 2005-03-03 | Wen-Hsiang Yueh | MP3 player having exercise meter |
CN101827116A (zh) * | 2010-01-04 | 2010-09-08 | 山东大学 | 一种基于dm6446的嵌入式p2p流媒体直播系统及其工作方法 |
CN202473260U (zh) * | 2012-02-29 | 2012-10-03 | 成都众询科技有限公司 | 一种基于map的mp3播放器 |
-
2012
- 2012-10-30 CN CN201210423025.3A patent/CN103794239A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050049113A1 (en) * | 2003-08-27 | 2005-03-03 | Wen-Hsiang Yueh | MP3 player having exercise meter |
CN101827116A (zh) * | 2010-01-04 | 2010-09-08 | 山东大学 | 一种基于dm6446的嵌入式p2p流媒体直播系统及其工作方法 |
CN202473260U (zh) * | 2012-02-29 | 2012-10-03 | 成都众询科技有限公司 | 一种基于map的mp3播放器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100426850C (zh) | 一种设有usb/存储卡接口的电视机及其软件升级的方法 | |
US20030088326A1 (en) | Low power digital audio decoding/playing system for computing devices | |
CN1505783A (zh) | 用于计算设备的低功耗数字音频解码/播放系统 | |
CN103794239A (zh) | 一种mp3播放器控制系统 | |
CN201072649Y (zh) | 读谱器 | |
CN1991690A (zh) | Usb外接主从接口模块 | |
CN103440137B (zh) | 一种同步显示演奏乐器位置的数字音频播放方法及其系统 | |
CN204010687U (zh) | 书架音箱无损音乐播放器 | |
CN103617800A (zh) | 基于arm和fpga的便携式多通道音频数据采集器 | |
CN204559836U (zh) | 智能耳机 | |
US20100077189A1 (en) | Computer system having music playing function | |
CN202406253U (zh) | 一种带热键播放的便携插卡音响 | |
CN203013264U (zh) | 一种用于实现usb接口存储器与sd卡信息互换的装置 | |
CN101782883B (zh) | Sata设备控制电路及方法 | |
CN203299794U (zh) | 车载系统驱动装置和车载系统 | |
CN205722491U (zh) | 通过魔法书帖实现录音、放音、复读、存储的老人点读笔 | |
CN212230058U (zh) | 一种触摸式流水灯电子琴 | |
CN203689890U (zh) | 一种钢琴琴谱仪 | |
CN201514754U (zh) | 电子乐谱设备 | |
CN201673682U (zh) | 多功能多媒体播放器 | |
CN208706234U (zh) | 一种带音频视频的舞台灯人机交互终端设备 | |
CN103226963A (zh) | 多媒体系统和多媒体文件信息的管理方法 | |
CN202736478U (zh) | 多媒体系统 | |
CN207133770U (zh) | 一种多功能触摸设备 | |
CN201910250U (zh) | 一种mp3播放器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140514 |