mp3解码板模块

合集下载

基于stm32的软件音频解码库libmad移植手册

基于stm32的软件音频解码库libmad移植手册

/* [ch][eo][peo][s][v] */
unsigned int phase;
/* current processing phase */
struct mad_pcm pcm;
/* PCM output */};
此数据结构存放解码合成滤波后的 PCM 数据,pcm 域比较重要:
struct mad_pcm {
FrameSize = (((MpegVersion == MPEG1 ? 144 : 72) * Bitrate) / SamplingRate) + PaddingBit
例如: Bitrate = 128000, a SamplingRate =44100, and PaddingBit = 1
原创教程
UP MCU 工作室
Libmad 音频解码库移植手册
本手册由 UP MCU 工作室编写,若要转载请注明出处 2012-8-12
UP MCU 工作室 淘宝店:
1
原创教程
UP MCU 工作室
前言
目前,网络上绝大都数关于 MP3 播放器的例子,大都采用 vs1003 这颗硬件解码芯片或 者使用 AT89C51SND1C 这颗含有内部音频解码电路的 NB 单片机,软件音频解码的例子少之又 少。UP MCU 工作室的相关人员花了些时间、精力,研究了目前 linux 领域很常用的一个开 源音频解码库——libmad 的解码流程,并将其成功移植到裸奔的 stm32 平台上。本着资源 共享的奉献精神,本工作室将移植过程整理成手册,发布于网络,希望对大家有用。
3. Libmad 移植
从前面的解码框图中我们知道,使用 libmad 解码,我们只需要把音频文件流读入 给 libmad,然后把解码得到的 PCM 数据进行播放就可以。

MP3解码芯片

MP3解码芯片

MP3解码芯片解码芯片,它的作用顾名思义就是将存储在介质(Flash或者硬盘)上的MP3文件解码。

它是MP3随身听工作中最重要的一环,很大程度上影响产品最终的音质表现。

MP3是一种有损压缩的格式,如果MP3随身听拥有优秀的解码芯片就能够更好地还原音频信号的质量,很大程度上弥补音频信号的损失。

而N910X系列解码芯片就是一款优秀的解码芯片。

至于解码芯片文件排列与命名规则是怎样的,请继续往下看。

1 文件排列与命名规则1)文件命名必须以MP3后缀结尾。

2)文件的顺序是按拷贝入存储设备中的先后顺序排序的。

1.1一线串口时序一线串口MCU只需要一根线就可以控制了,由头码和占空比组码,先发低位,头码拉低3ms以上,平时保持高。

总共8位。

时序占空比约为1:3.时序范围介于300us:900us到1000us:3000us之间。

误差容许10%。

1.2程序范例 (MCU :PIC16F57 晶振:4MHz)(更新日期:2016.4.14)Sda=0; /*数据拉低*/Wait(300); /*等待3ms 以上*/For(i=0;i<8;i++) /*8位循环*/{Sda=1; /*数据拉高*/If(addr&1) /*如果地址低位拉高*/{Wait(15); /*等待1200us 以上*/Sda=0; /*数据拉低*/Wait(5); /*等待400us 以上*/}Else{Wait(5); /*等待400us 以上*/Sda=0; /*数据拉低*/Wait(15); /*等待1200us 以上*/}Addr>>=1; /*地址右移一位*/} Sda=1; /*数据拉高*/2 UART 串口通信协议N910X 系列内置标准UART 异步串行接口。

属于TTL 电平接口,可通过MAX232芯片转换成RS232电平。

模块通信采用全双工串口通信,波特率为9600,数据位:8 ,停止位1 位,检验位无。

mp3解码算法原理详解

mp3解码算法原理详解

MPEG1 Layer3 (MP3)解码算法原理详解本文介绍了符合ISO/IEC 11172-3(MPEG 1 Audio codec Layer I, Layer II and Layer III audio specifications) 或 ISO/IEC 13818-3(BC Audio Codec)的音频编码原理。

通过madlib解码库进行实现。

1、程序系统结构mp3解码流程图其中同步及差错检查包括了头解码模块在主控模块开始运行后,主控模块将比特流的数据缓冲区交给同步及差错检查模块,此模块包含两个功能,即头信息解码及帧边信息解码,根据它们的信息进行尺度因子解码及哈夫曼解码,得出的结果经过逆量化,立体声解码,混淆缩减,IMDCT,频率反转,合成多相滤波这几个模块之后,得出左右声道的PCM码流,再由主控模块将其放入输出缓冲区输出到声音播放设备。

2、主控模块主控模块的主要任务是操作输入输出缓冲区,调用其它各模块协同工作。

其中,输入输出缓冲区均由DSP控制模块提供接口。

输入缓冲区中放的数据为原始mp3压缩数据流,DSP控制模块每次给出大于最大可能帧长度的一块缓冲区,这块缓冲区与上次解帧完后的数据(必然小于一帧)连接在一起,构成新的缓冲区。

