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

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原理图, Z/ }3 R% ]$ n
1.jpg
北京小王儿 回答时间:2009-5-19 09:43:30

回复:DIY STM32之MP3素材整理

1.jpg
( x; Y, X& B, y% B于成功了!经过两个多月的业余时间的努力,我自己制作的MP3 ( y9 H( D7 H  g& ?

, l* N- y8 c* F( n; g随身听终于完成了。a方案是tmega8+vs1011,典型的单片机+解码芯片
, l; c. D9 W4 i4 z
2 t+ p1 t# L& N9 e2 C' s. n由于自己有一个256MB的SD卡,所以我的 3 K  W% u' K$ |  i+ i* T
4 Q. O  O$ j& r! `
MP3是插SD卡的,这样省了不少成本,反正我的数码相机又不
. b* M& b# v: S6 l2 i& q7 d
0 M: j2 L9 h! p5 m' F) m+ K是经常使用,闲着也是闲着。大概成本算下来,自己做这样一个M
. @4 P  \+ D  H' G0 k" \4 T' a7 E
; c5 Z, W6 {: p0 T; |( kP3大概才要120左右,不过最大的乐趣还是来自DIY的乐趣^-^ # U9 w5 }3 l/ N  t
8 }9 J9 ]' y2 C5 C& N
采用的方案是单片机+DSP解码芯片,音质非常好,绝对比普通的MP3 ( Y, G3 |" D, k3 g

4 K* s  J7 n. T1 ?" R要好。
北京小王儿 回答时间:2009-5-19 09:47:13

mega8 mp3 player

今天晚上我在我做的mp3上试验了播放wma音乐。 : u1 p3 P$ c  q
vs1003手册上说可以解码吗mp3 wma和midi格式的音乐。 " h$ j! u; b" O3 R) T
试验发现播放wma音乐可以像播放mp3那样播放,只要把wma文件数据送给vs1003就可直接播放。 ! |1 G4 o3 {: V' @' O0 v$ F

% K# T+ w6 R" }) m刚开始在从正在播放的wma音乐转入下一首音乐会出现不能播放的问题。 8 ^) T1 R5 p/ S# I$ y7 W- c
wma格式不像mp3格式那样容易播放,因此不能播放的原因是其不能正确结束当前播放的数据帧。
! W+ j, q  v  d1 D; O后来查datasheet发现可以通过设置SCI_MODE的SM_OUTOFWAV位来结束wma的播放。
$ C0 H5 A" X1 h. w- K! Y! n. c4 m: `/ a& O" e& n
由于我的程序没有判断当前播放的音乐是什么类型音乐的程序。所以我有找了个变通的方法,
: D% u5 `! z) P5 W  Q& t; u5 Y' Z就是复位。
2 F2 R/ b1 }$ `' i
- \& F6 o* M5 V* z我用的是软件复位,通过设置SCI_MODE的SM_RESET位来实现。 - L, X, u2 l; }" g- Z
即在播放每一首歌前复位一下vs1003就可解决wma歌曲的切换。
, |- G( }& x0 m$ _7 z& O# Y按手册上的要求复位前最好向VS1003填充2048个0 且这些数据要根据DREQ引脚的请求送给芯片。 9 S# N  {: {& q% r
另外复位后还要延时约1.35ms芯片才能恢复到先前的工作频率。 + T: z( y2 P; \5 X
接下来就可以发送你的mp3或wma数据了。 $ u& M: O3 A( e# x# w
9 n2 c5 l# R5 D1 J4 l
不过这种方法只能整首的播放wma音乐,不能快进。如要快进VLSI网站上有示例代码。 % E7 _6 h3 w2 _3 l- M) p5 d1 C

- Z0 G8 f( `2 V( I5 F3 K8 \现在我的mp3可以播放mp3和wma两种格式的音乐了,至于midi有空再研究。 , F5 D7 K- g3 _: g+ Y( A
& G& D$ \" [* w( }* {+ ^( x1 ^
不知阿永第三版的mp3板是否支持wma,如果没有可以考虑把它加上去,不复杂的,只要按我上面的方法就可。
) o, l5 i. R- Y
今天早上我又把vs1003的midi功能做出来了。  4 ]% s$ ^+ Z" `7 U
7 d, Y0 S" W6 ~0 e  O
不过在播放midi之前要把SMF1格式的midi转成SMF0格式的midi文件。  
6 ?/ }/ {% c, i* x& R; b# t6 |在应用手册上的网址http://www.gnmidi.com/下载转换程序GN1:0转换。  
5 w# n3 ^, x+ m) ]9 m& x# C将转换后的文件拷到sd卡中按播放mp3及wma的方式播放即可。  5 X5 O6 I1 i, x: x% N" V

% C. }+ q( m  [6 Q, E; K但要注意在从正在播放的midi曲子跳出来,在复位前就不要填充2048个零了  ; H: s* q: A: c
如果填充了将会花很长时间才能进入下一首歌的播放,因为midi需要的数据量很小。  
. A5 ?  L0 c" d/ Y$ w; `* |1 Y同样如果按暂停键,你也会等一段时间让vs1003把内部已有的数据处理完。  
! I" O" C* g/ S) U% G$ Z" j
* L1 a& P* h2 K& T5 G9 S! u( K播放出来的音乐没有在电脑上播放的效果好,类似于手机上的midi音乐。  
9 J6 U0 J- A. U' E# ]' o# T
. ?8 T/ X' P3 n$ {6 ~6 Y我做的播放器的图片(在通用板上手工焊的)  

; R$ i9 ]8 t% O$ t* U 1.jpg
7 V' m4 ]8 C9 H9 ]( X8 R 2.jpg
% X( \" E) Y- a 3.jpg
3 Y2 w  l4 Y# v! ~+ X8 F4 b另外一个问题:  
4 Q6 @, {" }* \, I当midi正常播放至结束时,不能按照判断数据是否送完为标准来判断歌曲是否放完。  + v6 N& T& N( r% ~
在播放mp3和wma格式时用这种方法,由于损失的时间很短所以听不出来。  
. w4 J* {- A. z  }# a; A& `, P而在放midi时,虽然你的数据送完了,但是由于vs1003内还有2048字节的数据还没解码完。  0 a6 ^, d4 s6 c1 }1 J) H$ n3 `
所以这时跳到下一首歌必然引起一段音乐无法播放完。  * l2 ]% D$ ?8 |" b0 c
因此在送完所有数据后还要填充2048个数据,我用的是2048个零,才能恰好使midi音乐播放完,其实在播放mp3和wma时也要做同样的处理才对。  
) h3 b) a5 |. ?( @+ E
上传一下我写的程序  
9 H- D/ B9 D" f里面包含了SD卡的驱动,完整的FAT16操作程序,及VS1003的程序。  9 f7 F5 x" N' G8 ?1 S% {
整个程序花了我半个月时间。  $ T6 s4 _$ y8 M

" ?+ l; c4 ]7 Y其中SD卡驱动只包含了初始化,读一扇区,写一扇区的功能。  / g  [' @4 @+ k$ a8 W

. ~% y  ^) @' I6 pFAT16部分  ( F9 n) s( R9 E) T3 C1 C5 c
本来是针对我的毕业设计做的,现在顺便做了个mp3,所以其中有好多函数是不须要的。  
2 N! N3 F9 x6 @0 |5 I  B( Z5 r( H# h但是有需要做文件系统的可以参考一下。  6 a7 c' A% X( Q( h$ o
这部分含有,创建文件,删除文件,创建目录,删除目录,重命名,打开文件,写文件,显示目录内容等。另外为了配合mp3的操作多添加了几个函数。  
' k0 q2 T4 w9 n  V8 [& Q但是写文件部分做的不完善。不支持长文件名的创建。  4 ^% H! f+ s7 G, g6 C
3 Z# m1 Y3 |9 W% ~1 z1 P
在主程序中放置了播放mp3的操作,同时注释掉了一些关于文件系统的函数。  + f- H" ]! y/ z, Z4 Q. s& `
如果把mp3的播放函数去掉,把原来的文件系统函数加上,可以直接使用。  
4 `! v3 R0 n, E9 J3 [5 _% d2 H: Q' u1 y) A8 O3 h: G8 _
显示用串口调试工具显示,播放mp3时会显示文件名的短文件名项,初始化的时候会显示初始化信息。  - `1 i; Q- _8 d) P( U  e1 j) {
在用作fat16操作时可以像普通dos 操作一样。  
* X9 @% L1 J1 C比如显示根目录内容可以输入dir \  : X7 e! {6 S1 A0 A
具体信息可通过输入help查看帮助。  
$ \1 n  K4 p- Q# O6 A7 G! B' m+ s5 @9 }1 S% R
关于这个mp3的原理图我就不画了  3 G9 M9 ~5 O! s; O: G! J
总共几个脚我用文字描述一下。  
. H2 W# `5 l7 x" F: `" T
; G. G, i, `, E8 {SD卡的cs接m32的SS引脚  
& s; A) v- N7 V' g9 l- {2 z其它的MISO MOSI SCK就不用说了  % U) E* O5 j1 o8 o# z& H; b
% J% d4 v8 o9 J; I9 c
VS1003的  
" j- v& {: d/ `! s' N5 |5 Y; }XCS接    PB0  
. N% `+ l- U3 g% NXRESET接 PB1  
, ~1 s5 A- k  ^9 EDREQ接   PB2  2 e# c. r; ~0 h# C
XDCS接   PB3  9 p9 s& g6 f. ]$ S
其它几根SPI数据线按标准接  
+ b9 o$ j/ N9 r8 o7 s+ X8 [9 I% [3 [
PLAY/STOP键接 PD5  3 z/ A$ d  Z" ^+ z
PREV键接      PD4  * i0 ^1 I$ d8 ^0 u5 [
NEXT键接      PD3  
# Y) L& ^7 A, p0 z* r2 O  ?V-   接       PD2    \- n" E; O* n4 o, K6 X$ `9 t8 e
V+   接       PD6   
$ a) d3 v1 M8 L! o8 r/ V. p6 {. F
! i. t5 z7 Z! O, Y. m- b! E如须更改可在程序中修改  : ?. W: J) N7 _0 Z2 O% X9 T

6 j' h7 A+ }9 f! L- V. \6 O: NVS1003的电源是这样接的,3.3V接IO电源,模拟电源用3.3串接一个1N4007,核电源在1N4007后接一个快恢复管1N5819。其它的按VS1003手册给的接法就行了。  
, ]$ p" c: \' Z( \4 o3 v$ S% @- [* S, h
如果要手工在通用板上焊VS1003的话,建议先给VS1003各个脚上好锡,然后焊好四周的8个脚用作固定,可以用电阻引脚之类的东西。然后用 细的漆包线,可以从小变压器上拆,把头上的漆用刀子刮掉上上锡。接着用普通的烙铁,记住烙铁不能沾锡,仔细焊上然后把线引到附近固定后接到你要的地方就行 了。 5 e! w8 D) w3 [) {/ T1 U, ?# R

% A# E# Y$ r6 Z& ?* I  YVS1003有很多电源脚内部是连在一起的,如果想偷懒的话可以只焊一根,或者只焊重要的脚就可以了,我上面做的mp3就是这样做的,工作没问题。不然48个脚要我焊焊上一天呢。  
* O  a  t9 P2 t( G4 [" A' s- }7 ~8 K$ o

, P6 N, d" {8 y. [
$ g7 U/ d1 R, t9 ^0 `) K2 T; F
北京小王儿 回答时间:2009-5-19 09:53:24

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

以前说过要写个带歌词显示的mp3,但是一直没有时间。前一阵子抽4个晚上写出来了,后来又陆续做了改进,现在正式出炉了!
4 D5 o& I- r- d, _) o6 w5 x7 `6 l2 ?8 v* w- M$ n) S, j% ]9 C
硬件环境: 9 a0 x5 B3 t+ a  C4 x9 x' o7 R
    是网站的mp3板,还是去年卖的缺陷板,当时是这个板第一次做板,但是有点小错误。当时我仔细看了看问题不大就购了一块。虽然贴了个标签说不可以用作mp3用途,但是我还是做了。
! r) ?. \( T# t' [  D+ ^6 p    这个板的问题就是ch375的接线搞成5v版本的了,还有ch375的晶振离芯片太远,并且离数据线太近,这会导致ch375工作不稳 定。后来我通过改变晶振端的电容来稳定起工作。还有就是AVCC没有接VCC,还有个小毛病是232的RXD中少串了个电阻,直接接会导致无法isp下 载。
! Z9 i3 Z, J3 T1 J0 o! L! O
, A5 f6 }/ J6 C9 v1 u% s# T    板子回来东西也是过了很久一个一个焊上去的,3310是从ppa2001那转让来的(在此表示感谢,他顺便还送了我很多PCB板)。最近从armok这里弄了些零件才算弄完整了。 + _! ~7 c; d5 P
- {  C( k- L% v2 ]/ m
软件平台: 7 z, }8 w1 I( B+ D" ~
    AVRSTudio4.13 + WinAVR20070525
4 _9 H! \; ?3 g
4 K0 q) F  l' m9 x    到了公司用起了source insight才觉得AVRSTudio的编辑器太滥了,所以我是用source insight编辑代码,直接命令行敲命令make,用avrdude + jtagice下载代码
8 e9 O9 a; g3 L9 E1 s( |" p1 }, {5 D) L
. B: O& F4 l7 |  X" S  k3 X
功能描述:
2 E$ Y: M. w6 f( Q9 A    程序包含两部分bootloader+application
. w2 [8 V6 ~' {
7 r* z  d+ C; M) Q    bootloader是前一阵子在坛子里搜到的stk500的bootloader,我对它作了修改,以和我的程序匹配。 ' J( G; f, v+ m: {: {5 |2 R
     9 {- c. @2 E2 J, \% W/ T6 a. c9 m
    bootloader需要配置成2Kbytes的,可以复位按住start/puse,或者在主程序中按VOL+建,另外复位后10秒如果没有操作则自动进入bootloader * q8 B' ?$ `2 l" W, }; N

% s5 ^: r" w. u( a
3 m" N  @1 \( W4 x9 a5 L) u8 |    application部分完成的就是mp3的播放功能: , L7 J4 Y$ n* a4 \9 V4 q
    
+ g9 _* x4 T6 @; o: Z& c& j    5个按键,功能上我只对start/pause作了修改,这个按键是用作模式选择的,可以选择单曲重复,全曲重复,随几播放(shuffle)
( }! f. ?+ K: d: E7 q. b    mp3文件可以存放在任意目录,但是总的文件夹数目受到限制(目前代码限制136个)。也可以采用以前的惯用方法,把文件放在特定目录下,这个需要修改程序fat.h文件中的一个宏定义FIX_DIRECTORY。 8 J# I+ Q8 L" w) a  L! {5 y9 M4 L
    歌词文件可以存放在歌曲所在的目录和一个默认目录下,代码中是\\lrc 即根目录下的lrc文件夹下。
. f+ }' Q; H3 H; U" |5 |; b; ^) @  P2 t0 \- s' o( c/ n3 B1 S
    程序对歌词提供了完整的支持,支持标准的lrc文件规范。[XX:XX]&[XX:XX.XXX],可以多个时间tag共用一句歌词。 ; U% A0 ~4 h6 \7 x  {
程序处理歌词的方法是,根据mp3文件的文件名(短/或长文件名)去寻找lrc后缀的文件。注意:文件名采用前段匹配的方式,即只要歌词文件前面 的和音乐文件匹配即可。如:细说往事.mp3 和 细说往事-南方二重唱.lrc是可以对应起来的。另外对于文件名中的大小写是区分的,如 may it be.mp3 和May it be.lrc是对应不起来的。
' _" h( t- F$ ?% X; B
- [  t  N! g* D    找到歌词文件后程序会对其解析,然后对所有数据进行排序。将结果存到ram或eeprom中。程序中使用静态单向链表来描述各个时间 tag,真正的歌词数据则放到一个数组里。目前这数组在内部ram中试640字节,eeprom中有1500字节。程序优先使用ram如果ram放步下则 会存到eeprom中。eeprom剩下的空间用于存放文件夹的信息,用于支持文件的任意存放。 , I, [  v- C. v1 m4 ~7 u4 E

" @" K. L- x$ Y! j+ z; d' g2 o# a    由于部分歌词会存放到eeprom中,eeprom的操作很慢,所以歌词推荐那种使用多个tag公用一个歌词的形式,[xx:xx][yy:yy]XXXX  。当然不是这种也支持了。像这种歌词: # k  Z8 `7 \) C( `7 ]- ^# m/ |

/ ~4 D  G0 w8 e3 L0 N2 k/ [3 L[ti: Bohemian Rhapsody (Mercury)] 5 d5 x1 ^  H+ W7 B8 S/ S) {
[arueen] 0 s4 {6 o  K' b! M7 F) v
[al:A Night At The Opera (c)1975] 8 A; I3 `' R1 r+ C
! Q3 i, ^4 E8 C
[00:01]Is this the real life 1 R! ^$ `4 @7 ]7 b1 U7 U
[00:04]Is this just fantasy * ^. }& ~; Y3 e) j; d. h% v
[00:07]Caught in a landslide
/ g0 N/ p; X0 b' y2 o, r[00:10]No escape from reality 2 V+ R4 j: t: y: O0 r
[00:15]Open your eyes
1 G' p/ _0 N) U/ ~1 v0 a[00:18]Look up to the skies and see / B! G+ l" m# N/ k/ A/ R# A6 v
[00:25]I'm just a poor boy, I need no sympathy
" q) h( o2 H- c[00:31]Because I'm easy come, easy go, , B5 K1 V+ s+ s) m+ S, a
[00:35]little high, little low,
2 ^8 `6 T" @  h2 I[00:38]Anyway the wind blows, doesn't really matter to me,
" p) s, v. ~2 `: @0 j[00:48]- to me -,
6 J$ L5 C+ E* h* f8 p; B: P6 K0 g( I
* Q& {6 m/ D, ^6 M[00:55]Mama, just killed a man, 0 i& x0 Z$ N3 M& H
[01:01]Put a gun against his head,
) X; _/ H4 J- f2 c* G[01:05]Pulled my trigger, now he's dead,
  F! z* G+ x( J- Y# L1 o$ M[01:09]Mama, life had just begun,
/ o& y) Z% b& O/ c8 p[01:15]But now I've gone and thrown it all away
7 s  K& H9 D, N1 i& K' ?[01:22]Mama, ooo,
% t  v2 G, a3 a5 R/ h+ y, \6 k5 N1 m6 U; x[01:29]Didn't mean to make you cry , N! v; F3 T* n0 f5 n8 ~3 d
[01:32]If I'm not back again this time tomorrow
! l# _0 H, X7 U8 u# g- j, E[01:37]Carry on, carry on, as if nothing really matters 0 P1 B+ s9 [6 f8 R0 c

6 r0 Z* Z) H, ^/ c[01:54]Too late, my time has come,
! q( q, Q( Y( y4 s; x- ^[02:01]Sends shivers down my spine,   ?4 \* q* n3 k7 {3 X5 O
[02:04]Body's aching all the time, ; S5 q4 O6 i! E; _8 Y. n# S5 N
[02:08]Goodbye everybody - I've got to go
8 z; x, [: H( D( j[02:14]Gotta leave you all behind and face the truth * X! j# B) g3 o& {# }
[02:21]Mama, ooo
; J2 G+ t* \$ ]% x$ ?* ^: f0 m2 |[02:28]I don't want to die, 1 g8 M( l4 K! l% U+ {
[02:31]I sometimes wish I'd never been born at all 6 `0 I3 R  T$ F9 Q) W& R
. u6 i* h7 ]& R/ G' B' P
[03:05]I see a little silhouetto of a man,
* }% ]( C! Y  L9 }- n  }4 Q8 C[03:08]Scaramouche, scaramouche will you do the Fandango
6 X4 C9 j) B. Y  @[03:11]Thunderbolt and lightning - very very frightening me
# J* P5 ^& P6 h* t$ F[03:16]Galileo, Galileo, " v) H" b) T9 d- e
[03:17]Galileo, Galileo 3 @$ D! x9 P0 ]$ r" P  ~
[03:19]Galileo figaro - Magnifico . o- s8 ^0 C) |4 k. h9 T( i2 r7 K
[03:22]I'm just a poor boy and nobody loves me
, L* S6 _2 l4 O- z" \) v[03:25]He's just a poor boy from a poor family
+ z( T+ w% \  O8 |( K[03:29]Spare him his life from this monstrosity
, ?0 I: B# H0 A7 h' Z[03:33]Easy come easy go -, will you let me go : O4 r* Y3 q+ `  V7 K
[03:36]Bismillah! No -, we will not let you go - let him go
5 v& s5 o2 q+ M- S, k[03:40]Bismillah! We will not let you go - let him go
! R, r2 X, e. {; S2 k+ L[03:43]Bismillah! We will not let you go - let me go
3 G  W4 W- N. |" R% M[03:46]Will not let you go - let me go
$ H7 S* t& O3 K[03:48]Will not let you go - let me go
" k4 {1 d9 H& ?4 F* ?5 [8 k5 K* z- u[03:50]No, no, no, no, no, no, no
( J6 W; @! E* C0 U5 B[03:53]Mama mia, mama mia, mama mia let me go
* n; t8 z# _+ D9 H7 y, }/ {[03:56]Beelzebub has a devil put aside for me, for me $ r/ i  Y: @1 Z( J' D$ [
[04:03]for me -
7 J& ]( F( y5 Z+ ?4 e8 c# u/ \+ [9 N  w: }2 K! D4 g+ n5 `+ ~2 q. e% m
[04:14]So you think you can stone me and spit in my eye
) p6 g4 z/ w& f9 ^# P9 z2 q[04:20]So you think you can love me and leave me to die 5 r  G  K: @1 g
[04:25]Oh Baby - Can't do this to me baby - 1 W8 a2 g. n  P5 y7 D& L; |( \8 I
[04:32]Just gotta get out - just gotta get right outta here 4 }- K) V" C( r9 C% n% a

5 m% ]! {& N1 }3 Q[05:10]Nothing really matters, ' _! |4 {  C/ c9 s& ^1 r
[05:14]Anyone can see, & H. h& o  `' C0 H( y  J3 l
[05:18]Nothing really matters -, nothing really matters to me
8 T$ Z" p& I  e4 v2 \) C( _6 g% e3 F0 g- s6 [# k& X
[05:40]Any way the wind blows... 6 b/ q7 e5 E6 v2 r& D# S4 g/ a" {

+ ~! M% q7 Q, K- z: J$ N这样程序至少要花10秒钟才能把多余的数据存到eeprom中
" y9 H+ ?' \+ u( k+ n9 J. n' F
/ A5 E) T3 m6 ?% R! m. n2 s& q7 u像这种:
0 \) l4 u( P; p8 F8 E' m[ti:细说往事]
  W5 X3 m3 Q9 L/ v9 [+ q* T; m[ar:南方二重唱]
/ s# c: _6 ]! O! s) h" G2 e) j[al:细说往事] 8 B6 I- O- a1 z+ b/ Q
[by:炫网资讯 Liuxuan.com] / b8 Q& r# k) V
[00:00.00]细说往事 - 南方二重唱
" D) [9 r1 o0 h% K1 V; E[00:09.56]词/曲:李子恒
5 W' O: m9 F" M7 X$ H- t* b& e' l) J[00:12.24]
; w0 o. D) T; l7 ~. V6 [1 f! y( F[02:55.60][00:14.89]蓝蓝的天
# R; {9 A1 n& t8 U1 \, K% q[02:58.17][00:17.31]往事一缕轻烟飘过你的眼廉
8 D9 D3 |. |; L( w, ?( L! G% K[03:05.12][00:23.89]沉默的眼
0 ?0 @/ r( I5 w[03:07.19][00:25.75]请回答我还爱不爱我的从前
, {; @0 [  C7 u; @2 e3 G) N[03:13.56][00:32.82]我的从前
! K# s0 G+ j) V[03:16.06][00:35.03]有你陪伴的梦和一张疼爱的脸 " c2 \- x! D9 |  A
[03:22.80][00:41.49]如今细说往事
3 x5 L' _- p& N/ D2 L5 ?, m[03:25.05][00:43.95]往事如烟
& [! L+ Y. s2 t3 O  F[03:26.61][00:45.65]我是否还算是你的誓言 * z3 b( o; A/ o" [% y& P
[03:30.60][00:49.97]
( h5 q" E  R+ }. O! b1 G[04:09.91][02:04.40][00:50.93]白云翩翩
0 X4 n! g  i" f) C8 z! E) d3 m[04:11.78][02:06.32][00:52.83]心事一面银幕飘过你的窗前
5 ]: x4 j; y/ x  o2 Q[04:18.63][02:13.12][00:59.79]寂寞的窗 & w2 ^( y% c. p  R
[04:20.53][02:15.07][01:01.45]请开启我被岁月紧锁的思念
7 ?. o; K+ f( V7 ?2 `' L[04:27.54][02:22.02][01:08.45]我的思念 # d0 e  W' ?; x+ X
[04:29.58][02:24.00][01:10.63]有你牵挂的心和一首叫做誓言 8 T3 t: \6 F  c  {& N6 d0 C1 s
[04:36.30][02:30.59][01:16.91]如今细说往事
/ I; E* a- S  H$ e5 `2 O. a[04:38.48][02:32.97][01:19.50]往事如烟 , z0 z" I0 A6 @# B/ ~) U
[04:40.13][02:34.51][01:21.09]我是否还算是你的从前
% O; L4 N7 q) [[04:46.16][02:39.20][01:26.58] 1 o" W- K* U2 c' `& @
[03:34.05][01:28.01]往事从头 ' }6 q# E) v$ E4 j9 N  W
[03:35.59][01:30.17]轻轻细说梦的演变 1 `4 k8 o! ]8 I+ `0 q
[03:42.30][01:36.95]多年以后
* B6 O; |. t% ]4 \[03:44.56][01:39.04]是否还有爱的容颜 . l" f) ~  t4 k  R
[03:51.42][01:45.93]往事从头
! d& m  R6 b5 H, r[03:53.52][01:47.97]轻轻细说沧海桑田
( {: t8 B1 C# a( y5 R( ^6 D. ][04:00.20][01:54.65]是否能够 ! x3 ?3 z& f% z- C
[04:02.40][01:56.87]回到从前再走一遍 / ]/ X5 J# A+ M) X' R% Z  g: \4 y
[04:08.67][02:02.68] % q5 G8 Z) o6 ^  n' W
, u# H$ v5 L5 @  o
就比较好了,用不着eeprom了。
" Y9 l+ T: N2 F1 @  L
程序不仅在LCD上显示信息在串口也会show一些,
; n8 r4 K# u9 N6 b: K 1.jpg
9 `' Z, h9 k* ~ 2.jpg + X/ d" ?! Y: m% C# P8 R
说说字库文件:
  n% N2 S) c$ n+ D. ?    总共有四个文件:st12.sys,st16.sys,gbk2uni.sys,uni2gbk。其中st12/16是12*12 和16*16点阵字库。其余两个为gbk和unicode互转的文件。
3 @4 B+ }% o0 ?- G; u0 z( D其中st16和gbk2uin.sys没有用到,但是我程序中没有去掉,如果想去调请在程序中改,在LCD_GBK.c文件的初始化中改。 - M/ D" T7 G1 f  v5 M
    字库是GBK字库,不是GB2312,所以支持很多汉字,总共两万多个,所以再生僻的都可以正常显示,如下面的繁体:
4 ?9 q6 P+ _# ]  `  X
5 H9 `5 P: }5 U/ N: C; \- I) g[ti:失恋阵线联盟] ; {! d1 O3 f5 v* v5 f4 G
[ar:草蜢]   @! n" g$ D# s4 J$ ]% v7 Y
[al:]
+ N6 u. R- I8 n& w6 Q[by:ZJM] 0 k5 N+ s3 Z0 S2 ?4 J  n, `. q1 ?
[00:00]失戀陣線聯盟
' W/ \/ L7 A% A$ i[00:10]演唱:草蜢 ; L7 q/ X: V- l" H$ f; k* n
; G, \6 f- Y4 b5 i
[00:14] 4 e/ g/ T* h( {4 q
[01:43][00:16]她總是只留下電話號碼 + R5 U& q3 q2 k7 x& ~
[01:47][00:19]從不肯讓我送她回家 2 {8 Y6 `) S2 x8 B: p% g
[01:50][00:23]聽說你也曾經愛上過她
) ~; x* }% q3 s* L2 E" i[01:54][00:26]曾經也同樣無法自拔 ) ^8 m7 l- ?, H, ?' D
[01:57][00:30]你說你學不會假裝瀟洒
# c8 G7 Y/ o6 F& r, Z0 w) j: A[02:01][00:34]卻教我別太早放棄她
8 y/ D' ~, w: g% F9 ]5 K( P( p[02:05][00:37]把過去全說成一段神話 $ l1 \7 H, i/ P' o
[02:08][00:41]然後笑彼此一樣的傻
- ~0 f; V* j  W* E) n[02:12][00:45]我們這麼在乎她卻被她全不抹煞 1 [- z/ M' d- T5 o0 M3 F% l
[02:16][00:48]越疼她越傷心永遠得不到回答
# n1 `3 h) r% L$ w& K1 L2 c[02:19][00:52]到底她怎麼想應該繼續猜測嗎
  q3 ]9 C  U8 }0 j5 ?0 `[02:23][00:56]還是說好全忘了吧
9 g3 Z( _3 e' e. O[02:27][00:59]找一個承認失戀的方法 : V. C$ S( i7 D% c
[02:30][01:03]讓心情好好的放個假
4 y$ U4 A6 m6 x[02:34][01:06]當你我不小心又想起她 + ^; `# M+ W  ]- l0 a) H
[02:45][02:41][02:37][01:10]就在記憶裡畫一個"X"  ' Q7 |9 s! X. g# {
[01:14](Music)
$ {. n$ _' N4 F$ g, E) ?7 ^
1.jpg 8 M4 l9 w' ~, M% L
  2.jpg 5 U/ K' N6 ?# j6 b( q! \6 b
3.jpg
; F" _$ f/ U+ l% F' b$ y 4.jpg 6 O5 q0 v" [& f8 y9 _, V
  5.jpg , P, V; R2 X; z1 a+ D
6.jpg ( L8 B3 B: ^8 O( G6 ~
7.jpg 1 Z* f' x( _+ Y; m/ q: r" z
 
sfihnuia 回答时间:2009-5-19 12:48:39

RE:DIY STM32之MP3素材整理

so cool!
! d7 d9 l# K/ O: O  c2 M想问一下,字库是存在哪里?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素材整理

1 \# p$ T7 d# ?1 y: K5 s% f
支持! Z6 [8 l) ?- g/ t# R' B4 ]
要是用STM32做的话建议加上USB读写SD卡功能
" B1 j9 Y3 I* X  X7 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素材整理

支持!
1 L4 s) L7 C% ~: I! ]  m既然有素材,那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管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版