你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

DIY STM32之MP3素材整理

[复制链接]
北京小王儿 发布时间:2009-5-19 09:38
我们的核心板已经做出来了,根据方案征集,大家达成了一致。准备自己动手,做一个mp3。下面我把关于mp3制作的方案整合一下,以下素材均来自于ouravr
收藏 评论24 发布时间:2009-5-19 09:38

举报

24个回答
北京小王儿 回答时间:2009-5-19 09:40:20

回复:DIY STM32之MP3素材整理

基于STM32核心板的mp3原理图
2 l! [' m# X' B; l: @: F% @" o! ] 1.jpg
北京小王儿 回答时间:2009-5-19 09:43:30

回复:DIY STM32之MP3素材整理

1.jpg
  Y; {) @! i/ b  ~: |于成功了!经过两个多月的业余时间的努力,我自己制作的MP3
6 M" w' l- p, U" C/ |+ Q8 y; D
) Q- X# X# V: G; g* O# R随身听终于完成了。a方案是tmega8+vs1011,典型的单片机+解码芯片
% T7 M) ]# q0 i* f/ i. C: C. t. K+ O( M4 u# w/ t  _- s
由于自己有一个256MB的SD卡,所以我的 3 s% `4 Q" ?' h. F

4 C; @' B* ?% d) ^7 GMP3是插SD卡的,这样省了不少成本,反正我的数码相机又不
- O7 y0 s. ]9 u& |. u9 a
5 C8 Y6 @4 [9 R3 c! s6 J是经常使用,闲着也是闲着。大概成本算下来,自己做这样一个M + z; c1 H8 J8 L. x  V3 b
2 u. h1 A$ l# Z. q( T  Y1 U  \
P3大概才要120左右,不过最大的乐趣还是来自DIY的乐趣^-^ 7 `% d/ g& h2 C* K: X