输出缓冲区中将存放的数据为解码出来的PCM数据,代表了声音的振幅。

它由一块固定长度的缓冲区构成,通过调用DSP控制模块的接口函数,得到头指针,在完成输出缓冲区的填充后,调用中断处理输出至I2S接口所连接的音频ADC芯片(立体声音频DAC和DirectDrive耳机放大器)输出模拟声音。

3、同步及差错检测同步及差错检测模块主要用于找出数据帧在比特流中的位置,并对以此位置开始的帧头、CRC校验码及帧边信息进行解码,这些解码的结果用于后继的尺度因子解码模块和哈夫曼解码模块。

Mpeg1 layer 3的流的主数据格式见下图:主数据的组织结构图其中granule0和granule1表示在一帧里面的粒度组1和粒度组2,channel0和channel1表示在一个粒度组里面的两个通道,scalefactor为尺度因子quantized value为量化后的哈夫曼编码值,它分为big values大值区和count1 1值区CRC校验:表达式为X16+X15+X2+13.1 帧同步帧同步目的在于找出帧头在比特流中的位置,ISO 1172-3规定,MPEG1 的帧头为12比特的“1111 1111 1111”,且相邻的两个帧头隔有等间距的字节数,这个字节数可由下式算出:N= 144 * 比特率 / 采样率如果这个式子的结果不是整数,那么就需要用到一个叫填充位的参数,表示间距为N +1。

MP3软解码库Libmad详细解释

MP3软解码库Libmad详细解释

本文档版权归属于 西安交通大学人工智能与机器人研究所 作者: 李国辉 g h l i @ a i a r . x j t u . e d u . c n
第2章 Mp3 解码算法流程
MP3 的全称为 MPEG1 Layer-3 音频文件, MPEG 音频文件是 MPEG1 标准中的声音部 分,也叫 MPEG 音频层,它根据压缩质量和编码复杂程度划分为三层,即 Layer1、Layer2、 Layer3,且分别对应 MP1、MP2、MP3 这三种声音文件,并根据不同的用途,使用不同层 次的编码。MPEG 音频编码的层次越高,编码器越复杂,压缩率也越高,MP1 和 MP2 的压 缩率分别为 4:1 和 6:1-8:1,而 MP3 的压缩率则高达 10:1-12:1。一分钟 CD 音质的音 乐,未经压缩需要 10MB 的存储空间,而经过 MP3 压缩编码后只有 1MB 左右。不过 MP3 对音频信号采用的是有损压缩方式,为了降低声音失真度,MP3 采取了“ 心理声学模型”, 即编码时先对音频文件进行频谱分析,然后再根据心理声学模型把谱线分成若干个阈值分 区,并计算每个阈值分区的阈值,接着通过量化和熵编码对每个谱线进行编码,最后形成具 有较高压缩比的 MP3 文件,并使压缩后的文件在回放时能够达到比较接近原音源的声音效 果。
2.1. Mp3 文件格式
MP3 文件以一帧为一个编码单元, 各帧编码数据是独立的。 为了清晰而准确地描述 mp3 文件格式,下面采用位流语法描述,这种语法格式与 c 语言近似,易于理解,且描述清晰。 其中粗体表示码流中的数据项,bslbf 代表位串,即“Bit string, left bit first ”,uimsbf 代表无 符号整数,即”unsinged integer, most significant bit first”,数字表示该数据项所占的比特数。

常用的串口MP3模块详解

常用的串口MP3模块详解

常用的串口MP3模块详解1前言:当我们去银行营业厅排队办银行卡时,会听到清晰甜美的语音提示:请XX 号到X号窗口,让人听着倍感舒服;很多写字楼、工厂都会用指纹考勤机考勤,按指纹正确时会听到提示:“已签到,谢谢!”否则,会提示:“请重按手指。

”等等。

让人感觉很人性化,这些产品之所以给人感觉良好,是因为装了串口MP3模块在里面。

然而,广州九芯电子N9200串口MP3模块就有此功能。

2 概述:N9200是一个提供串口的MP3 芯片,完美的集成了MP3、WMV的硬解码芯片。

它包括了N9200A与N9200B音乐MP3模块,同时软件支持TF 卡驱动,支持电脑直接更新spi flash 的内容,支持FAT16、FAT32 文件系统。

通过简单的UART 串口指令或一线串口指令即可完成播放指定的音乐,以及如何播放音乐等功能,无需繁琐的底层操作,音质优美,使用方便,稳定可靠是此款产品的最大特点。

另外该芯片也是深度定制的产品,专为固定语音播放领域开发的低成本解决方案。

3 特征支持采样率(KHz):8/11.025/12/16/22.05/24/32/44.1/48。

音质优美,立体声。

