Download

BU94601KV
2012/04/03
Application Note Rev.1.2.0
BU94601KV Application Note
Rev.1.2.0
ROHM Audio Processing Team
-1/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
目次
Ⅰ. はじめに .................................................................................................... 5
Ⅱ.内部ブロックダイアグラム............................................................................ 6
Ⅲ.端子配置.................................................................................................... 7
Ⅲ.1 端子配置図.............................................................................................................................................................. 7
Ⅳ.接続ダイアグラム ....................................................................................... 7
Ⅳ.1 MODE1 ................................................................................................................................................................... 7
Ⅳ.2 MODE2 ................................................................................................................................................................... 7
Ⅳ.3 MODE3 ................................................................................................................................................................... 7
Ⅳ.4 発振回路 ................................................................................................................................................................. 9
Ⅴ.シーケンス制御 ........................................................................................ 13
Ⅴ.1 MODE1 ................................................................................................................................................................. 13
Ⅴ.1.1 パワーオンシーケンス .................................................................................................................................. 13
Ⅴ.1.2 状態遷移図.................................................................................................................................................. 14
Ⅴ.2 MODE2 ................................................................................................................................................................. 16
Ⅴ.2.1 MODE2 全体シーケンス .............................................................................................................................. 16
Ⅴ.2.2 パワーオンシーケンス .................................................................................................................................. 17
Ⅴ.2.3 メモリ認識 .................................................................................................................................................... 17
Ⅴ.2.3.1 メモリ認識動作フロー ............................................................................................................................. 17
Ⅴ.2.3.2 メモリ認識開始 ...................................................................................................................................... 17
Ⅴ.2.3.3 メモリ挿入状態検出 ............................................................................................................................... 17
Ⅴ.2.3.4 USB メモリマウント ................................................................................................................................ 18
Ⅴ.2.3.5 USB メモリ再生可能ファイル検索 ........................................................................................................... 18
Ⅴ.2.3.6 SD メモリマウント................................................................................................................................... 18
Ⅴ.2.3.7 SD メモリ再生可能ファイル検索 ............................................................................................................. 18
Ⅴ.2.3.8 メモリ認識終了 ...................................................................................................................................... 18
Ⅴ.2.3.9 メモリ認識動作ステータス ...................................................................................................................... 19
Ⅴ.2.4 USB メモリ LUN 選択 ................................................................................................................................... 20
Ⅴ.2.4.1 マウントする LUN の指定 ....................................................................................................................... 20
Ⅴ.2.4.2 LUN 指定の読み出し ............................................................................................................................. 20
Ⅴ.2.4.3 接続された USB メモリが有している LUN 総数の読み出し ...................................................................... 20
Ⅴ.2.4.4 指定 LUN のリセット .............................................................................................................................. 20
Ⅴ.2.4.5 LUN 切り替え再生までのフロー ............................................................................................................. 21
-2/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.4.6 LUN 切り替えにおいての注意事項......................................................................................................... 21
Ⅴ.2.5 初期設定 ..................................................................................................................................................... 22
Ⅴ.2.5.1 TOC 解析 ............................................................................................................................................. 23
Ⅴ.2.5.2 ボリューム設定 ...................................................................................................................................... 24
Ⅴ.2.5.3 オーディオ出力設定 ............................................................................................................................... 24
Ⅴ.2.5.4 ID3Tag 読み込み設定 ........................................................................................................................... 24
Ⅴ.2.5.5 12MHz クロック出力設定 ....................................................................................................................... 24
Ⅴ.2.6 操作コマンド待ち受け・受信 .......................................................................................................................... 25
Ⅴ.2.7 再生開始 ..................................................................................................................................................... 27
Ⅴ.2.7.1 「PLAY」コマンド送信.............................................................................................................................. 27
Ⅴ.2.8 ステータス読み出し、操作コマンド待ち受け・受信 .......................................................................................... 27
Ⅴ.2.9 曲中レジューム再生方法 .............................................................................................................................. 28
Ⅴ.2.9.1 レジューム用データ取得 ........................................................................................................................ 28
Ⅴ.2.9.2 パワーオンシーケンス、メモリ認識 .......................................................................................................... 30
Ⅴ.2.9.3 メモリデバイスチェック ............................................................................................................................ 30
Ⅴ.2.9.4 TOC、初期設定 ..................................................................................................................................... 30
Ⅴ.2.9.5 レジューム再生用初期設定 .................................................................................................................... 30
Ⅴ.2.9.6 「SET_RESUME_INFO」コマンド送信、レジューム再生開始 ................................................................... 30
Ⅴ.2.9.7 フォルダ名、ファイル名、ID3Tag 情報取得 .............................................................................................. 31
Ⅴ.2.9.8 REPEAT、RANDOM 設定..................................................................................................................... 31
Ⅴ.2.9.9 操作コマンド待ち受け ............................................................................................................................ 31
Ⅴ.2.9.10 曲頭 RESUME_STOP を行う場合の動作について .................................................................................. 32
Ⅴ.2.10 早送り再生、巻き戻し再生 .......................................................................................................................... 34
Ⅴ.2.10.1 再生速度設定 ..................................................................................................................................... 34
Ⅴ.2.10.2 アッテネーションレベル設定 ................................................................................................................. 35
Ⅴ.2.10.3 早送り(巻き戻し)再生開始 .................................................................................................................. 35
Ⅴ.2.10.4 早送り(巻き戻し)再生終了 .................................................................................................................. 35
Ⅴ.3 MODE3 ................................................................................................................................................................. 36
Ⅴ.3.1 MODE3 全体シーケンス .............................................................................................................................. 36
Ⅴ.3.2 パワーオンシーケンス、メモリ認識 ................................................................................................................ 37
Ⅴ.3.3 初期設定.................................................................................................................................................. 37
Ⅴ.3.4 フォルダ内情報取得 ..................................................................................................................................... 38
Ⅴ.3.4.1 解析フォルダ指定 .................................................................................................................................. 39
Ⅴ.3.4.2 フォルダ解析動作開始 ........................................................................................................................... 39
Ⅴ.3.4.3 解析情報の存在 .................................................................................................................................... 39
Ⅴ.3.4.4 フォルダ情報、ファイル情報読み出し ...................................................................................................... 39
Ⅴ.3.4.5 解析結果取得完了 ................................................................................................................................ 39
Ⅴ.3.5 再生 MP3 ファイル指定 ................................................................................................................................ 40
Ⅴ.3.6 Tag 情報取得 .............................................................................................................................................. 40
Ⅴ.3.6.1 「GET_ID3」コマンド送信........................................................................................................................ 41
-3/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.3.6.2
ID3Tag 情報取得完了 ......................................................................................................................... 41
Ⅴ.3.6.3
ID3Tag 情報読み出し .......................................................................................................................... 41
Ⅴ.3.7 再生開始 ..................................................................................................................................................... 41
Ⅴ.3.8 ステータス読み出し ...................................................................................................................................... 41
Ⅴ.4 File Read 機能...................................................................................................................................................... 43
Ⅴ.4.1 File Read 動作フロー ................................................................................................................................... 43
Ⅴ.4.1.1 停止状態............................................................................................................................................... 43
Ⅴ.5.1.2 ファイル名指定 ...................................................................................................................................... 43
Ⅴ.4.1.3 ファイルサイズ取得 ................................................................................................................................ 44
Ⅴ.4.1.4 指定ファイル存在 .................................................................................................................................. 44
Ⅴ.4.1.5 データ読み出し ...................................................................................................................................... 44
Ⅴ.4.1.6 終了処理............................................................................................................................................... 45
Ⅴ.4.1.7 リセット .................................................................................................................................................. 45
Ⅵ.改定履歴.................................................................................................. 46
-4/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅰ. はじめに
このアプリケーションノートは、通常の CD オーディオ再生セットなどに加えて、BU94601KV を使用することにより、USB メモリ、
SD メモリカードに書き込まれた MP3 データを再生するためのオーディオプレーヤを実現する方法を説明したものです。
BU94601KV は、KEY 入力機能を使用して単独で再生、曲送り等の動作が可能なスタンドアロンモード(以下 MODE1)、I2C シ
リアルインターフェースを使用して、マスターマイコンから KEY 入力と同等のコマンド送信によって動作するオートスレーブモード
(以下、MODE2)、I2C シリアルインターフェースを使用して、BU94601KV がマスターマイコンに、メモリデバイス内の MP3 ファイ
ル位置を送信し、その情報を元にマスターマイコンが、メモリデバイス内の MP3 ファイル位置を BU94601KV に直接指定し再生を
行うマニュアルスレーブモード(以下、MODE3)、以上の 3 つの動作モードを内蔵し、それぞれのオーディオシステムにあった最適
な機能を実現することが可能です。
上記機能を内蔵した BU94601KV の動作及びシステムを理解し、さらなるオーディオセット機能充実のため、このアプリケーショ
ンノートを参考にしてください。
【ご注意】
本アプリケーションノートの内容およびソフトウェアは、USB ホスト MP3 デコーダ LSI の使用例として説明しているものであり、
その内容を保証するものではありません。
また、本アプリケーションノートには上記システムの開発時に必要と思われるコマンド仕様等を記載しておりますが、詳細は、
BU94601KV データシートを御覧ください。
-5/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅱ.内部ブロックダイアグラム
BU94601KV の内部ブロックダイアグラムを図Ⅱ.1 に示します。
Work
RAM
Fixed Point
Digital Signal Processor
Program
ROM
X'TAL
16.9344MHz
USB
controller
USB
SD
controller
SD Memory
KEY controller
KEY Input
I2C I/F
Status
Registor
I2C-Bus
Coeff
ROM
SYS_PLL
Reset
Gen
USB_PLL
RESETX
3.3V
Power
supply
I2S I/F
S/PDI/F
Regulator
for
CORE power supply
I2S output
S/PDI/F
output
Audio
DAC
LINE OUT
Function
Selector
Select
Terminals
図Ⅱ.1 内部ブロックダイヤグラム
KEY からの入力は KEY Input Controller に、マスターマイコンからのコマンドは I2C I/F によって制御されます。これらはモード
切り替え端子によってどちらのブロックが有効になるかは異なります。KEY かまたは I2C によって受信したコマンドは DSP にて解
析し実行します。
-6/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅲ.端子配置
Ⅲ.1 端子配置図
50
51
52
53
54
45
44
43
42
41
40
39
38
37
36
35
LDACO
VCDACO
RDACO
DAVSS
VSS_PLL
XOUT_PLL
XIN_PLL
TEST_PLL
VDD_PLL
VOREFI
REXTI
AVSSC
LED_ERROR/
TEST9
LED_PLAY/
TEST10
34
33
USB_DP
46
USB_DM
47
DAVDD
49
48
AMUTE
BU94601KV 端子配置を図Ⅲ.1 に示します。
LED_PSD/
TEST11
LED_PUSB/
TEST12
LED_ACCESS/
LRCK/SPDIF
LED_RANDOM/
BCK
AVDDC
32
ATEST1
31
TEST8
30
TEST7
29
TEST6
28
DVDD_M2
27
TEST5/
CLKOUT12
26
TEST4
25
DVSS
24
61
TEST17
SD_DO
20
62
DVSS
SD_CON
19
63
TMODE
DVDDIO
18
64
DVDDIO
TEST3
17
1
2
3
4
5
6
7
8
9
10
11
12
KEY_COL3/
SEL_SMAN
21
KEY_COL2/A1
SD_CLK
KEY_COL1/A0
TEST16
KEY_ROW4/
SDA
60
KEY_ROW2/
BUSY
KEY_ROW3/
SCL
22
KEY_ROW1/
MCHNG
SD_DI
TEST2
TEST15
TEST1
23
SEL_UTPKT
SD_CS
SEL_APLAY
TEST14
59
SEL_VOL
58
SEL_DOUT
DVDD_M1
SEL_MP3
TEST13
57
SEL_SLAVE
56
RESETX
55
LED_REPEAT/
DATA
13
14
15
16
図Ⅲ.1 端子配置図
Ⅳ.接続ダイアグラム
各モードでの接続回路例を示します。
本LSIは、内部CORE電源(1.5V)用のレギュレータを内蔵しています。
27PINおよび 57PINのDVDDにはバイパスコンデンサーを接続してください。27PINおよび 57PINのDVDDには電源電圧を
与えないでください。
本 LSI 内の発振セル(XIN_PLL,XOUT_PLL)を用いて発振子を自励発振させる場合、ご使用となる基盤と発振子にて十分な
マージンのあるマッチングを行った上でご使用ください。
Ⅳ.1 MODE1
MODE1 での接続応用回路例を図Ⅳ.1 に示します。
Ⅳ.2 MODE2
MODE2 での接続応用回路例を図Ⅳ.2 に示します。
Ⅳ.3 MODE3
MODE3 の接続応用回路は MODE2 に準じます。ただし pin16 SEL_SMAN を GND に接続して下さい。
-7/47-
BU94601KV
Application Note Rev.1.2.0
図Ⅳ.1
図Ⅳ.2
2012/04/03
MODE1 接続応用回路例
MODE2/MODE3 接続応用回路例
Though all application circuit examples can be recommended in faith, confirm them fully before using them.
To use external devices beyond a predetermined quantity, make decision with an adequate allowance, considering differences
between the external devices and our ICs including the transient properties as well as static properties.
-8/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅳ.4 発振回路
以下に参考の発振回路および回路定数を示します。
以下に紹介する回路定数はお客様のセット基板での環境を考慮していません。従いまして、すべての回路において内容を保証す
るものではありません。お客様の実際のシステムでの最適な回路パラメータを発振器メーカーと確認してください。
回路定数などは特定の条件の下で発振器メーカーによって実行されたテストの結果です。
BU94601KV
41
40
R11
R12
XI
C8
C9
図Ⅳ.3 発振回路図
水晶振動子
メーカー
大真空
大真空
京セラ
型名
DSX840GA
DSX530GA
CX-8045G
周波数(MHz)
16.9344
16.9344
16.9344
R11(Ω)
1.0 M
1.0 M
1.0 M
R12(Ω)
100
100
220
C8(pF)
5
5
15
C9(pF)
5
5
15
負性抵抗(Ω)
-680
-680
-391
励起レベル(uW)
51
69
109
周波数偏差(ppm)
11
8
17
以下に DSX840GA(大真空)と当社評価基板による測定結果の例を示します。
水晶振動子の仕様
水晶振動子の負荷容量(CL):8.0pF
CI 値規格
:50Ω以下/Series(標準)
常温偏差
:±50ppm 以内 (at +25℃±3℃)(標準)
温度偏差
:±50ppm 以内/-40℃~+85℃ (Ref.To +25℃)(標準)
発振次数
:基本波
回路条件
-9/47-
BU94601KV
負性抵抗
2012/04/03
Application Note Rev.1.2.0
:CI 値規格の 10 倍以上が望ましい
励振レベル :300μW 以下
回路定数 :R11=1.0MΩ、R12=100Ω、C8=5pF、C9=5pF
図Ⅳ.4 発振開始波形 (発振開始時間= 0.8 msec)
発振開始時間〔msec〕
1.6
1.4
1.2
1.0
0.8
0.6
0.4
0.2
0.0
2.4
2.6
2.8
3
3.2
Vdd〔V〕
3.4
3.6
3.8
300
0
-100
-200
-300
-400
-500
-600
-700
-800
-900
-1000
250
励振レベル〔μW〕
負性抵抗〔Ω〕
図Ⅳ.5 印加電圧発振開始時間特性
200
150
100
0
2.4
2.6
2.8
3
3.2
Vdd〔V〕
3.4
3.6
2.4
3.8
図Ⅳ.6 印加電圧-負性抵抗特性
発振周波数変動〔ppm〕
50
図Ⅳ.7
50
40
30
20
10
0
-10
-20
-30
-40
-50
2.4
2.6
2.8
3
3.2
Vdd〔V〕
3.4
2.6
3.6
3.8
図Ⅳ.8 印加電圧―発振周波数偏差特性
-10/47-
2.8
3
3.2
Vdd〔V〕
3.4
印加電圧―励振レベル特性
3.6
3.8
BU94601KV
300
250
励振レベル〔μW〕
負性抵抗〔Ω〕
0
-100
-200
-300
-400
-500
-600
-700
-800
-900
-1000
200
150
100
50
0
0
50
100
150
R12〔Ω〕
200
0
250
図Ⅳ.9 制限抵抗―負性抵抗特性
発振周波数変動〔ppm〕
2012/04/03
Application Note Rev.1.2.0
50
100
150
R12〔Ω〕
200
250
図Ⅳ.10 制限抵抗―励振レベル特性
50
40
30
20
10
0
-10
-20
-30
-40
-50
0
50
100
150
R12〔Ω〕
200
250
0
-200
-400
-600
-800
-1000
-1200
-1400
-1600
-1800
-2000
300
250
Drive Level[uW]
Negative Resistance[Ohm]
図Ⅳ.11 制限抵抗―発振周波数偏差特性
150
100
50
0
0
2
4
6
C8=C9[pF]
8
10
12
0
図Ⅳ.12 外付けコンデンサー負性抵抗特性
100
80
60
40
20
0
-20
-40
-60
-80
-100
0
2
4
6
C8=C9[pF]
8
10
図Ⅳ.14 外付けコンデンサ-発振周波数偏差特性
2
4
6
C8=C9[pF]
8
10
12
図Ⅳ.13 外付けコンデンサ-励振レベル特性
負性抵抗〔Ω〕
Frequency Drift[ppm]
200
12
0
-200
-400
-600
-800
-1000
-1200
-1400
-1600
-1800
-2000
0
2
4
6
C8〔pF〕
8
10
12
図Ⅳ.15 外付けコンデンサ-負性抵抗特性(C9=5pF)
-11/47-
BU94601KV
300
発振周波数変動〔ppm〕
励振レベル〔μW〕
250
200
150
100
50
0
0
2
4
6
C8〔pF〕
8
10
0
2
4
6
C8〔pF〕
8
10
12
図Ⅳ.17 外付けコンデンサ-発振周波数偏差特性(C9=5pF)
0
-200
-400
-600
-800
-1000
-1200
-1400
-1600
-1800
-2000
300
250
励振レベル〔μW〕
負性抵抗〔Ω〕
100
80
60
40
20
0
-20
-40
-60
-80
-100
12
図Ⅳ.16 外付けコンデンサ-励振レベル特性(C9=5pF)
200
150
100
50
0
0
2
4
6
C9〔pF〕
8
10
12
0
図Ⅳ.18 外付けコンデンサ-負性抵抗特性(C8=5pF)
発振周波数変動〔ppm〕
2012/04/03
Application Note Rev.1.2.0
2
4
6
C9〔pF〕
2
4
6
C9〔pF〕
8
10
10
12
図Ⅳ.19 外付けコンデンサ-励振レベル特性(C8=5pF)
100
80
60
40
20
0
-20
-40
-60
-80
-100
0
8
12
図Ⅳ.20 外付けコンデンサ-発振周波数偏差特性(C8=5pF)
発振開始時間は電源電圧印加直後より、発振振幅が 90%に達するまでの時間です。
グラフの負性抵抗は、常温時での測定結果です。負性抵抗は温度を変化させて確認しています。
発振周波数偏差は、水晶振動子の負荷容量(CL)が 8.0pF の時の周波数を基準としています。
発振周波数偏差に水晶振動子の常温偏差、及び温度偏差は含まれていません。
問い合わせ先:(株)大真空
http://www.kds.info/
-12/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.シーケンス制御
この章では、BU94601KV を利用する際のシーケンス制御技術の一例を挙げます。詳細は各アプリケーションにおいて異な
ります。したがって、本章に記述されたシーケンスが最も有効な方法とは限りません。また、完璧な動作を保証するものでないこと
をご留意ください。
Ⅴ.1 MODE1
MODE1 は本 LSI の KEY 入力機能を使用して単独で再生、曲送り等の動作が可能なスタンドアロンモードです。
Ⅴ.1.1 パワーオンシーケンス
(1)POWER ON
(1) POWER ON
電源を投入してください。
(2)PLL発振が安定するまで待機
(2) PLL 発振安定待機
XIN_PLL にクロックを入力し、内部 PLL の発振が安定するまで待機
してください。
(3)システムリセット
(4)内部リセットが解除されるまで
待機
(3) システムリセット
RESETX 入力を 5us 以上 L 入力したあと、H 入力します。
(4) 内部リセット解除待機
システムリセット解除後、内部リセットが解除されるまで 20ms 以上
待機してください。
(5)動作開始
(5) 動作開始
図Ⅴ.1.1 パワーオンシーケンス
-13/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅴ.1.2 状態遷移図
動作開始状態からの状態遷移図を示します。
パワーオンシーケンス
1
メモリデバイス認識
2
19
メモリサーチ
17
3
8
10
9
停止
11
18
エラー
4
12
7
20
再生
15
5
13
6
一時停止
デバイス切替
16
14
図Ⅴ.1.2 MODE1 状態遷移図
1.パワーオンシーケンス終了後、メモリデバイス(USB メモリ、SD メモリカード)が挿入されている場合、メモリデバイス認識動作を
自動的に始めます。
2.メモリデバイス認識動作を行い、現在選択されているメモリデバイスに対し、メモリデバイスが本 LSI に対応するものであれば、
自動的にメモリ内ファイルサーチを行います。
3.メモリデバイス内をサーチし、再生可能ファイルを検索します。再生可能ファイルが存在し、「SEL_APLAY」端子に H が入力さ
れていると停止状態となります。又は、「STOP」KEY によりサーチ動作を中断し停止状態となります。
4.停止状態から「PLAY/PAUSE」KEY 入力によりメモリデバイス内のソート順先頭ファイルを再生します。
5.再生状態から「PLAY/PAUSE」KEY 入力により一時停止状態となります。
6.一時停止状態から「PLAY/PAUSE」KEY 入力により再生状態となります。
7.再生状態から「STOP」KEY 入力により停止状態となります。
8.停止状態から選択しているメモリデバイスが取り外された時、エラー状態となります。
9.再生状態から再生ファイル選択 KEY 入力により各 KEY 動作に応じたファイルサーチを行う。
10.一時停止状態から再生ファイル選択 KEY 入力により各 KEY 動作に応じたファイルサーチを行う。
11.メモリデバイス認識時以外において、メモリ内ファイルサーチが完了した時、自動的にサーチしたファイルを再生します。
メモリデバイス認識時は「SEL_APLY」端子に L が入力されているときのみ自動的にサーチしたファイルを再生します。
12.停止状態から現在選択されているメモリデバイスについて、もう一方のメモリが存在したとき、「CHNG_DEV」KEY 入力によ
りもう一方のメモリデバイスに切り替えます。
13.再生状態から現在選択されているメモリデバイスについて、もう一方のメモリが存在したとき、「CHNG_DEV」KEY 入力によ
りもう一方のメモリデバイスに切り替えます。
14.一時停止状態から現在選択されているメモリデバイスについて、もう一方のメモリが存在したとき、「CHNG_DEV」KEY 入力
によりもう一方のメモリデバイスに切り替えます。
-14/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
15.再生状態から選択しているメモリデバイスが取り外された場合、またメモリ通信上のエラーが発生した場合、エラー状態となり
ます。
16.一時停止状態から選択しているメモリデバイスが取り外されたとき、エラー状態となります。
17.メモリデバイス内サーチをしている状態で再生可能ファイルが存在しない場合、またメモリデバイスとの通信エラーが最大 5
秒以上継続した場合、またデバイスが取り外された場合、エラー状態となります。
18.「CHNG_DEV」KEY 入力後、自動的にデバイス認識動作を行います。
19.メモリデバイス認識は最大 30 秒の認識動作を行い、対応不可能メモリであればエラー状態となり、サスペンド状態に入れま
す。ただし、サスペンド状態に入ると自動的にコネクト動作を開始することがある対応不可能メモリでは、コネクト検出/メモリデ
バイス認識動作/サスペンド状態を繰り返す動作となる場合があります。メモリデバイス認識は最大 30 秒の認識動作を行い、
対応不可能メモリであれば、エラー状態となります。
20.エラー状態から現在選択されているメモリデバイスについて、もう一方のメモリが存在したとき、「CHNG_DEV」KEY 入力によ
りもう一方のメモリデバイスに切り替えます。デバイスが 1 つしかない場合には「CHNG_DEV」KEY 入力は無効になります。
-15/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2 MODE2
MODE2 は内蔵している I2C インターフェースを使用してマスターマイコンから MODE1 の KEY 入力と同様のコマンド操作によ
って動作するオートスレーブモードです。
Ⅴ.2.1 MODE2 全体シーケンス
MODE2 で本 LSI を使用する場合の全体動作フロー制御例を図Ⅴ.2.1 に示します。
1. パワーオンシーケンス
2. メモリ認識
3. 初期設定
4. 操作コマンド待ち受け・受信
5. 再生開始
6. ステータス読出し
操作コマンド待ち受け・受信
図Ⅴ.2.1 MODE2 全体シーケンス
1. パワーオンシーケンス
MODE2 においてもパワーオンシーケンスは MODE1 と変わりません。
PLL 発振安定待機の後、システムリセットを 5us 以上 L 入力し、リセットを解除してください。
2. メモリ認識
パワーオンシーケンス終了後、挿入されているメモリを自動的に認識します。挿入されているメモリは USB メモリを優先的に認
識します。USB デバイスのマウント作業準備のため、USB デバイスの挿入が検出され、USB_INS=H かつ BUSY=L となった時
点で必ず「USB_MNT_READY」コマンドを送信してください。
3. 初期設定
メモリ認識を完了し、再生可能メモリが存在した時、初期設定を行ってください。初期設定には、ボリューム設定、オーディオ出力
形式設定、ID3Tag 解析設定などの設定を行ってください。
4. 操作コマンド待ち受け・受信
初期設定が完了すると、自動的にセット側の操作コマンド待ち受け状態となります。セット側の操作コマンド受信動作について
制御してください。
また、ファイル情報、ID3Tag 情報について取得してください。
-16/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
5. 再生開始
6. ステータス読出し・操作コマンド待ち受け・受信
再生がスタートされると、再生時間情報などのステータスを読み出してください。
また、セット操作コマンドの待ち受けを自動的に行います。
Ⅴ.2.2 パワーオンシーケンス
パワーオンシーケンスは MODE1 と同様に制御してください。(Ⅴ.1.1 参照)
Ⅴ.2.3 メモリ認識
Ⅴ.2.3.1 メモリ認識動作フロー
メモリ認識の動作フローを図Ⅴ.2.2 に示します。
1. メモリ認識開始
2. メモリ挿入状態検出
USBメモリが存在
メモリデバイス無し
SDメモリのみ存在
5. SDメモリマウント
3. USBメモリマウント
マウント失敗
マウント成功
マウント成功
マウント失敗
4. USBメモリ
再生可能ファイル検索
再生可能
ファイル存在
エラー状態
6. SDメモリ
再生可能ファイル検索
再生可能ファイル無し
再生可能ファイル無し
再生可能ファイル有り
7. メモリ認識終了
図Ⅴ.2.2 メモリ認識動作フロー
Ⅴ.2.3.2 メモリ認識開始
パワーオンシーケンスが正常に終了すると、自動的にメモリ認識動作を開始します。
Ⅴ.2.3.3 メモリ挿入状態検出
メモリデバイスの挿入状態のみを検出します。
メモリデバイスの挿入検出は、USB メモリ、SD メモリ両方について行います。SD メモリも存在しない場合、エラー状態となりま
す。
最初にUSBデバイスが挿入されているかを確認します。(約 3 秒間、この間SDの挿入も確認)
USBデバイスのマウント準備を行うため、USBデバイスの挿入が検出され USB_INS=H かつ BUSY=L となった時点で必ず
「USB_MNT_READY」コマンドを送信してください。
USBデバイスの挿入が確認できないと約3秒後にSDが存在すればSDメモリのマウント動作へ移行します。
-17/47-
BU94601KV
「USB_MNT_READY」コマンド
1st Byte
USB_MNT_READY
0x5D
2nd Byte
0x0B
Application Note Rev.1.2.0
3rd Byte
0x01
2012/04/03
4th Byte
0x00
Ⅴ.2.3.4 USB メモリマウント
USB メモリの挿入を検出すると、接続可能な USB メモリかどうかの認識を行います。
USB メモリ認識は最大 30 秒間の認識動作を行い 30 秒以上経過するとエラー状態となります。エラー状態になるまでの時間は
「SET_TOUT_M」コマンドによって変更可能です。
マウントに失敗すると、エラー状態となり、コマンド待ち受け状態となります。このとき、コントロルソフトウェアにより、自動的に
SD メモリへの「CHNG_DEV」コマンドを送信し、SD メモリ側の認識動作に移ることも可能です。
Ⅴ.2.3.5 USB メモリ再生可能ファイル検索
USB メモリマウントに成功すると、自動的に USB メモリ内の再生可能ファイル検索を行います。再生可能ファイルは、
「SEL_MP3」端子の設定に従います。
再生可能ファイルが存在しない場合、エラー状態となり、コマンド待ち受け状態となします。このとき、コントロールソフトウェアに
より、自動的に SD メモリへの「CHNG_DEV」コマンドを送信し、SD メモリ側の認識動作に移ることも可能です。
「CHNG_DEV」コマンド
CHNG_DEV
1st Byte
0x50
2nd Byte
0x08
Ⅴ.2.3.6 SD メモリマウント
SD メモリの挿入を検出すると、接続可能な SD メモリかどうかの認識を行います。
SD メモリ認識は USB メモリ同様、最大 30 秒間の認識動作を行い 30 秒以上経過するとエラー状態となります。エラー状態にな
るまでの時間は「SET_TOUT_M」コマンドによって変更可能です。
マウントに失敗すると、エラー状態となり、コマンド待ち受け状態となります。
Ⅴ.2.3.7 SD メモリ再生可能ファイル検索
SD メモリマウントに成功すると、自動的に SD メモリ内の再生可能ファイル検索を行います。再生可能ファイルは、「SEL_MP3」
端子の設定に従います。
再生可能ファイルが存在しない場合、エラー状態となり、コマンド待ち受け状態となします。
Ⅴ.2.3.8 メモリ認識終了
USB メモリ、SD メモリ内のどちらかに再生可能ファイルが存在するとメモリ認識動作は終了し、コマンド待ち受け状態となりま
す。このとき、コントロールソフトウェアにより「GET_VENDOR」コマンドを送信してベンダーコード及びプロダクトIDを COMAREA
に格納し、COMAREA の読み出しを行うことによりコードデータを取得することが可能です。
「GET_VENDOR」コマンド
GET_VENDOR
1st Byte
0x5F
2nd Byte
0x16
COMAREA 読み出しコマンド
1st Byte
2nd Byte
0x5E
OFFSET
0x20:ベンダーコード下位バイト
0x21:ベンダーコード上位バイト
0x22:プロダクト ID 下位バイト
READ_BUFF
OFFSET
1Byte Read
0x23:プロダクト ID 上位バイト
-18/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅴ.2.3.9 メモリ認識動作ステータス
メモリ認識動作時のステータスは、MODE2 ステータスレジスタマップ「STATUS2」によって読み出すことができます。
メモリ認識動作時のステータスタイミングチャートを図Ⅴ.2.3 に、メモリ切断時のステータスタイミングチャートを図Ⅴ.2.4 に示しま
す。
CHNG_DEVコマンド送信
USBINS
MDEVUSB
USBFILE
USBメモリ内
MP3ファイル再生
SDINS
MDEVSD
SDFILE
USBメモリ
挿入検出
USBメモリ
USB内
マウント 再生可能ファイル
検索完了
SDメモリ
挿入検出
SDメモリ
マウント
SD内
再生可能ファイル
検索完了
図Ⅴ.2.3 USB メモリ、SD メモリ挿入時のメモリ認識動作ステータスタイミングチャート
CHNG_DEV
コマンド送信
USBINS
MDEVUSB
USBFILE
SDINS
MDEVSD
SDFILE
SDメモリ
SDメモリ内
マウント 再生可能ファイル
検索完了
USBメモリ
切断検出
図Ⅴ.2.3 USB メモリ切断時ステータスタイミングチャート
-19/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.4 USB メモリ LUN 選択
本機種は、複数の LUN を有する USB メモリが接続された場合、USB メモリの LUN を選択してマウントすることが可能です。
LUN を指定しない場合(初期値)は LUN の AUTO 検出モードとなり、USB メモリ接続後に最初に検出された LUN を自動的にマ
ウントします。
Ⅴ.2.4.1 マウントする LUN の指定
「SET_LUN」コマンドを使用して LUN を指定すると、指定した LUN をマウントするようになります。すでに USB メモリが接続さ
れ、別の LUN がマウントされていた場合は、指定した LUN に再マウントします。
存在しない LUN を指定した場合は、マウント ERROR となります。
USB が抜かれた場合、もしくは「CHNG_DEV」コマンドにより SD カードを選択した場合、指定した LUN は保持されたままとな
ります。
「SET_LUN」コマンド
SET_LUN
1st Byte
0x5D
2nd Byte
0x0D
3rd Byte
指定LUN
4th Byte
0x00
Ⅴ.2.4.2 LUN 指定の読み出し
「READ_LUN」コマンドを使用することで、USB メモリが接続されている場合は、現在マウントしている LUN を読み出すことが
出来ます。
「READ_LUN」コマンド
READ_LUN
1st Byte
0x5F
2nd Byte
0x17
1Byte Read
Ⅴ.2.4.3 接続された USB メモリが有している LUN 総数の読み出し
「READ_LUN_NUM」コマンドを使用することで、接続された USB メモリが有している LUN の総数を読み出すことが出来ます。
「READ_LUN_NUM」コマンド
READ_LUN_NUM
1st Byte
0x5F
2nd Byte
0x18
1Byte Read
Ⅴ.2.4.4 指定 LUN のリセット
「RESET_LUN」コマンドを使用すると、指定した LUN をリセットし、AUTO 検出モードに戻します。USB メモリ接続後に最初に
検出された LUN を自動的にマウントするようになります。
USB メモリが抜かれた場合、指定 LUN は保持されていますので、「RESET_LUN」コマンドを送信し、指定されていた LUN をリ
セットしてください。
「RESET_LUN」コマンド
RESET_LUN
1st Byte
0x5D
2nd Byte
0x0E
-20/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.4.5 LUN 切り替え再生までのフロー
複数の LUN を有する USB 接続検出から LUN 切り替え、音楽ファイル再生までのフローを図 2.4.5 に示します。
1. USBメモリコネクト検出
USBINS = H
2.USBメモリマウント&ファイル検索作業開始
SEARCH = H
3.USBメモリマウント&ファイル検索作業終了
SEARCH = L
3・初期値はLUN AUTOモードのため、
最初に検出されたLUNがマウントされます。
4・READ_LUN_NUMコマンドを送信し、
接続されたUSBメモリのLUN総数を取得します。
4.READ_LUN_NUMコマンド送信
5・READ_LUNコマンドを送信し、
現在マウントされているLUNを取得します。
5.READ_LUNコマンド送信
6.SET_LUNコマンド送信
6・SET_LUNコマンドを送信し、
目的のLUNを指定します。
この時、内部ではUSBメモリが抜かれたことと同意になるた
め、ERROR = Hとなりますが、無視してください。
7.USBメモリマウント&ファイル検索作業開始
SEARCH = H
7・指定したLUNのマウント作業を開始します。
SEARCH = Hになるまでの時間に制限を設けてください。
制限を越えた場合はUSBメモリディスコネクトERRORとして
ください。
8.USBメモリマウント&ファイル検索作業終了
SEARCH = L
8・指定したLUNへの移行完了
9. USBメモリ再生開始
図 2.4.5 LUN 移行までのフロー
Ⅴ.2.4.6 LUN 切り替えにおいての注意事項
・USB メモリが抜かれた場合、もしくは「CHNG_DEV」コマンドにより SD カードを選択した場合、指定した LUN は保持されたま
まとなります。USB メモリが抜かれた場合は、「RESET_LUN」コマンドを送信し、指定されていた LUN をリセットしてください。
・USB メモリが接続されている時、別の LUN へ移行するために「SET_LUN」コマンドを送信すると、LUN のマウント作業が始ま
り、SERACH が H になりますが、この直前に、内部では USB メモリが抜かれたことと同意になるため、ERROR フラグが H にな
ります。この ERROR フラグは SEARCH が H になると同時に L に落ちます。「SET_LUN」コマンドによる LUN 移行時の ERROR
は無視し、SEARCH が H になるのを待ってください。「SET_LUN」コマンド送信と共に USB メモリが抜かれたことを想定して、
「SET_LUN」コマンドを送信後の SEARCH が H になるまでの時間には制限時間を設けてください。制限を越えた場合は、USB メ
モリディスコネクト ERROR としてください。
-21/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.5 初期設定
メモリ認識を完了すると、MP3 ファイルを再生する前に、TOC(Table Of Contents:メモリ内総フォルダ数、総ファイル数)の検索、
ボリュームやオーディオ出力などの初期設定を行います。初期設定の動作フローを図Ⅴ.2.5 に示します。
1.TOC、 初期設定開始
2. TOC解析
3. ボリューム設定
4. オーディオ出力設定
5. Tag読み込み設定
6. 12MHzクロック出力設定
7. TOC、 初期設定終了
図Ⅴ.2.5 初期設定の動作フロー
上記のような初期設定が必要であれば以下の項目について設定をしてください。
-22/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.5.1 TOC 解析
選択しているメモリ内の総フォルダ数、総ファイル数の検索を行います。「SEL_TOC」コマンドを送信してください。
TOC 解析が必要でなければ、省略しても構いません。TOC 解析時の動作フローを図Ⅴ.2.5.1 に示します。
1.TOC解析開始
2. 「SEL_TOC」コマンド送信
3. 「STATUS1」読み出し
4. 「SEARCH」=0
N
Y
5. TOC解析結果読み出し
6.TOC解析終了
図Ⅴ.2.5.1 TOC 解析動作フロー
SEL_TOC
1st Byte
0x57
2nd Byte
0x01
1st Byte
0x5E
2nd Byte
0x00
1Byte Read
2nd Byte
0x10
6 Byte Read
「SEL_TOC」コマンド
READ_BUFF
「STATUS1」読み出しコマンド
READ_BUFF
1st Byte
0x5E
USB メモリ選択時 TOC 解析結果読み出し
READ_BUFF
1st Byte
0x5E
2nd Byte
0x16
6 Byte Read
SD メモリ選択時 TOC 解析結果読み出し
「SEL_TOC」コマンドを送信した場合、本 LSI は選択されているメモリデバイス内の総フォルダ数、総ファイル数を検索します。
検索中は、「STATUS1:SEARCH」レジスタに出力されます。このため、「SEL_TOC」コマンド送信後に総フォルダ数、総ファイル
数を読み出す前に「STATUS:SEARCH」レジスタを読み出し、解析終了状態であることを確認してください。
TOC 解析終了後、選択しているメモリデバイスに対して解析結果を読み出してください。
「SEL_TOC」ステータスが"ON"の時、デバイスの挿抜及び「CHNG_DEV」コマンドが発生すると、最初に必ずフォルダ、ファイル
総数の取得動作を行います。また再生中でも「SEL_TOC」を"OFF"から"ON"の変化により再生を中断し、総数の取得動作を行
います。
-23/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.5.2 ボリューム設定
「SEL_VOL」端子によりボリュームが本 LSI において可変である場合、ボリュームの初期値を設定してください。
ボリュームは本 LSI では 0x00~0x31 までの 32 段階で設定可能です。「SET_VOL」コマンドの 2 バイト目に設定してください。
ボリューム設定コマンド
1st Byte
SET_VOL
0x53
2nd Byte
設定値
Ⅴ.2.5.3 オーディオ出力設定
「SEL_DOUT」端子によりディジタルオーディオ出力が選択されている場合、「SET_DOUT」コマンドにより、ディジタルオーディ
オ出力形式(I2S 出力、SPDIF 出力)の選択ができます。ディジタルオーディオ出力選択時の初期値は I2S 32fs 形式出力となりま
す。
ディジタルオーディオ出力形式選択コマンド
1st Byte
2nd Byte
SET_DOUT
0x51
0x20
3rd Byte
4th Byte
出力形式選択
「SEL_DOUT」端子によりライン出力が選択されている場合、「SET_EQ」コマンドによりライン出力にイコライザ処理をほどこす
ことができます。ディジタルオーディオ出力形式では無効です。
イコライザ出力選択コマンド
1st Byte
SET_EQ
0x52
2nd Byte
選択
Ⅴ.2.5.4 ID3Tag 読み込み設定
MP3 ファイルに付加された ID3Tag 情報解析を行うかどうかの選択を行います。
初期値は ID3Tag 情報解析を行いません。
ID3Tag 情報解析設定コマンド
SEL_ID3
1st Byte
0x56
2nd Byte
選択
Ⅴ.2.5.5 12MHz クロック出力設定
「CLK12MOUT」端子から 12MHz クロック出力を行う必要がある場合、設定してください。
初期値は 12MHz クロック出力を行いません。
12MHz クロック出力設定コマンド
1st Byte
2nd Byte
SEL_12MOUT
0x58
0x01
-24/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅴ.2.6 操作コマンド待ち受け・受信
メモリデバイスを認識し、初期設定まで完了すると、操作コマンドの待ち受け可能状態となります。
構成されたセット側からの操作入力をマスターマイコンが受信し、本 LSI にその操作コマンドを送信してください。
本 LSI では、この状態においてマスターマイコンコマンドにより以下のような様々なセット操作性を実現することができます。
①現在選択しているフォルダについてすべてのフォルダ名、ファイル名を取得、表示を行い、再生曲を明示的に選択できるよう
にする。
②選曲のみを行い、選曲した MP3 ファイルについてファイル名や ID3Tag 情報を表示し停止する、その後セットの「PLAY」コマ
ンドにより再生を開始する。
③選曲された MP3 ファイルについてファイル名や ID3Tag 情報を表示すると同時に再生を行う。
①、②は、選曲のみのコマンド(FF、FB、+10、-10 など)を用いて MP3 ファイルを走査しステータスを読み出すことによってファイ
ル名等の情報を取り出すことによって実現し、③では、選曲&PLAY コマンド(FF&PLAY、FB&PLAY、+10&PLAY、-10&PLAY な
どを用いて、再生を開始すると同時にステータスにより、ファイル情報を取り出すことによって実現できます。
これらはどの方法でも動作フローとしてはほぼ同じため、本章では、②の例に対し説明を行います。
②の場合の再生開始直前までの動作フローを図Ⅴ.2.6 に示します。
「MCHNG / ID3READY」ステータス読み出しコマンド
1. 操作コマンド待ち受け・受信中
1st Byte
0x5E
2nd Byte
0x02
1Byte Read
フォルダ名取得コマンド
READ_FOLDER 1st Byte
_NAME
0x5F
2nd Byte
0x08
最大64Byte
Read
2nd Byte
0x07
最大64Byte
Read
READ_BUFF
2. 「MCHNG」=1
N
Y
ファイル名取得コマンド
3. フォルダ名・ファイル名取得
4. 「ID3READY」=1
Y
5. ID3Tag情報取得
READ_FILE_
NAME
1st Byte
0x5F
N
ID3Tag 取得コマンド
READ_ID3_
TITLE/ ARTIST/ ALBUM
1st Byte
0x5F
2nd Byte
最大64Byte
Read
0x04/ 0x05/ 0x06
6.操作コマンド待ち受け完了
図Ⅴ.2.6 再生開始前までの動作フロー
選曲コマンドを本 LSI が受信すると、選曲コマンドに対応した MP3 ファイル検索を行います。MP3 ファイル検索を開始すると
「STATUS1:SEARCH = 1」に設定します。
MP3 ファイル検索が完了すると「STATUS3:MCHNG = 1」にします。
ステータスレジスタ「MCHNG」は本 LSI の「MCHNG」端子にそのまま出力さています。このため、「MCHNG」端子はマスターマイ
コンの割り込みポートに接続し、立ち上がりエッジにて取り込まれることを推奨します。
-25/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
参考
ID3Tag 取得時のステータスについて
本 LSI が ID3Tag 解析を行っているときのステータスタイミングチャートを下図に示します。
SEARCH
PDEVUSB
ID3解析中
MCHNG
ID3READY
メモリサーチ開始
ID3Tag解析終了
図 ID3Tag 解析タイミングチャート
図のタイミングチャートは USB メモリ選択時の停止中に FF や FB の選曲コマンド送信時の波形です。コマンド送信後、本 LSI
はメモリデバイス内サーチを行いその後、ID3Tag 解析を行います。
ID3Tag 解析終了後「MCHNG」=H となり、ID3Tag が存在する場合「ID3READY」=H、存在しない場合「ID3READY」=L となり
ます。このとき、ID3Tag 解析時間が長時間(「SEARCH」=H かつ「PDEVUSB」=H)かかる場合「ABORT」コマンドにより ID3Tag
解析を強制的に終了させることができます。ID3Tag 解析を強制終了させた場合、図のタイミングチャートにて「ID3READY」=L と
なります。
-26/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.7 再生開始
操作コマンドを受信し、選曲された MP3 ファイルのファイル名や ID3Tag 情報を取得すると再生を開始させます。
図Ⅴ.2.7 に再生開始時動作フローを示します。
1. 再生開始
2. 「 PLAY」 コマンド送信
4. 再生開始時処理終了
図Ⅴ.2.7 再生開始時動作フロー
Ⅴ.2.7.1 「PLAY」コマンド送信
再生開始状態において「PLAY」コマンドを送信します。
「PLAY」コマンド
PLAY
1st Byte
0x50
2nd Byte
0x01
Ⅴ.2.8 ステータス読み出し、操作コマンド待ち受け・受信
再生中は、再生時間情報やエラー状態についてのステータス読み出しを行ってください。再生時間情報の読み出しは、約
100ms の間隔で行ってください。
また、再生中は操作コマンドの待ち受けを行っていますが、コマンド送信前には必ず、「STATUS1:SEARCH」ステータスの読み
出しを行い、サーチ停止状態であることを確認してからコマンドを送信してください。
再生時間情報読み出しコマンド
READ_BUFF
1st Byte
0x5E
2nd Byte
0x0E
2 Byte Read
「STATUS1:SEARCH」ステータス読み出しコマンド
-27/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅴ.2.9 曲中レジューム再生方法
本 LSI で は 、 「 READ_RESUME_INFO 」 ス テ ー タ ス 読 み 出 し コ マ ン ド に よ っ て 取 得 さ れ た レ ジ ュ ー ム 情 報 を
「SET_RESUME_INFO」コマンドによって本 LSI に送信することにより、「READ_RESUME_INFO」ステータスに書き込まれた
MP3 ファイルについて自動的にメモリデバイス内を検索し、「READ_RESUME_INFO」ステータスが読み出された時間から再生
をスタートします。また、該当する時間で停止(STOP)することも可能です。
レジューム用データ取得時動作フローを図Ⅴ.2.9 に示します。
レジューム再生時の動作フローを図Ⅴ.2.9.1 に示します。
1. 再生中
2. レジューム用データ取得
3. 初期設定用データ取得
4. 再生終了処理
図Ⅴ.2.9 レジューム用データ取得時動作フロー
Ⅴ.2.9.1 レジューム用データ取得
ステータス「MDEVUSB、MDEVSD」ステータスを確認し、どちらのデバイスを選択しているかを取得します。
再生中もしくはサーチ後、レジューム用ファイルデータを取得します。
「READ_RESUME_INFO」コマンド
READ_RESUME_ 1st Byte
2nd Byte
INFO
0x5F
0x09
42 Byte Read
レジューム用ファイルデータを取得すると、次に現在のボリューム設定やオーディオ出力などの設定を読み出し、レジューム再生
時の初期設定用データを取得します。
初期設定用データ読み出しコマンド
READ_BUFF
1st Byte
0x5E
2nd Byte
0x03
6 Byte Read
初期設定用データ読み出しコマンドによって以下のステータスを取得できます。
初期設定用データ
1st Byte
2nd Byte
3rd Byte
4th Byte
5th Byte
6th Byte
リピート/
ランダム設
定
12MHz
出力設定
ボリューム
設定
EQ
設定
ディジタル
オーディオ
出力設定1
ディジタル
オーディオ
出力設定2
LUN 選択を行っている場合は、「READ_LUN」コマンドを使用して再生中ファイルの LUN を取得してください。
「READ_LUN」コマンド
READ_LUN
1st Byte
0x5F
2nd Byte
0x17
1Byte Read
各ステータス出力についての詳細はデータシートを参照してください。
-28/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
1. パワーオンシーケンス
2. メモリデバイスチェック
3. TOC、初期設定完了
4. レジューム再生用初期設定
5. 「SET_RESUME_INFO」送信
6. 「RES_ERR」=0
N
Y
7. 「MCHNG」=1
N
Y
8. レジューム再生開始
9. フォルダ名、ファイル名、
ID3Tag情報取得
10. REPEAT、RANDOM設定
11. 操作コマンド待ち受け
図Ⅴ.2.9.1 レジューム再生動作フロー
-29/47-
エラー停止
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.9.2 パワーオンシーケンス、メモリ認識
電源起動時から TOC、初期設定までの動作はレジューム再生実行時においても、通常再生と全く同様のフローにて行います。
V.2.1 から V.2.5 までを参照してください。
Ⅴ.2.9.3 メモリデバイスチェック
挿入、認識されているメモリデバイスがレジュームデータ取得時と同じか確認します。
パワーオンシーケンス後、ステータスを読み出し、デバイスが同じか確認します。
「MDEVUSB」ステータス、「MDEVSD」ステータスを確認
1st Byte
0x5E
READ_BUFF
2nd Byte
0x01
1 Byte Read
USB メモリの LUN 選択を行っている場合は、「READ_LUN」コマンドを使用して現在の LUN を取得してください。
「READ_LUN」コマンド
READ_LUN
1st Byte
0x5F
2nd Byte
0x17
1Byte Read
メモリデバイスが異なる方であれば「CHMG_DEV」コマンドを送信しデバイス切替
1st Byte
2nd Byte
CHNG_DEV
0x50
0x08
異なる LUN の場合は「SET_LUN」コマンドで LUN を選択。
「SET_LUN」コマンド
SET_LUN
1st Byte
0x5D
2nd Byte
0x0D
3rd Byte
指定LUN
4th Byte
0x00
Ⅴ.2.9.4 TOC、初期設定
TOC、初期設定動作については、通常再生と同様のフローにて行います。
Ⅴ.2.9.5 レジューム再生用初期設定
レジューム再生時は TOC、初期設定が完了した状態で、レジューム再生を行うボリューム設定、オーディオ出力形式などのレジ
ューム用初期設定を、設定してください。レジューム用初期設定は、Ⅴ.2.8.1 章で読み出したステータスを用います。
このとき、初期設定は以下の設定のみについて行い、REPEAT、RANDOM 再生設定については実行しないでください。
「SET_RESUME_INFO」コマンド送信前に設定するとレジューム動作が正常に行われない場合があります。
(1)ボリューム設定
SET_VOL
1st Byte
0x53
2nd Byte
設定値
(2)EQ 設定(オーディオ出力がライン出力選択時のみ)
1st Byte
2nd Byte
SET_EQ
0x52
選択
(3)ディジタルオーディオ出力設定(オーディオ出力がディジタルオーディオ出力選択時のみ)
1st Byte
2nd Byte
3rd Byte
4th Byte
SET_DOUT
出力形式選択
0x51
0x20
Ⅴ.2.9.6 「SET_RESUME_INFO」コマンド送信、レジューム再生開始
「 READ_RESUME_INFO 」 ス テ ー タ ス 読 み 出 し コ マ ン ド に て 取 得 し た 42Byte の レ ジ ュ ー ム 用 デ ー タ を 6 Byte ず つ
「SET_RESUME_INFO」コマンドにより送信してください。
「SET_RESUME_INFO」コマンド
-30/47-
BU94601KV
SET_RESUME
_INFOX
1st Byte
0x51
2nd Byte
0x4X
Application Note Rev.1.2.0
2012/04/03
6 Byte Write
「SET_RESUME_INFO」コマンドは 42Byte のデータを転送するため、6Byte/コマンドの合計 7 回のコマンドになります。
「SET_RESUME_INFO」コマンドを 42Byte 分送信すると、「SET_RESUME_INFO7」コマンドの送信完了後、自動的にレジュ
ーム用ファイルを検索し、再生を開始します。
「SET_RESUME_INFO7」コマンドの変わりに「SET_RESUME_INFO8」コマンドを使用すると、該当する時間で停止(STOP)
します。この場合、TAG 情報、ファイル名の取得は可能ですが、再生時間の取得は出来ません。(00 分 00 秒となる。)
「SET_RESUME_INFO」コマンドを送信すると、自動的にレジューム用ファイルを検索しますが、メモリデバイスの交換や、未
挿入になり、レジューム再生用ファイルが検索できなかった場合、「STAUS5:RES_ERR」ステータスにエラー発生を出力します。
このため、「SET_RESUME_INFO」コマンド送信時は「STATUS5:RES_ERR」ステータスを読み出し、エラーの確認を行ってくだ
さい。「SET_RESUME_INFO7」コマンドを使用した場合にエラーが発生した場合は、メモリデバイス先頭曲の再生を自動的に行
います。「SET_RESUME_INFO8」コマンドを使用した場合にエラーが発生した場合は、メモリデバイス先頭で STOP になります。
LUN 選択を使用した場合にレジュームエラーが発生した場合は、選択された LUN の先頭からの再生もしくは STOP となります。
レ ジ ュ ー ム エ ラ ー 発 生 時 に 、 デ フ ォ ル ト の LUN の 先 頭 か ら 再 生 を 開 始 ( も し く は STOP ) し た い 場 合 は 、 常 に
「SET_RESUME_INFO8」コマンドを使用することにより、レジュームエラーが発生しても、その LUN の先頭で STOP するようにし、
「RESET_LUN」コマンドを使用して LUN をリセットしてから再生を開始するようにして下さい。
レジュームエラーは以下の場合により発生します。
(1)ファイル番号、フォルダ番号の不一致
(2)フォルダ階層の不一致
(3)FAT エントリインデックスの不一致
レジューム用ファイルを検索すると、次に「STATUS3:MCHNG」ステータスまたは「MCHNG」端子に MP3 ファイル再生開始ス
テータスを出力し、本 LSI は自動的に「READ_RESUME_INFO」ステータス読み出し時間より曲中再生を開始します。
Ⅴ.2.9.7 フォルダ名、ファイル名、ID3Tag 情報取得
レジューム再生を開始すると、フォルダ名、ファイル名、ID3Tag 情報を取得してください。各情報の取得はⅤ.2.5 章を参照してく
ださい。
Ⅴ.2.9.8 REPEAT、RANDOM 設定
レジュームされる前の状態を再現するため、ボリュームやオーディオ出力についての設定はⅤ.2.8.5 章にて設定行いましたが、
REPEAT、RANDOM 再生設定についてはこの段階で設定してください。
「SET_RESUME_INFO」コマンド送信前に設定するとレジューム動作が正常に行われない場合があります。
REPEAT、RANDOM 設定コマンド
1st Byte
2nd Byte
REPRAND
0x54
選択
Ⅴ.2.9.9 操作コマンド待ち受け
この段階で、レジューム再生が既に開始されており、これ以降の動作フローについては通常の動作と同様です。
READ_BUFF
1st Byte
0x5E
2nd Byte
0x00
1 Byte Read
-31/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.9.10 曲頭 RESUME_STOP を行う場合の動作について
本機種では、停止中(各曲の先頭:再生時間 0 分 00 秒)に READ_RESUME_INFO コマンドを使用して取得した RESUME_INFO を
用いて、RESUME_STOP(SET_RESUME_INFO08 を使用)を行った場合、対象曲が MP3 の場合のみ、RESUME_STOP とならずに、
RESUME_PLAY となります。
停止中に取得した RESUME_INFO を使用して RESUME_STOP 動作を行う場合は、RESUME_INFO の内容を一部変更して設定
することにより、停止中(MP3 各曲の先頭:再生時間 0 分 00 秒)の RESUME_INFO であっても、正常に RESUME_STOP 動作を行う
ことが可能になります。
表Ⅴ.2.9.10 に RESUME_INFO の内容を示します。
Offset 値 (各 2byte)
+00
+02
+04
+06
+08
+0A
+0C
+0E
+10
+12
+14
+16
+18
+1A
+1C~+26
+28
表Ⅴ.2.9.10 RESUME_INFO データ内訳
名称
内容
DIR_LEVEL
ディレクトリ階層数
FOLDERNUM
フォルダ番号
INDEX
ファイル番号
NFILES
フォルダ内ファイル数
NDIRS
フォルダ内サブフォルダ数
CRC
CRC (ディレクトリスタックの内容で計算)
CHAIN_H
ファイル先頭クラスタ番号(32bit)
CHAIN_L
SIZE_H
ファイルサイズ(32bit)
SIZE_L
CODEC_ID
CODEC_ID (0:MP3, 1:WMA, 2:AAC)
OFFSET_H
ファイルオフセット(32bit)
OFFSET_L
TIME
再生時間 (Sec/Min[BCD])
DTIME_0~5
詳細再生時間[0..5]
MODE
使用 MODE (0:MODE2, 1:MODE3)
RESUME_INFO のオフセット値+16、+18 はファイル再生位置のオフセットを示しています。従って、この値が"0x00_00_00_00"の
場 合 は 曲 の 先 頭 で RESUME_INFO を取 得 し た こ と を 意 味 し ま す 。 し た が っ て、 こ の ま ま こ の RESUME_INFO を 使 用 し て
RESUME_STOP 動作を行うと、RESUME 開始位置は曲の先頭であるとし、RESUME_PLAY 動作を行います。ここで、ファイルオフセ
ットの値を"0x00_FF_00_00"(SET_RESUME_INFO4 コマンドの 6byte 目を"0x00"→"0xFF")に変更して設定を行うことにより、正常
に曲の先頭で RESUME_STOP 動作います。
ただし、RESUME_INFO の内容を書き換えているために、たとえ RESUME が成功していても RES_ERR フラグ(Status5,bit0)が立
ちます。(例外として、対象のファイルが MP3 かつ、サイズが 0 の場合は立たない)。この場合、真の RES _ERR との区別がつかな
くなるため、RESUME 成否の判別には RES_ERR フラグを使用せずに、SET_RESUME_INFO コマンド送信に使用した RESUME_INFO
と、コマンド送信後に再度取得した RESUME_INFO とのデータ比較を行うことにより判別してください。データが一致した場合は
RESUME 成功、一致しなかった場合は失敗となります。RESUME_STOP 成否判別フローチャートを図Ⅴ.2.9.10 に示します。
再生中に取得した RESUME_INFO(ファイルオフセットが"0x00_00_00_00"以外)を使用して RESUME_STOP を行う場合は、Ⅴ.2.9
に従い、取得した RESUME_INFO を書き換えず、そのままのデータを用いて SET_RESUME_INFO を送信してください。 RESUME
成否の判別は RES_ERR フラグを使用して下さい。SET_RESUME_INFO コマンド送信に使用した REUSME_INFO と、コマンド送信後
に再取得した RESUME_INFO との比較を行うことにより RESUME 成否の判別を行うことも可能ですが、RESUME_STOP にて停止し
ている時点で再取得した REUSME_INFO データには Offset 値+0C 以降のデータが更新されていない(再生を開始するまで ALL“0”
となる)ため、比較はレジューム情報の CRC 部分まで(Offset+00 から+0B)で行ってください。
-32/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
REUSME_STOP動作開始
N
RESUME_INFO内
ファイルオフセット==0 ?
Y
RESUME_INFOを保持
RESUME_INFOを(A)とする
ファイルオフセットを 00 FF 00 00 に変更し、
RESUME_INFOを(B)とする
RESUME_INFO(B)にて
RESUME_STOPコマンド送信
RESUME_STOPコマンド送信
Search ?
Search ?
H
H
L
L
RESUME_INFO取得
RES_ERR ?
L
保持していた
RESUME_INFO(A)と比較
H
N
RESUME_INFO
一致 ?
Y
従来の通常RESUME失敗のフローへ
従来の通常RESUME成功のフローへ
図Ⅴ.2.9.10 RESUME_STOP 成否判別フローチャート
-33/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.10 早送り再生、巻き戻し再生
本 LSI は早送り再生、巻き戻し再生に対応します。
図Ⅴ.2.10 に早送り(巻き戻し)再生の動作フローを示します。
1.通常再生中
2.再生速度設定
3.アッテネーション設定
4.早送り( 巻き戻し) 再生開始
5.早送り( 巻き戻し) 再生中
6.早送り( 巻き戻し) 再生終了
7.通常再生中
図Ⅴ.2.10 早送り再生動作フロー
Ⅴ.2.10.1 再生速度設定
「SET_RPM」コマンドで早送り、巻き戻し再生時の再生時間(M)、スキップ時間(N)を設定します。再生時間は音を出す時間、ス
キップ時間はサーチでスキップさせる時間です。早送り、巻き戻し再生は、一周期を{再生時間(M)+スキップ時間(N)+誤差
(O)}として、この周期を繰り返します。誤差は最小デコード単位と再生時間の間の丸め込み誤差とスキップ時間をサーチさせる
実時間によります。誤差はファイル毎、メモリ内構成毎により異なります。
速度は、{再生時間(M)+スキップ時間(N)+誤差(O)}/{再生時間(M)+誤差(O)}と計算できますが誤差(スキップ時間の実サ
ーチ時間)はメモリ種類、ファイル毎、メモリ内構成毎により異なるため本 LSI では再生速度を規定することが出来ません。
「SET_RPM」コマンド
SET_RPM
1st Byte
0x5B
2nd Byte
0x00
4 Byte Write
設定は再生時間が M[15:0]= [4th byte , 3rd byte]、スキップ時間が N[15:0]= [6th byte , 5th byte]となります。単位は msec です。
初期値は再生時間が 300ms=M[15:0]= [4th byte=x01,3rd byte=x2C]、スキップ時間が 2100ms=N[15:0]= [6th byte=x08,5th
byte=x34]となります。設定値に 0x0 を入れた時初期値が設定されます。
再生時間は 300ms 以上で、スキップ時間は(再生時間×16)以下で設定を行って下さい。
-34/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.2.10.2 アッテネーションレベル設定
「SET_RPM」コマンドで早送り、巻き戻し再生中のアッテネーションレベルを設定します。
レベルは、-6dB X[3rd byte]となります。設定は、0x00 から 0x10 まで指定できます。初期値は 0x02=-12dB が設定されます。
0x10 の設定で MUTE と同等となります。
「SET_RPM」コマンド
SET_RPM
1st Byte
0x5B
2nd Byte
0x01
4 Byte Write
設定は 3rd byte 目で行います。それ以降は 0x0 を書き込んでください。
Ⅴ.2.10.3 早送り(巻き戻し)再生開始
再生中に早送り(巻き戻し)再生開始コマンド「FFP_ON」(「FBP_ON」)を送信します。
コマンド送信後早送り(巻き戻し)再生を開始します。
「FFP_ON」コマンド
FFP_ON
1st Byte
0x55
2nd Byte
0x01
3rd Byte
0x02
4th Byte
0x00
1st Byte
0x55
2nd Byte
0x02
3rd Byte
0x02
4th Byte
0x00
「FBP_ON」コマンド
FBP_ON
Ⅴ.2.10.4 早送り(巻き戻し)再生終了
早送り(巻き戻し)再生中に早送り(巻き戻し)再生終了コマンド「FFP_OFF」(「FBP_OFF」)を送信します。
コマンド送信後早送り(巻き戻し)再生を終了し通常速度再生に戻ります。
「FFP_OFF」コマンド
FFP_OFF
1st Byte
0x55
2nd Byte
0x01
3rd Byte
0x03
4th Byte
0x00
1st Byte
0x55
2nd Byte
0x02
3rd Byte
0x03
4th Byte
0x00
「FBP_OFF」コマンド
FBP_OFF
-35/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.3 MODE3
MODE3 は、I2C シリアルインターフェースを使用して、本 LSI がマスターマイコンに、メモリデバイス内の MP3 ファイル位置を
送信し、その情報を元にマスターマイコンが、メモリデバイス内の MP3 ファイル位置を本 LSI に直接指定し再生を行うマニュアル
スレーブモードです。
Ⅴ.3.1 MODE3 全体シーケンス
MODE3 で本 LSI を使用する場合の全体動作フロー制御図を図Ⅴ.3.1 に示します。
1. パワーオンシーケンス
2. メモリ認識
3.初期設定
4. フォルダ内情報取得
(電源投入時はROOT指定)
5. 再生ファイル指定
6. Tag情報取得
7. 再生開始
8. ステータス読み出し
図Ⅴ.3.1 MODE3 全体動作フロー
1. パワーオンシーケンス
MODE3 においてもパワーオンシーケンスは MODE1 と同様です。
発振安定待機の後、システムリセットを 5us 以上 L 入力し、リセットを解除してください。
2. メモリ認識
MODE3 においてもメモリ認識シーケンスは MODE2 と同様です。Ⅴ.2.3 章を参照してください。
3. 初期設定
MODE2 同様、ボリューム、EQ などについて初期設定をしてください。
4. フォルダ内情報取得
指定したフォルダ内に存在するフォルダ名、ファイル名などのフォルダ、ファイル情報を取得します。フォルダ、ファイル情報には、
そのメモリデバイスにつき一つずつ割り当てられるアクセスデータがあります。MODE3 ではマスターマイコンがこのアクセスデー
タを本 LSI に送信し、MP3 ファイル再生や、フォルダ解析の指定を行います。電源投入時はルートフォルダを指定してください。
5. 再生 MP3 ファイル指定
取得したフォルダ内情報から、MP3 ファイルアクセスデータを指定します。
6.
Tag 情報取得
-36/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
指定した MP3 ファイルについて Tag 情報を取得します。
7. 再生開始
再生準備が完了すると「PLAY_DIRECT」コマンドにより指定された MP3 ファイルを再生します。
8. ステータス読み出し
MP3 ファイル再生を開始すると、約 100ms 間隔で再生時間情報ステータスを読み出し、再生時間を取得してください。
以下、それぞれのフローについて説明します。
Ⅴ.3.2 パワーオンシーケンス、メモリ認識
パワーオンシーケンスは、MODE3 においても MODE1、MODE2 ともに同様です。MODE1 のパワーオンシーケンスについて
の章を参照してください。
メモリ認識は、MODE3 においても MODE2 と同様です。Ⅴ.2.3 章を参照してください。
Ⅴ.3.3 初期設定
MODE3 において、初期設定は MODE2 の初期設定と「SEL_ID3」コマンド以外については同様です。MODE3 では「SEL_ID3」
コマンドは無効のため、MODE3 では、「GET_ID3」コマンドを用いて ID3Tag 情報を取得します。
-37/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅴ.3.4 フォルダ内情報取得
フォルダ内に存在するフォルダ情報、ファイル情報を取得します。フォルダ情報、ファイル情報は、メモリデバイス内に書き込ま
れたフォルダ、ファイルへのアクセスデータやフォルダ名、ファイル名が含まれます。フォルダ情報、ファイル情報の詳細について
は、データシートを参照してください。
図Ⅴ.3.2 にフォルダ情報取得動作フローについて示します。
1. フォルダ内情報取得開始
2. 解析フォルダ指定
3. フォルダ解析動作開始
4. 解析情報の存在?
N
Y
5. フォルダ情報、ファイル情報
読み出し
6. 解析結果取得完了?
N
Y
7. フォルダ内情報取得完了
図Ⅴ.3.2 フォルダ情報取得動作フロー
1. フォルダ内情報取得開始
初期設定完了後、または新規にフォルダ内解析を行う場合、この時点からフォルダ内情報解析を行います。
2. 解析フォルダ指定
解析を行うフォルダを指定します。指定するフォルダはアクセスデータの 6Byte を引数に与えてください。電源投入時は必ずル
ートフォルダを指定し、アクセスデータは"0"を指定してください。
3. フォルダ解析動作開始
指定したフォルダについてフォルダ情報、ファイル情報を取得開始します。
4. 解析情報の存在
フォルダ内解析を開始すると、本 LSI はマスターマイコンにフォルダ解析データの読み出しが可能であることを示します。
5. フォルダ情報、ファイル情報読み出し
本 LSI によるフォルダ内解析情報の読み出し準備が完了するとフォルダ情報、ファイル情報を読み出してください。
6. 解析結果取得完了
指定したフォルダに対しフォルダ情報、ファイル情報をすべて読み出したことを確認してください。
7. フォルダ内情報取得完了
解析を指定したフォルダのすべてのフォルダ、ファイル情報を取得するとフォルダ内情報取得完了となります。
以下のそれぞれのフローについて説明します。
-38/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.3.4.1 解析フォルダ指定
解析するフォルダのアクセスデータを引数として、「SET_DIRECT」コマンドを送信し、解析フォルダの指定を行います。
電源投入時はルートフォルダを指定してください。ルートフォルダのアクセスデータは"0"となります。
「SET_DIRECT」コマンド
SET_DIRECT
1st Byte
0x59
2nd Byte
0x00
3th-8th Byte
アクセスデータ
Ⅴ.3.4.2 フォルダ解析動作開始
指定されたフォルダについてフォルダ情報、ファイル情報の解析をスタートします。
フォルダ情報、ファイル情報解析ではあらかじめフォルダ数、ファイル数を取得します。「GET_NUMBER」コマンドを送信し、
「READ_NUMBER」コマンドにより取得してください。
「GET_NUMBER」コマンド
1st Byte
0x50
2nd Byte
0x0A
「READ_NUMBER」コマンド
1st Byte
READ_NUMBER
0x5F
2nd Byte
0x0A
GET_NUMBER
4 Byte Read
フォルダ数、ファイル数を取得した後、「GET_DIRECT」コマンドにより解析をスタートしてください。
「GET_DIRECT」コマンド
GET_DIRECT
1st Byte
0x50
2nd Byte
0x09
Ⅴ.3.4.3 解析情報の存在
フォルダ内解析を開始すると、本 LSI が解析結果を LSI 内部バッファに情報を書き込みます。このとき、フォルダ情報であれば、
「STATUS4:FOLINF」、ファイル情報であれば、「STATUS4:FILEINF」にステータス出力します。「STATUS4:FOLINF」、
「STATUS4:FILEINF」を読み出し、フォルダ、ファイル情報の出力準備ができていることを確認してください。
ステータス読み出しコマンド
READ_BUFF
1st Byte
0x5E
2nd Byte
0x03
1 Byte Read
フォルダ、ファイルが存在する状態で解析をスタートし「STATUS4」にて「ANAEND=1」となっているが「FOLINF」=「FILEINF」=0
となる場合は、Ⅴ.3.4.2 フォルダ解析動作開始で行った「GET_DIRECT」を再度行ってください。
Ⅴ.3.4.4 フォルダ情報、ファイル情報読み出し
本 LSI のフォルダ情報、ファイル情報の出力準備が可能であると、フォルダ情報、ファイル情報を本 LSI のバッファ領域が取り出
してください。フォルダ情報、ファイル情報は共に 76 Byte あります。
フォルダ情報読み出しコマンド
READ_FOLDER_
INFO
1st Byte
0x5F
2nd Byte
0x0D
76 Byte Read
2nd Byte
0x0E
76 Byte Read
ファイル情報読み出しコマンド
READ_FILE_
INFO
1st Byte
0x5F
Ⅴ.3.4.5 解析結果取得完了
指定したフォルダ内のフォルダ情報、ファイル情報の解析結果をすべてマスターマイコンが読み出すと、「STATUS4:ANAEND」
に解析が完了したことを示します。このため、「GET_DIRECT」コマンドによりフォルダ内解析を行った場合、「STATUS4:
-39/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
ANAEND」により解析が終了したことを確認してください。
ステータス読み出しコマンド
READ_BUFF
1st Byte
0x5E
2nd Byte
0x03
1 Byte Read
フォルダ内の解析結果は、一旦、本 LSI の内部バッファに書き込まれます。このため、内部バッファが FULL になると
「READ_FOLDER_INFO」、「READ_FILE_INFO」により内部バッファを読み出されるまで、本 LSI が内部バッファに書き込むこ
とができません。内部バッファ FULL 状態は、「STATUS4:FOLFULL」、「STATUS4:FILEFULL」ステータスにて確認することが
できます。
フォルダ内解析の終了は以下の 2 点が条件となります。
(1) 「STATUS4:ANAEND」 = 1
(2) 「STATUS4:FOLINF」 = 「STATUS4:FILEINF」 = 0
上記の条件が成立するまで、フォルダ情報、ファイル情報を読み出してください。
また、フォルダ内解析実行において、MP3 ファイルの書き込まれ方によっては解析時間が長くかかるものがあります。このよう
な場合、解析途中でも中断を行う「ABORT」コマンドがあります。「ABORT」コマンド送信後は、フォルダ解析取得前にて停止状態
となります。
「ABORT」コマンド
ABORT
1st Byte
0x50
2nd Byte
0x0C
Ⅴ.3.5 再生 MP3 ファイル指定
フ ォ ル ダ 内 解 析 が 完 了 す る と 、 そ の フ ァ イ ル 情 報 に 基 づ き 、 マ ス タ ー マ イ コ ン が 再 生 す る MP3 フ ァ イ ル を 決 定 し 、
「SET_DIRECT」コマンドにて再生する MP3 ファイルのアクセスデータを送信します。
Ⅴ.3.6 Tag 情報取得
ID3Tag 情報を取得する必要がある場合、「GET_ID3」コマンドを送信します。必要でない場合は送信する必要はありません。
図Ⅴ.3.3 に Tag 情報取得動作フローを示します。
1. ID3Tag情報取得
2. 「GET_ID3」コマンド送信
3. ID3Tag情報取得完了
Y
4. ID3Tag情報読み出し
5. ID3Tag情報取得完了
図Ⅴ.3.3 Tag 情報取得フロー
-40/47-
N
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.3.6.1 「GET_ID3」コマンド送信
ID3Tag 情報を取得する必要がある場合、「SET_DIRECT」コマンドにて MP3 ファイルを指定した状態にて、「GET_ID3」コマン
ドを送信します。
「GET_ID3」コマンド
GET_ID3
Ⅴ.3.6.2
1st Byte
0x50
2nd Byte
0x0B
ID3Tag 情報取得完了
ID3Tag 取得完了時のステータスタイミングは参考(ID3Tag 取得時のステータスについて)と同様です。
「MCHNG」=H で終了条件となるので、そのときの「ID3READY」ステータスを確認して ID3Tag を取得してください。
Ⅴ.3.6.3
ID3Tag 情報読み出し
ID3Tag 情 報 取 得 完 了 ス テ ー タ ス を 確 認 す る と 、 ID3Tag 情 報 を 本 LSI か ら 読 み 出 し て く だ さ い 。 読 み 出 し は
「READ_ID3_TITLE」、「READ_ID3_ARTIST」、「READ_ID3_ALBUM」にて行います。
「READ_ID3_TITLE」コマンド
READ_ID3_
TITLE
1st Byte
0x5F
2nd Byte
0x04
64Byte Read
「READ_ID3_ARTIST」コマンド
READ_ID3_
1st Byte
ARTIST
0x5F
2nd Byte
0x05
64 Byte Read
2nd Byte
0x06
64 Byte Read
「READ_ID3_ALBUM」コマンド
READ_ID3_
ALBUM
1st Byte
0x5F
ID3Tag 解析を「ABORT」コマンドにより中断し、再度 ID3Tag 解析を実行する場合は一度「STOP」コマンドを送信後、「GET_ID3」
コマンドを再度送信してください。また、解析終了後に異なる MP3 ファイルを選択する場合にも一旦「STOP」コマンドを送信してく
ださい。
Ⅴ.3.7 再生開始
再生する MP3 ファイルを「SET_DIRECT」にて指定し、「PLAY_DIRECT」コマンドを送信すると再生を開始します。
「PLAY_DIRECT」コマンド
PLAY_DIRECT
1st Byte
0x50
2nd Byte
0x0D
再生を停止する場合は、「STOP」コマンドを送信してください。
「STOP」コマンド
STOP
1st Byte
0x50
2nd Byte
0x03
Ⅴ.3.8 ステータス読み出し
再生中は、MODE2 と同様再生時間やエラー状態についてのステータス読み出しを行ってください。再生時間情報の読み出し
は、約 100ms の間隔で行ってください。
MP3 ファイルの再生終了は「MCHNG」端子または「STATUS3:MCHNG」ステータスが"0"になります。
MP3 ファイルの再生を終了すると、再度、同様の手順にて MP3 ファイルのアクセスデータを指定し、再生を行います。
-41/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
参考
取得するフォルダ数、ファイル数を指定する場合
「SET_NUMBER」コマンドにて解析を行うフォルダ数、ファイル数を指定することが可能です。
「 SET_DIRECT 」 コ マ ン ドにて 取 得 し たフ ォ ル ダ の ア ク セ ス デ ー タ を指 定 し 、 「 GET_DIRECT 」 コ マ ン ド を 送 信 す る 前 に
「SET_NUMBER」コマンドにて取得するフォルダ数、ファイル数を指定してください。
「SET_NUMBER」コマンド
1st Byte
SET_NUMBER
0x51
2nd Byte
3th-6th Byte
0x21
フォルダ数[2Byte]+ファイル数[2Byte]
参考
指定したフォルダに含まれるフォルダ数、ファイル数を取得する場合
「SET_DIRECT」コマンドにてフォルダ数、ファイル数を取得したいフォルダのアクセスデータを指定し、「GET_NUMBER」コマ
ンドを送信してください。
「GET_NUMBER」コマンド
GET_NUMBER
1st Byte
0x50
2nd Byte
0x0A
「GET_NUMBER」コマンドも「GET_DIRECT」コマンド同様、「STATUS4:ANAEND」ステータスにより解析が終了していることを
確認してから「READ_NUMBER」コマンドによりフォルダ数、ファイル数を読み出してください。
「READ_NUMBER」コマンド
1st Byte
READ_NUMBER
0x5F
2nd Byte
0x0A
4 Byte Read
-42/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.4 File Read 機能
USB メモリデバイスに対して、指定されたファイルを読み出すことが可能です。これにより、ホストマイコン側 SW のアップデ
ートを実現することが可能です。指定できるファイルは、ルートフォルダに存在する、8.3 形式のファイル名をもつファイルとなりま
す。
本章では、File Read 機能を実現する動作フローについて説明します。
Ⅴ.4.1 File Read 動作フロー
図Ⅴ.5.1 に File Read 機能の動作フローについて示します。
1. 停止状態
2. ファイル名指定
3. ファイルサイズ取得
4. 指定ファイル存在?
N
Y
5. データ読み出し
全データ取得完了?
N
Y
6. 終了処理
7. リセット
図Ⅴ.4.1 File Read 動作フロー
Ⅴ.4.1.1 停止状態
File Read 機能は必ず停止状態から動作させてください。
Ⅴ.5.1.2 ファイル名指定
SET_UPLOAD_FILE1、SET_UPLOAD_FILE2 コマンドを使用して読み出すファイルを指定してください。
指定可能なファイルは、ルートフォルダに存在し、8.3 形式のファイル名のファイルになります。
ファイル指定時にワイルドカードは使用できません。
「SET_UPLOAD_FILE1」コマンド
SET_UPLOAD_FILE1
1st Byte
0x51
2nd Byte
0x51
ファイル名[0:5]
6 Byte Write
-43/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
「SET_UPLOAD_FILE2」コマンド
1st Byte
2nd Byte
0x51
0x52
SET_UPLOAD_FILE2
ファイル名[6:7]
拡張子[0:2]
6 Byte Write
ファイル名が 8byte に満たない場合は、0x20 で埋めてください。
拡張子が 3byte に満たない場合は、0x00 で埋めてください。
ファイル名比較の際には、末尾の 0x00 以降は比較の対応としません。
(例)
ファイル名:“UPDATE.BIN”の場合
SET_UPLOAD_FILE1 : [0x51、0x51、0x55、0x50、0x44、0x41、0x54、0x45]
SET_UPLOAD_FILE2 : [0x51、0x52、0x20、0x20、0x42、0x49、0x4E、0x00]
Ⅴ.4.1.3 ファイルサイズ取得
指定したファイルのサイズを取得します。
「READ_FILE_SIZE」コマンド
1st Byte
READ_FILE_SIZE
0x5F
2nd Byte
0x11
4 Byte Read
ファイルサイズを 4byte で出力します。LittleEndian で取得してください。
ファイルが存在しない場合は、ファイルサイズに[0xFF、0xFF、0xFF、0xFF]を出力します。
Ⅴ.4.1.4 指定ファイル存在
指定したファイルのサイズを取得し、ファイル存在しない場合はファイル読み出しを中止し、終了処理、システムリセットを行い、
ファイル読み出しを終了してください。
Ⅴ.4.1.5 データ読み出し
ファイルサイズ分のデータを READ_FILE_DATA コマンドにより読み出してください。
「READ_FILE_DATA」コマンド
READ_FILE_DATA
1st Byte
0x5F
2nd Byte
0x12
96 Byte Read
ファイルデータの読み出しは、96byte 単位読み出しで行ってください。各データの先頭 4byte はファイルオフセットとなり、実体は
以降の 92byte 分のデータとなります。このため、ファイルオフセットは 92 ごとにカウントアップします。
(例)
1 回目読み出し [0x00、0x00、0x00、0x00、92byte データ]
2 回目読み出し [0x5C、0x00、0x00、0x00、92byte データ]
・・・
13419 回目読み出し [0x74、0cD6、0x12、0x00、92byte データ]
途中で読み出しを中断した場合は、SET_UPLOAD_FILE コマンドから実行してください。
ファイル終端を越えてアップロードした場合に読み出されるデータは不定です。ファイルサイズ分以外のデータは無視してくださ
い。
-44/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
Ⅴ.4.1.6 終了処理
指定したファイルのデータ読み出しを完了すると、「UPLOAD_END」コマンドにより File Read 機能を終了させてください。
「UPLOAD_END」コマンド
UPLOAD_END
1st Byte
0x51
2nd Byte
0x53
Ⅴ.4.1.7 リセット
File Read を終了するときは必ずシステムリセットを行ってください。
-45/47-
BU94601KV
2012/04/03
Application Note Rev.1.2.0
Ⅵ.改定履歴
Revision No.
Date
Revised by
Target 0.01
Target 0.02
Target 0.03
Target 0.04
Target 0.05
Target 0.08
Target 0.10
Target 0.11
1.0
1.1
1.2.0
2010/05/10
2010/08/26
2010/08/27
2010/09/01
2010/09/28
2010/10/28
2010/11/22
2011/02/09
2011/02/21
2011/06/13
2012/04/03
O.O.
H.K.
H.K.
H.K.
H.K.
M.H
M.H
H.K.
H.F
S.Y
M.H
Revising points
新規作成
LUN 選択、RESUME について記載追加
コマンドアドレス修正
誤記修正
端子配置図誤記修正
誤記修正
メモリ認識動作説明更新
曲頭レジュームを行う場合の動作について記載追加
Rev.1.0 リリース
誤記修正(Ⅴ.1.1 パワーオンシーケンス)
接続応用回路例修正
-46/47-
BU94601KV
Application Note Rev.1.2.0
2012/04/03
注意事項
1. このドキュメントに記載されている内容は、このドキュメント発行時点のものであり、予告なく変更することがあります。
2. このドキュメントに記載されている情報は、正確を期すために慎重に作成したものですが、誤りがないことを保証するもので
はありません。万一、このドキュメントに記載されている情報の誤りに起因する損害がお客様に生じた場合におきましても、弊
社は一切その責任を負いません。
4. このドキュメントに記載された技術情報の使用に関連し発生した第三者の特許権、著作権その他の知的財産権の侵害等に
関し、弊社は一切その責任を負いません。弊社はこのドキュメントに基づき弊社または第三者の特許権、著作権その他の知
的財産権を何ら許諾するものではありません。
5. このドキュメントの全部または一部を、弊社の事前承諾を得ずに第三者へ提供、転載または複製することはご遠慮ください。
-47/47-