9 o& R) ]4 u* v8 t# |5 c, q) z采用的方案是单片机+DSP解码芯片,音质非常好,绝对比普通的MP3
1 e7 [" ]9 {* e' {- M- O
# C, @, B+ |2 L% k6 e& _6 ]3 d* B要好。
北京小王儿 回答时间:2009-5-19 09:47:13

mega8 mp3 player

今天晚上我在我做的mp3上试验了播放wma音乐。
) J1 a7 T9 h' M1 C4 D9 l  kvs1003手册上说可以解码吗mp3 wma和midi格式的音乐。 0 p5 h$ u5 H1 A5 _2 h; H. O7 [  G
试验发现播放wma音乐可以像播放mp3那样播放,只要把wma文件数据送给vs1003就可直接播放。 - C+ }( B5 p& |

) ^* n% ?: o! a7 |/ H刚开始在从正在播放的wma音乐转入下一首音乐会出现不能播放的问题。
" S9 l% u% ]  f+ z; x3 Nwma格式不像mp3格式那样容易播放,因此不能播放的原因是其不能正确结束当前播放的数据帧。 # N' i/ q) O5 g
后来查datasheet发现可以通过设置SCI_MODE的SM_OUTOFWAV位来结束wma的播放。 : _; M9 ?# t; O
$ M+ T+ Q  Z6 {0 T# G
由于我的程序没有判断当前播放的音乐是什么类型音乐的程序。所以我有找了个变通的方法, ' O2 d  w8 J' A* g  {7 X8 k
就是复位。 ! l7 A& F) r7 o4 D  e
: G) x9 ^7 P0 m# n. N
我用的是软件复位,通过设置SCI_MODE的SM_RESET位来实现。
( ^. w, \$ v- @4 E' u8 N即在播放每一首歌前复位一下vs1003就可解决wma歌曲的切换。 3 w5 H$ ]/ |  k/ q% P, i# A3 f% b
按手册上的要求复位前最好向VS1003填充2048个0 且这些数据要根据DREQ引脚的请求送给芯片。
& T; @; I# J  [/ |  O另外复位后还要延时约1.35ms芯片才能恢复到先前的工作频率。 . N, K3 _. O' [2 L$ O2 c
接下来就可以发送你的mp3或wma数据了。
8 z, j5 r% o3 M2 _/ Q
* d9 e- z) D& d- s( e不过这种方法只能整首的播放wma音乐,不能快进。如要快进VLSI网站上有示例代码。
3 x4 J) H6 {  a% D; j4 U- r2 I4 F$ `* ]- z6 J6 @
现在我的mp3可以播放mp3和wma两种格式的音乐了,至于midi有空再研究。 : B* |8 }: z1 z
2 ~- h8 }' z9 i. \2 @7 b
不知阿永第三版的mp3板是否支持wma,如果没有可以考虑把它加上去,不复杂的,只要按我上面的方法就可。
4 g+ ?& F+ ]" |* d" C# e3 N
今天早上我又把vs1003的midi功能做出来了。  
3 N" x: M# x7 `0 _5 R2 Y" Y( s! D, \/ O  D
不过在播放midi之前要把SMF1格式的midi转成SMF0格式的midi文件。  
! D; i8 ]' G4 c  y) M* k在应用手册上的网址http://www.gnmidi.com/下载转换程序GN1:0转换。  
; a% o+ f, n* h  w将转换后的文件拷到sd卡中按播放mp3及wma的方式播放即可。  
. f* N& n2 y; _$ i! c8 G
# F! p) Q" l8 @5 y但要注意在从正在播放的midi曲子跳出来,在复位前就不要填充2048个零了  
% O1 K. Z" |3 f5 S" R如果填充了将会花很长时间才能进入下一首歌的播放,因为midi需要的数据量很小。  * i0 Y, O+ z  y; R( `
同样如果按暂停键,你也会等一段时间让vs1003把内部已有的数据处理完。  . F9 J; ]# y& f$ u

0 b1 K$ z" R0 G  K0 ^8 U  G! O) N/ w播放出来的音乐没有在电脑上播放的效果好,类似于手机上的midi音乐。  
8 j8 \5 o$ J) V' h* t; w" P/ L1 L( I4 e9 @! N& S" E
我做的播放器的图片(在通用板上手工焊的)  
( O* T$ O' m( q3 {- ~( ~
1.jpg
3 h) J: Y+ C: ?) R, z 2.jpg 5 ~4 t5 c/ w! i/ Q
3.jpg 0 [0 }9 O  J+ \  T+ _9 X
另外一个问题:  ! u6 R& a8 T: Y4 g' i: B7 a" S
当midi正常播放至结束时,不能按照判断数据是否送完为标准来判断歌曲是否放完。  
6 \% ]8 I2 O2 D6 f在播放mp3和wma格式时用这种方法,由于损失的时间很短所以听不出来。  
7 K, J+ i8 q, _4 _4 L8 I' n而在放midi时,虽然你的数据送完了,但是由于vs1003内还有2048字节的数据还没解码完。  
0 [) u- a4 P1 B/ D所以这时跳到下一首歌必然引起一段音乐无法播放完。  
( \6 C2 A/ l6 r  e9 y因此在送完所有数据后还要填充2048个数据,我用的是2048个零,才能恰好使midi音乐播放完,其实在播放mp3和wma时也要做同样的处理才对。  

; f& Z9 C( m6 T. H5 l上传一下我写的程序  
  z' }$ W9 c' R! @7 s( r里面包含了SD卡的驱动,完整的FAT16操作程序,及VS1003的程序。  % P0 d/ _3 m" \7 U. Q% _$ x
整个程序花了我半个月时间。  ) Z% e. h4 f' g7 L1 X% z
7 _/ b9 N7 |! |4 P; l+ y' q
其中SD卡驱动只包含了初始化,读一扇区,写一扇区的功能。  
+ C3 y4 R# m) j' q$ H, A# ~" e. P  L- s+ p8 k3 m
FAT16部分  
+ U* ]" \! L' a& O& k# n本来是针对我的毕业设计做的,现在顺便做了个mp3,所以其中有好多函数是不须要的。  
* d- {/ u* Y4 k5 G( K但是有需要做文件系统的可以参考一下。  3 e' \4 p" j6 }% ~2 R. {0 K3 C
这部分含有,创建文件,删除文件,创建目录,删除目录,重命名,打开文件,写文件,显示目录内容等。另外为了配合mp3的操作多添加了几个函数。  
. X1 y. G! [$ v: C3 n; U9 E但是写文件部分做的不完善。不支持长文件名的创建。  
/ [- R6 R. |( i& t4 u  f1 q# F4 U$ D" i4 A+ B: ^
在主程序中放置了播放mp3的操作,同时注释掉了一些关于文件系统的函数。  : ^7 g0 ^8 A, g) g0 [% i9 l( ^) I
如果把mp3的播放函数去掉,把原来的文件系统函数加上,可以直接使用。  1 S# _) `% F# M: T6 t% s! E$ U
4 ~, k8 ]/ F* ]/ _
显示用串口调试工具显示,播放mp3时会显示文件名的短文件名项,初始化的时候会显示初始化信息。  
1 E+ L6 c" H4 B9 @( e在用作fat16操作时可以像普通dos 操作一样。  
  \% B7 _# F0 |) V3 L. s比如显示根目录内容可以输入dir \  