24 位DAC 输出,内部采用DSP硬解码,非PWM输出,动态范围支持90dB,信噪比支持85dB完全支持FAT16、FAT32 文件系统,最大支持32G的TF 卡,支持32G的U盘多种控制模式,UART串口模式、一线串口模式、AD按键控制模式广播语插播功能,可以暂停正在播放的背景音乐,支持指定路径下的歌曲播放,支持跨盘符插播,支持插播提前结束指定时间播放指定盘符播放,指定曲目播放30级音量可调,5种EQ可调(NORMAL—POP—ROCK—JAZZ--CLASSIC)指定路径播放(支持中英文) 文件夹切换 指定时间段复读支持电脑声卡控制,支持USBmass storage 支持触发不可以打断播放4 应用场合5 模块管脚图原理图(1)实物图(1)原理图(2)实物图(2)6 N9200A-16P MP3模块管脚说明7 N9200B-28P MP3模块管脚说明8 硬件参数以及环境极限参数说明9 模块内部电路图备注:模块内部ADKEY已有22K上拉电阻的,如果用户自行布板,ADKEY必须有22K上拉电阻。

杰理AC1074 MP3解码芯片ic方案说明

杰理AC1074 MP3解码芯片ic方案说明

AC1074方案说明一、简介AC1074是杰理2016年中旬推出的一款mp3解码芯片,QSSOP24封装的,支持MP3和WAV。

24位的DAC 输出[这个参数含水分]。

这款芯片的主要目的是替代AC1094,为了降低成本AC1074和AC1094是完全pin对pin的,但是封装不同二、杰理方案的分类说明系列分类对应的芯片目前版本封装备注2系列已经停产,无需关心1系列AC1090E版LQFP48多GPIO口AC1094E版SSOP24AC1093E版SSOP24AC1082E版SOP16AC1074E版QSSOP24替代AC10941系列的特点单价低,2013年推出的,生命周期要长。

支持MP3、WAV。

不支持录音和WMA解码3系列AC3090-C C版LQFP48带录音AC3094-C C版SSOP24AC3082-C C版SOP163系列的特点是单价高,支持录音和WMA格式的解码,生命周期可能会短4系列[蓝牙方向]AC4101目前主推的蓝牙芯片AC4106低成本蓝牙基本停产无需关心AC4107目前主推低成本蓝牙,AC4109争对蓝牙耳机应用4系列的特点是芯片为ARM内核,时钟最高128M,分别应用在蓝牙和语音识别,QQ:2491352264 AC46系列AC4601LQFP48支持点阵屏AC4602SSOP28AC4603SSOP24AC4605SSOP20AC46系列,是单芯片的蓝牙芯片,目前是主推的蓝牙方案[插卡+蓝牙+FM],但是缺点就是功耗比较大杰里的所有系列的芯片,都是一个晶圆,只是根据不同的需求,进行不同方式的封装,也就是说1系列里面SOP16和LQFP48封装的晶圆是一样的三、AC1074的特点●小型封装QSSOP24。

两边出脚。

生产加工和调试十分方便●支持USB设备、TF卡、FM、AUX、FLASH。

●支持遥控功能●按键稳定支持10个,上一曲、下一曲●可以带显示的插卡方案,另外高达15个可用的GPIO,可以组成很多功能1、AC1074的管脚说明引脚序号引脚名称功能描述备注1DACL左声道2DACR右声道33V3 3.3V稳压输出4VIN电源输入 3.2V-5V5GND电源地6P23/P24通用输入输出口AUX输入脚7P25通用输入输出口AUX输入脚8P26通用输入输出口可以做GPIO 9P27通用输入输出口可以做GPIO 10P46/VPP通用输入输出口外部中断[低触发] 11P17通用输入输出口SPI的输入12P16通用输入输出口SPI的时钟13P01通用输入输出口SPI的输出14P00通用输入输出口15P05通用输入输出口16P02通用输入输出口17P20通用输入输出口SDCLK18P21通用输入输出口SDCMD19P22通用输入输出口SDDAT20USBDM通用输入输出口USB-21USBDP通用输入输出口USB+22RTCVDD复位脚复位脚23VCOM DAC的参考电压DAC的参考电压24DACVSS DAC的输出地DAC的输出地2、管脚的详细介绍3、芯片代码划分mon:启动代码,库函数2.DAC:DAC模块驱动,控制函数3.FM:FM模块驱动,控制函数接口,模式主循环4.IIC:IIC模块驱动,读/写接口5.key_msg:AD按键初始化,扫描函数,红外遥控扫描函数,消息处理函数6.Line in:Line In控制函数接口,模式主循环7.Music:解码控制接口,音乐控制函数接口,音乐模式主循环8.RTC:RTC模块初始化函数9.UI:LCD/LED/LCD SEG屏幕驱动,显示界面B Device:USB从机主循环4、1074标准原理图四、特别说明:●芯片为可编程,但是是OTP的,只能烧录一次●烧录芯片必须原厂提供的专用烧录器●如果用户有兴趣自己开发程序,我可以联系我们。

