ムライボックス (19) --- ムライシールド (3)

2017 年 12 月 08 日付けの記事 (→こちら) では、「ムライシールド(仮)」の回路図を示しました。 
これは、Arduino 本体の基板の面積と同程度の基板上に作成するという制約、および「SparkFun」製の「MIDI シールド」と同様な機能を持たせるという制約のため、MIDI 出力の DIN 5P コネクタはひとつで、ジャンパ・ポスト上のショート・プラグを差し替えることで出力される信号を選択するようになっていました。
今回は「フル版」、つまり MIDI 出力ポート 7 個をすべて実装した場合の回路図を示します。

これは回路図を示すだけで、実際の回路を組んだわけではありません。
本体サイズの基板上には、当然、DIN 5P レセプタクルが 8 個載るわけがありませんから、大きな基板で「シールド」を作るか、DIN コネクタを搭載した基板を別に用意し、本体サイズのシールドとケーブルで接続する形になると思います。
PIC16F18325 版では、チップ内蔵の CLC (Configurable Logic Cell) を利用した 4 ポート出力だけをサポートするつもりでしたが、外部回路を加えて最大 8 ポートをサポートするように変更しました。
内部クロックおよび外部クリスタル・オシレータ使用の場合の回路図を下に示します。

MIDI ポート出力部は本体の CLC 利用の 4 ポート分だけ示しています。
PIC16F18325 チップで直接 MIDI 出力をドライブする場合の回路です。
CMOS 出力に MIDI ケーブルを介して外部から過電圧が加えられる事態を想定すると、不安が残ります。
ただ、PIC16F18325 は秋月価格で高々 100 円のチップなので、過電圧で壊れても別に気にしないという考えかたもあるかも知れません。
2 番ピンの「EXTCLK」端子に 8 MHz の外部クリスタル・オシレータ出力を接続します。 32 MHz の内部クロックを使用する場合には何も接続しません。
「TXD」や「GATE5」などの信号は、後で示す外部 "OR" ゲート回路利用の拡張部分で使います。 チップ本体だけの 4 ポート構成では使いません。
外付け 8 MHz 水晶振動子/セラミック振動子を使う場合の回路図を下に示します。

2 番ピン、3 番ピンが使われてしまうため、外部ゲート利用の場合でも、最大 7 出力ポートとなります。
外部回路により 4 ポート拡張する回路を下に示します。

74HC32 あるいは 74LS32 による "OR" ゲートで直接 MIDI 出力をドライブする場合の回路です。
CMOS 出力に MIDI ケーブルを介して外部から過電圧が加えられる事態を想定すると、不安が残ります。
抵抗入りトランジスタ、いわゆる「デジタル・トランジスタ」を使用する場合の回路を下に示します。

「デジトラ」で信号の論理が反転するので、"OR" ゲートではなく "NOR" ゲートの 74HC02 / 74LS02 を使います。
デジトラの内部の抵抗値は 4.7 kΩ 〜 10 kΩ 程度のものを使います。 (Rohm DTC114E、DTC143E など、秋月でユニソニック製の互換品を扱っている)
保護回路がなくても、トランジスタ自体の耐圧でプラス側は VCEO の 50 V 程度、マイナス側は VEBO の -5 V 程度あるので、ある程度安心できます。
デジトラに限らず、個別トランジスタと抵抗 2 本でも良いのですが、その場合には 3 本足の部品 1 個ですむというメリットが失われます。