LPC2388 マイコン基板 (2)

LPC2388 は 10 ビット DAC を内蔵しているので、DAC を利用して出力する限りは、PWM を使用する場合と違ってポストフィルタを省いて、出力ピンから直接にオーディオ信号を取り出すことができます。
それ以上のことをやろうとすると、どうしても外部回路が必要になりますから、ベースボードを製作しなければなりません。
LPC2388 基板 (CQ-FRK-NXP-ARM) は V850 / SH2 基板用の拡張ベースボード (CQBB) が使用できるようにピンヘッダの信号割り当てが考慮されているので、そのことを利用して、新規にベースボードを作らず、製作済みの V850 用ベースボードを流用することにしました。
V850 用ベースボードは、すでに FR60 基板とも共用しているので、ひとつのベースボードを、V850 / FR60 / LPC2388 の各基板で排他的に利用することになります。
特に、V850 と LPC2388 は、拡張コネクタ部のピンも共用します。
ベースボード上に LPC2388 基板を装着した状態の写真を下に示します。

ベースボード下部が空いているのは FR60 基板の実装用のスペースです。
ベースボード上部には、本来は LCD を装着しますが、現在のところ、まだ LCD 表示はサポートしていないので、取り外してあります。
LPC2388 ボードのすぐ右にある、青い色の変換基板にディジタル・オーディオ用 16 ビット・シリアル DAC の μPD6376 (秋月で 2 個 500 円) を実装してあります。
このベースボードは「豪華版」で、基板上に MIDI インターフェースのフォトカプラと、RS232 インターフェース IC を実装してあり、MIDI ケーブルあるいは 9P シリアルケーブルを直接に接続できます。
現状の回路図を下に示します。 MIDI インターフェース部の詳細は省いてあります。

内蔵 10 ビット DAC 出力には OP アンプのバッファを付けました。
LPC2388 の I2S モジュールを利用して、「標準フォーマット」のディジタル・オーディオ DAC (NEC μPD6376) に出力することを試み、うまく行きました。
μPD6376 では、アナログ出力の出力タイミングがビットクロックに依存するので、これまで使ってきた、SPI 出力による方法ではジッタが乗るため、使えずにいました。
「I2S フォーマット」の信号のうち、「ビットクロック」と「シリアルデータ」は、そのまま「標準フォーマット」の DAC に直結できますが、I2S の WS (Word Select) 信号は、標準フォーマットの LRCK と異なっているので、次のような変換を施す必要があります。

  1. I2S の WS のタイミングを 1 クロック分遅らせる
  2. WS と LRCK では極性が逆なのでインバートする

回路的には、立下りエッジで動作する、反転出力を持つ D-FF ひとつで実現できますが、74HC シリーズの容易に入手可能なデバイスに限れば、74HC298 ぐらいしか該当するものがありません。 しかも、74HC298 には反転出力がありません。
74HC298 は、4 ビット 2-to-1 マルチプレクサ出力に 4 ビット D-FF を接続したものに相当しますが、ここでは 1 ビット D-FF として使っているだけです。
μPD6376 には LRCK の極性を反転する機能があるので、D-FF 側に反転出力は必要ありません。 14 番ピンの LRSEL/RSI を「H」レベルに吊っているのが反転の指定です。
I2S の WS から標準フォーマットの LRCK を作り出す回路については、次回以降の記事で説明します。
LPC2388 内蔵のタイマなどのハードウェア・リソースを使い、ソフトウェアでのサポートも加え、外部回路なしに、単なる配線 3 本だけで LRCK を作り出す方法も検討しています。