播放模块的说明

播放模块的说明
4、接口协议
模块使用三线制串口通讯协议。 单片机系统与模块之间需要连接 RXD 和 TXD 两根信号线及公共地线,单片机系统通过串口发送两 个同步码字节(57H、ABH)作为执行命令包的启动信号,实现与模块的命令同步。在通过串口输入两 个同步码字节时,模块会检查串口数据输入超时,如果连续两个数据字节之间的间隔大于串口输入超 时时间,则模块将放弃该同步码及命令包。 模块的串口是 1 位起始位、8 位数据位、1 位停止位的异步串口,默认通讯波特率是 9600bps(与 晶体 X2 的频率有关),可以通过模块配置软件修改。 基本操作步骤是,单片机系统将命令包,包括命令码、后续参数长度(因为各命令码所需要的参 数不等长)和参数发给模块,并通知其启动操作,模块执行完成后向单片机返回状态包,包括操作状 态码及可选的操作结果。 因为接口操作看起来比较复杂,所以实际过程可以参考随模块一起提供的示例程序,直接用其中 的 ExecCommand 子程序就可以了,不必理解下面的接口步骤说明。 串口方式的操作步骤是(请参考示例程序中的 ExecCommand 子程序): ① 基本概念:串口通过双向异步串口交换数据,为了防止将命令当成数据,或者将数据当成命 令,在单片机系统与模块之间应该采取同步措施,方法是单片机通过串口发送两个同步码字节(57H ABH)作为启动信号,用于通知模块“命令码开始发送”。 ② 单片机系统按以下顺序从串口向模块输出:两个同步码字节(用于通知模块“命令码开始发 送”)、命令码、后续的参数的长度、以及可选的参数。有些命令不需要任何参数,那么参数的长度就 应该是 0。 ③ 模块接收到两个同步码字节后,从串口依次接收命令码及可选的参数,然后分析命令码并执 行。如果同个同步码字节间隔超过 20mS 则该命令包被丢弃。 ④ 模块执行完成,通过串口输出操作状态码,通知单片机系统命令操作完成。在状态码输出完 成后,如果状态码为操作成功 0x00,那么模块还从串口依次输出后续的结果数据的长度、以及可选 的结果数据。有些命令执行后没有结果数据返回,那么结果数据的长度就会是 0。 ⑤ 单片机系统从串口收到状态码后,如果是操作成功,还可以从串口获得可选的结果数据。到 此,一个命令包的执行过程结束。 ⑥ 单片机系统根据需要可以转到步骤②发出下一个操作命令。

mp3解码板

mp3解码板

mp3解码板
该MP3解码板可以播放TF卡 U盘内的MP3⽂件。

也可以当做FM收⾳机,另外设有3.5mm线路输⼊插座。

体积⼩巧,功能齐全,⾮常适合⽤来DIY⾳响。

同时配有遥控器,操作⽅便。

⾯板尺⼨:长*宽107*25.5mm
安装深度25mm
发货全套:
接线图:(安装时⼀定注意电源的正负极,接反必烧)
关于电源电压:因该板使⽤5V12V通⽤PCB,所以收到的板电源插座处标有5V字样,请忽略,接12V就⾏了。

不谢。

按键功能:
1、“SCAN”:在USB/TF状态短按播放/暂停,在FM状态长按⾃动扫描电台;
2、“VOL-”:在USB/TF短按上⼀曲;在FM状态短按上⼀电台,长按⾳量减。

3、“VOL+”:在USB/TF短按下⼀曲;在FM状态短按下⼀电台,长按⾳量加。

4、“MODE”:有TF卡和U盘时:切换顺序USB/TF→FM→AUX→USB/TF。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

mp3解码板模块
MP3板输出音频(相当于一台CD机输出),不带功放。

需要另加功放一起使用才能接喇叭。

带LCD显示。

可以插U盘。

SD卡。

带收音可以断电记忆。

可遥控接收。

1.采用原装进口解码芯片;
2.支持高达32G大容量U盘,SD卡;
3.支持32K-320K速率MP3格式,建义使用320K,音质更纯正;
4.支持音量、曲目,掉电记忆功能;
5.支持六种EQ音效模式选择功能
6.支持红外遥控功能;
7.支持FM立体声收音功能;
8.超薄红外遥控器,高品质接收头,让操作控制变得如此简单.
9.工作电压3.7-5V,可以用手机锂电或者18650做供电。

如果你觉得上面的控制板巨大。

发挥你的DIY精神。

改造一下,其实也可以很小的。

(下图均为解码板实物改装)。

相关文档
最新文档