' T- A% d  b" ~5 M* }具体信息可通过输入help查看帮助。  
9 L4 j  b; C0 i' k+ @  ]
! w9 W& X- q- ]3 B# @关于这个mp3的原理图我就不画了  
# f6 k+ ]& K8 u3 ]+ A/ `总共几个脚我用文字描述一下。  
2 k: K( _/ C1 k2 ^% [/ E7 ^, f6 D
# D/ G, ~# q+ q: V: q1 T5 F: qSD卡的cs接m32的SS引脚  
" }9 B% R( w. B/ D8 P/ @' y其它的MISO MOSI SCK就不用说了    o# U" u6 ]( o0 _/ s3 r) t
( v; K+ \  A4 D$ n6 K. |
VS1003的  
4 V9 O1 R/ r$ X8 K+ `- |* S! UXCS接    PB0  
' \# D( |. t7 }6 IXRESET接 PB1    T: J: s$ q4 E0 Q8 k
DREQ接   PB2  
0 B+ a$ e: R& R* w4 R6 s" T4 YXDCS接   PB3  
$ N! r: o, H) r' e  b8 @$ m3 h/ ^6 @其它几根SPI数据线按标准接  . |0 Q) b2 J1 k) H3 _4 t
* d0 D- l2 B/ H( F: q: M2 W7 q
PLAY/STOP键接 PD5  
( z3 c/ J: F. T" SPREV键接      PD4  
' ^" g9 F8 z6 i+ q4 cNEXT键接      PD3  
5 `& J% p! F5 b; D/ xV-   接       PD2  7 u* t) @  [$ F" `7 b# L
V+   接       PD6   8 h( h- H( D+ O' C4 M
6 }1 I! _- ?, ^
如须更改可在程序中修改  5 G% X- ^3 t% v

! J# C: `5 G+ wVS1003的电源是这样接的,3.3V接IO电源,模拟电源用3.3串接一个1N4007,核电源在1N4007后接一个快恢复管1N5819。其它的按VS1003手册给的接法就行了。  2 S" o$ H9 D) P4 l4 ^- ^
2 o$ m6 d' d8 l) M8 x. v: ^
如果要手工在通用板上焊VS1003的话,建议先给VS1003各个脚上好锡,然后焊好四周的8个脚用作固定,可以用电阻引脚之类的东西。然后用 细的漆包线,可以从小变压器上拆,把头上的漆用刀子刮掉上上锡。接着用普通的烙铁,记住烙铁不能沾锡,仔细焊上然后把线引到附近固定后接到你要的地方就行 了。 + W9 g2 w, u, X# U$ \

8 N0 o( k5 }6 I6 |& n2 }VS1003有很多电源脚内部是连在一起的,如果想偷懒的话可以只焊一根,或者只焊重要的脚就可以了,我上面做的mp3就是这样做的,工作没问题。不然48个脚要我焊焊上一天呢。  ) i  g; p9 X7 N# {

" X' ^. J! o( X( Q: [) m7 [" ^9 h: L( O" [9 u: V
4 U+ Z) ^1 G7 d" H( S
北京小王儿 回答时间:2009-5-19 09:53:24

发布一个带完整歌词显示的mp3(基于本站的mp3板)_个人业余玩AVR暂告一段落

以前说过要写个带歌词显示的mp3,但是一直没有时间。前一阵子抽4个晚上写出来了,后来又陆续做了改进,现在正式出炉了!
6 h- k9 r6 A% _/ c& H0 C
* E" W+ V3 ?5 Z1 |- e/ H1 d硬件环境:
. x+ e8 C  R0 H    是网站的mp3板,还是去年卖的缺陷板,当时是这个板第一次做板,但是有点小错误。当时我仔细看了看问题不大就购了一块。虽然贴了个标签说不可以用作mp3用途,但是我还是做了。 * Q, |5 x4 j9 X; Z9 I; v$ Q+ K
    这个板的问题就是ch375的接线搞成5v版本的了,还有ch375的晶振离芯片太远,并且离数据线太近,这会导致ch375工作不稳 定。后来我通过改变晶振端的电容来稳定起工作。还有就是AVCC没有接VCC,还有个小毛病是232的RXD中少串了个电阻,直接接会导致无法isp下 载。
2 A2 E$ O2 B- T; Y
8 U% |  _, n9 _5 z: \! l" r- D    板子回来东西也是过了很久一个一个焊上去的,3310是从ppa2001那转让来的(在此表示感谢,他顺便还送了我很多PCB板)。最近从armok这里弄了些零件才算弄完整了。
! q+ A( r, z3 u2 @9 h0 S' O+ X: i0 a$ o2 n- A7 c1 I
软件平台: ( {# J6 ^. f: A& [
    AVRSTudio4.13 + WinAVR20070525 ' l' C6 A& A2 W# g3 @
5 \8 |& A; c8 j% o' Q" \4 b! L
    到了公司用起了source insight才觉得AVRSTudio的编辑器太滥了,所以我是用source insight编辑代码,直接命令行敲命令make,用avrdude + jtagice下载代码 2 G1 K, Q4 Y; ^- E9 L& s- s& U

2 F6 q$ b* B' s% n( [8 Y% X
/ G) n. X7 K) W功能描述:
& X6 y- R5 U$ n/ f  X3 F! i    程序包含两部分bootloader+application
; g0 k4 {# V; v) O7 ^: T
8 P7 D  s4 P6 j6 v) e    bootloader是前一阵子在坛子里搜到的stk500的bootloader,我对它作了修改,以和我的程序匹配。 ; `* a7 \1 f+ R( V
     ) G, X8 ?2 a3 `2 b3 e9 q( E
    bootloader需要配置成2Kbytes的,可以复位按住start/puse,或者在主程序中按VOL+建,另外复位后10秒如果没有操作则自动进入bootloader
9 n& C0 G' I0 B1 E9 Y; e8 @
0 \5 Z% I3 w4 x1 u8 ^$ }0 Z6 T
, z% Q) e  H3 I    application部分完成的就是mp3的播放功能:
) P% ~" @7 v4 n    
+ l' J1 T- C# j. I4 h    5个按键,功能上我只对start/pause作了修改,这个按键是用作模式选择的,可以选择单曲重复,全曲重复,随几播放(shuffle)
  e7 n" {. y7 B! @# `    mp3文件可以存放在任意目录,但是总的文件夹数目受到限制(目前代码限制136个)。也可以采用以前的惯用方法,把文件放在特定目录下,这个需要修改程序fat.h文件中的一个宏定义FIX_DIRECTORY。
1 }; A7 @; `3 s: N/ ~$ a    歌词文件可以存放在歌曲所在的目录和一个默认目录下,代码中是\\lrc 即根目录下的lrc文件夹下。
+ Z) V" g, e$ V8 b
; h- G/ n0 c8 S. |2 e# f( Y% k4 @3 H    程序对歌词提供了完整的支持,支持标准的lrc文件规范。[XX:XX]&[XX:XX.XXX],可以多个时间tag共用一句歌词。 % H' x; Y" a1 c9 j0 t
程序处理歌词的方法是,根据mp3文件的文件名(短/或长文件名)去寻找lrc后缀的文件。注意:文件名采用前段匹配的方式,即只要歌词文件前面 的和音乐文件匹配即可。如:细说往事.mp3 和 细说往事-南方二重唱.lrc是可以对应起来的。另外对于文件名中的大小写是区分的,如 may it be.mp3 和May it be.lrc是对应不起来的。
! q4 @* {9 N6 W0 p9 p, N+ T: d( |9 a3 R
    找到歌词文件后程序会对其解析,然后对所有数据进行排序。将结果存到ram或eeprom中。程序中使用静态单向链表来描述各个时间 tag,真正的歌词数据则放到一个数组里。目前这数组在内部ram中试640字节,eeprom中有1500字节。程序优先使用ram如果ram放步下则 会存到eeprom中。eeprom剩下的空间用于存放文件夹的信息,用于支持文件的任意存放。 ' M2 H* J  h- |; o' }$ g
6 A- I; _3 g* \. N0 z* |, B
    由于部分歌词会存放到eeprom中,eeprom的操作很慢,所以歌词推荐那种使用多个tag公用一个歌词的形式,[xx:xx][yy:yy]XXXX  。当然不是这种也支持了。像这种歌词: . X+ V4 z! E: }

9 O, Y) x  Q4 v" d2 s1 [' r[ti: Bohemian Rhapsody (Mercury)] 5 L' m6 y8 ~! R2 R' @
[arueen]   D5 O1 F' j- o7 j
[al:A Night At The Opera (c)1975]
$ ?$ k( e; Z  h/ G3 T, L6 p( t. [2 m, j' d
[00:01]Is this the real life
1 x) p+ s0 A# |; A9 t+ v' _/ |$ R* A[00:04]Is this just fantasy % `" c* W2 Q) e  P, K8 o9 u
[00:07]Caught in a landslide
- \4 A0 |) v; n! w% g1 b6 e[00:10]No escape from reality 6 c8 h4 y+ E! K& c" N1 \9 ?3 q/ p
[00:15]Open your eyes ' @, W# W9 }5 B% I4 L2 W) l: p5 w- E
[00:18]Look up to the skies and see " m0 @9 e3 ]+ F6 v; b
[00:25]I'm just a poor boy, I need no sympathy
" {2 p3 n4 T$ {[00:31]Because I'm easy come, easy go,
6 O. G2 Z5 F. M+ M7 r5 j/ |[00:35]little high, little low, 6 Z/ q5 _- f7 @* [0 v
[00:38]Anyway the wind blows, doesn't really matter to me,   Z: Z( e2 U3 H* E* g/ C
[00:48]- to me -,
  e  x1 V) o% l5 b; @/ T
) @1 U% d" V. v; q7 `[00:55]Mama, just killed a man, . n9 I8 G& q) ~3 s% T& c" v- V
[01:01]Put a gun against his head, * P3 E& `8 [& W  Q8 }
[01:05]Pulled my trigger, now he's dead, & I) m! W; f) A# U7 A4 t2 ^
[01:09]Mama, life had just begun, 7 F0 V" x, `% J3 z& y5 W
[01:15]But now I've gone and thrown it all away 0 `4 H+ O4 _% `4 v$ z
[01:22]Mama, ooo,
! @5 n* P, }+ h+ |/ F: O5 x4 B5 {[01:29]Didn't mean to make you cry
& d/ v, b4 {/ i[01:32]If I'm not back again this time tomorrow
+ }6 v* X8 B9 g& L$ k# k[01:37]Carry on, carry on, as if nothing really matters
0 X/ [8 o3 a0 a0 |' f' h
( s, j) Y: U( v3 i[01:54]Too late, my time has come,
7 |. h; z) W2 j, n# C' y[02:01]Sends shivers down my spine,
, ~$ e' z1 {( k1 G% o8 s. y) H[02:04]Body's aching all the time, 7 i% i; p/ W4 E0 l
[02:08]Goodbye everybody - I've got to go
* R$ R, Q# T" j+ r6 ^/ [[02:14]Gotta leave you all behind and face the truth
9 g9 G7 ^5 I- Y( y[02:21]Mama, ooo & M+ k( _+ H6 A3 ^# t" U0 f
[02:28]I don't want to die, 6 v4 n9 W  O$ m. Q& u- h
[02:31]I sometimes wish I'd never been born at all - E5 j/ Y& X! I3 y0 b

4 y# K* B3 P2 M/ `) w% T[03:05]I see a little silhouetto of a man,
; L8 j$ m* \" f: C3 _5 U# e[03:08]Scaramouche, scaramouche will you do the Fandango & R$ N: A0 M+ N' p
[03:11]Thunderbolt and lightning - very very frightening me ) r5 l- a! p. K" l
[03:16]Galileo, Galileo,   L7 A* ?) S5 z$ `2 C! N
[03:17]Galileo, Galileo
+ ?2 m5 y6 i4 E5 h. T6 y[03:19]Galileo figaro - Magnifico . k; l) ~0 p; e) c( W- R! y
[03:22]I'm just a poor boy and nobody loves me
0 i. D$ C5 r8 P6 X[03:25]He's just a poor boy from a poor family " C$ n1 N8 l+ k! F3 |2 t& ~( l. h
[03:29]Spare him his life from this monstrosity
7 K4 R5 z6 l2 @& h6 X[03:33]Easy come easy go -, will you let me go 3 |( O- ~3 M/ M+ D/ h% c
[03:36]Bismillah! No -, we will not let you go - let him go
% ?5 z' [! c7 x! e( R' k% S5 e[03:40]Bismillah! We will not let you go - let him go 2 B. o1 M7 G% D' n
[03:43]Bismillah! We will not let you go - let me go . G7 C5 x, q! D% o. w" C! ^
[03:46]Will not let you go - let me go
) \; R: b3 P' w; b8 w[03:48]Will not let you go - let me go
6 ]5 k+ |9 g2 D3 u  q' M+ x  c[03:50]No, no, no, no, no, no, no 2 W9 Y( X/ `) L7 m
[03:53]Mama mia, mama mia, mama mia let me go
' G7 |$ {& B5 E/ f6 J# h0 {: n[03:56]Beelzebub has a devil put aside for me, for me
0 @( X  c$ D! j5 g+ W/ _/ y1 s[04:03]for me -
- m, A1 w5 \: K$ s8 a9 J+ C& Y( N7 y  t  `
[04:14]So you think you can stone me and spit in my eye
0 F6 e! u9 v; z0 P$ ]: V[04:20]So you think you can love me and leave me to die 2 k# k- g: F7 Q1 G8 f& w# |3 d
[04:25]Oh Baby - Can't do this to me baby -   u" @* t/ G) q5 C
[04:32]Just gotta get out - just gotta get right outta here # e2 @; M8 z* H2 }- k

. T0 J( Y6 ?& K5 z* _[05:10]Nothing really matters, ( O6 o, F3 z7 |! h. C& {
[05:14]Anyone can see, ( N( p1 @0 O5 ?8 T( n
[05:18]Nothing really matters -, nothing really matters to me ! L, O! c, R# U3 C5 _" E& [

& v# ]1 \9 [+ d, ^8 K0 n# R$ |4 U[05:40]Any way the wind blows... $ Z  t: C1 u$ @  M9 m- a! n; N
3 R* \# N8 E, k+ e4 S) a
这样程序至少要花10秒钟才能把多余的数据存到eeprom中
3 f; o3 A5 d6 X( M7 _
& _: v3 c! ?3 f6 _8 S$ \+ ?! H像这种: . s1 S$ h% j8 A" I6 x
[ti:细说往事]
- I, @$ L2 Z5 A$ t# T[ar:南方二重唱] 0 t; H& `+ z& q' y) G/ i* \
[al:细说往事] " S- M. `) k) [# @
[by:炫网资讯 Liuxuan.com]
( O" W  n5 I3 ^/ i2 L[00:00.00]细说往事 - 南方二重唱 9 L& H& i( i: B. V2 A' C6 k
[00:09.56]词/曲:李子恒
* E- n' Z. E$ @( O: j! |3 [[00:12.24]
5 N* j/ F. D1 X& j. H[02:55.60][00:14.89]蓝蓝的天
$ R8 i9 v0 Y+ @[02:58.17][00:17.31]往事一缕轻烟飘过你的眼廉 / N$ l  Y; p# T$ m8 G% g
[03:05.12][00:23.89]沉默的眼 0 c% \! u0 L! e+ F
[03:07.19][00:25.75]请回答我还爱不爱我的从前
, V/ O  `) s" {. I0 H& c[03:13.56][00:32.82]我的从前
+ Q( ^1 }# ~  b& L. A5 F[03:16.06][00:35.03]有你陪伴的梦和一张疼爱的脸 ' N5 b& M4 {8 R. f) @* m+ F
[03:22.80][00:41.49]如今细说往事 2 [& l6 N2 A, y1 @+ I3 ~2 [; f
[03:25.05][00:43.95]往事如烟 7 g+ ]( \# b6 G$ P2 t9 \
[03:26.61][00:45.65]我是否还算是你的誓言 . \; o6 ~5 c: X, C: s8 ^
[03:30.60][00:49.97] ) y3 S6 w$ N7 t7 T! K: Y
[04:09.91][02:04.40][00:50.93]白云翩翩
; F) ~- P: I1 |0 I  y  I[04:11.78][02:06.32][00:52.83]心事一面银幕飘过你的窗前 ( }/ t" m/ e7 x* X( _: i3 J' L% C. u8 w
[04:18.63][02:13.12][00:59.79]寂寞的窗
1 V! m: s7 z" p4 g5 H* [[04:20.53][02:15.07][01:01.45]请开启我被岁月紧锁的思念 8 ?1 W$ j3 g. ]$ L
[04:27.54][02:22.02][01:08.45]我的思念   X! m$ }1 r" K; k
[04:29.58][02:24.00][01:10.63]有你牵挂的心和一首叫做誓言
' \+ i+ F7 r* b. F# C[04:36.30][02:30.59][01:16.91]如今细说往事
% A5 E' i3 k8 G/ G( P& y9 U! Y4 V& m[04:38.48][02:32.97][01:19.50]往事如烟
5 P% M# }% w/ N& _% c( o[04:40.13][02:34.51][01:21.09]我是否还算是你的从前 # W1 l2 Q7 O' u% X( ]# G
[04:46.16][02:39.20][01:26.58]
$ |" r0 s1 h; p) u[03:34.05][01:28.01]往事从头
3 `( I* u4 W) K[03:35.59][01:30.17]轻轻细说梦的演变
+ k4 n( g$ p7 d0 i5 h2 \[03:42.30][01:36.95]多年以后 ' a  M2 V9 p& |
[03:44.56][01:39.04]是否还有爱的容颜 9 t; F) _! W% ]- c6 s
[03:51.42][01:45.93]往事从头 $ m& {7 Q1 m9 w, a
[03:53.52][01:47.97]轻轻细说沧海桑田
! M/ C6 `: s4 Q; E7 L[04:00.20][01:54.65]是否能够
# r+ j+ V- q& i# v( l8 i9 x[04:02.40][01:56.87]回到从前再走一遍
9 n8 B! h" {& F8 U6 j2 m[04:08.67][02:02.68]
2 h8 ]9 s5 q7 p2 x8 M; a( i9 R9 V+ L
$ ^+ H2 Y; h0 Q1 D# u就比较好了,用不着eeprom了。

1 I( r, E2 e- Q* I9 K" q: {程序不仅在LCD上显示信息在串口也会show一些,
6 p$ N) ?! y. I4 b5 F 1.jpg
4 B8 H8 v( r6 G) C- e' D( j) @ 2.jpg 2 q2 S$ N. |4 I" \( h8 {' t
说说字库文件:
7 q4 K" w/ U: Z6 i% A1 z9 G    总共有四个文件:st12.sys,st16.sys,gbk2uni.sys,uni2gbk。其中st12/16是12*12 和16*16点阵字库。其余两个为gbk和unicode互转的文件。
8 E4 t8 @5 o0 p; s0 |; V1 ~其中st16和gbk2uin.sys没有用到,但是我程序中没有去掉,如果想去调请在程序中改,在LCD_GBK.c文件的初始化中改。
- V, i' `3 T% a! {    字库是GBK字库,不是GB2312,所以支持很多汉字,总共两万多个,所以再生僻的都可以正常显示,如下面的繁体: - L7 B+ k* f% z4 L. P) n$ Y3 r
5 U. H+ J4 q. T5 t
[ti:失恋阵线联盟] . Z: @. d+ D3 j! J9 R+ m/ k
[ar:草蜢]
: ^* g" ~2 S$ z[al:]
4 ?$ `: b, \: p. A' a[by:ZJM]
% ]- n+ t7 ?! h9 E6 U1 h[00:00]失戀陣線聯盟 % u0 r/ Z5 X7 ?% }. r" B, X6 I
[00:10]演唱:草蜢 5 r5 ]  _) i, n8 K, d4 c4 h  ?1 m1 C6 v

9 P& M# }& H& V0 R5 D[00:14]
/ q' u% C, \. R0 v3 [[01:43][00:16]她總是只留下電話號碼
5 L- m. w4 P+ U% i6 l# o0 v% W* l" ?[01:47][00:19]從不肯讓我送她回家
. Z# c" _/ H. V+ t[01:50][00:23]聽說你也曾經愛上過她
6 A( N8 O( m) L& y; v- Y[01:54][00:26]曾經也同樣無法自拔 % {4 Q" E! n( a% z# a
[01:57][00:30]你說你學不會假裝瀟洒
" h, P, L1 K, N' O$ b[02:01][00:34]卻教我別太早放棄她
, z" N7 a% ]9 P' o9 C" V9 I[02:05][00:37]把過去全說成一段神話 ' }# v% u4 v* I0 K7 h$ K) e
[02:08][00:41]然後笑彼此一樣的傻
4 {3 f: a8 R' I/ j; u3 a3 J[02:12][00:45]我們這麼在乎她卻被她全不抹煞 9 m# f+ a+ u5 Z" W1 A
[02:16][00:48]越疼她越傷心永遠得不到回答
7 p( m: V( G& j# ?! ~; V$ m[02:19][00:52]到底她怎麼想應該繼續猜測嗎 / a) T/ A0 }! s+ v& r. O! {
[02:23][00:56]還是說好全忘了吧 0 M: T) ^) |* y# S6 K
[02:27][00:59]找一個承認失戀的方法 0 T$ ]" m' q- g9 M; j
[02:30][01:03]讓心情好好的放個假 / V, I6 W7 P6 Z7 ]$ K
[02:34][01:06]當你我不小心又想起她 , H: S+ v1 U2 ^2 \) y. Z1 p$ G
[02:45][02:41][02:37][01:10]就在記憶裡畫一個"X"  , k$ F( Z/ t* X- Q; ^
[01:14](Music)
% ]" Q; l# z0 c& O* c  ^2 l) K
1.jpg " @4 n! c$ u/ h- R1 G. D
  2.jpg
- t; `# c. }3 f" t1 ^( O 3.jpg
5 ~) k' Z7 `' m" X 4.jpg
4 k+ [/ F' a( n+ @+ l& k" I3 C  5.jpg
4 ]/ x3 A0 k2 i) ~1 w/ f& P1 q- Y 6.jpg
) m+ g, u  U+ S) M: K 7.jpg
+ f) f4 e/ O) U* e: }. q 
sfihnuia 回答时间:2009-5-19 12:48:39

RE:DIY STM32之MP3素材整理

so cool!
. P. G4 I' @% N2 h& G3 C, F想问一下,字库是存在哪里?eeprom中还是SD Card中?那几个字库得有多大?
feegle-78171 回答时间:2009-5-19 13:03:35

回复:DIY STM32之MP3素材整理

 xiexie参考一下  大家加油
萧星-96138 回答时间:2009-5-19 13:58:28

RE:DIY STM32之MP3素材整理

支持   申请加入
sfq2008-104893 回答时间:2009-5-19 15:11:09

RE:DIY STM32之MP3素材整理


+ E/ V, x# L- @9 C0 q+ p. J支持3 G3 Y' F$ N( a6 X
要是用STM32做的话建议加上USB读写SD卡功能
( i  _. r& l7 M) v* g呵呵
yank639 回答时间:2009-5-19 16:38:38

回复:DIY STM32之MP3素材整理

不错,很有用的东东
erlengzi 回答时间:2009-5-20 07:53:30

RE:DIY STM32之MP3素材整理

晕死 都是ouravr上的啊,N年的东西了。我还以为用STM32直接解码呢
aaronzhao6 回答时间:2009-5-20 15:08:16

回复:DIY STM32之MP3素材整理

支持!: I2 `6 R& H( v7 X( N
既然有素材,那DIY MP3的实质性工作什么时候开始?
njust_wyh 回答时间:2009-5-20 22:16:02

回复:DIY STM32之MP3素材整理

DIY活动啥时候开始啊?
xiaohui123-1416 回答时间:2009-10-14 09:53:24

RE:DIY STM32之MP3素材整理

怎么没有消息了?我也想加入。。。。。。
whyaiwhy 回答时间:2009-10-18 11:01:08

回复:DIY STM32之MP3素材整理

hao hao hao
12下一页

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版