ArduinoでYMF825用Pitchbendの設定値をテーブルでなくべき乗演算でやってみたというテスト
https://qiita.com/ringorou/items/f648d72ef39112ce524e
役に立ちますかね
ArduinoでYMF825用Pitchbendの設定値をテーブルでなくべき乗演算でやってみたというテスト
https://qiita.com/ringorou/items/f648d72ef39112ce524e
役に立ちますかね
Arduino nano コンパチ機はピンヘッダが半田付けされていますが、ピンの太さが太ピンで丸ピンソケットには入りません。手持ちには秋月の分割ピンソケットしかないのでこいつを使います。
高下駄みたいになってしまった。
MIDI用DIN5コネクタはDIP化基板を使わなくても穴を広げればDIPユニバーサルに取り付け可能です。今回はこちらでいきます。
ただ穴を広げると半田付けのランドも削れてしまうので、半田で固定はできなくなりました。瞬間接着剤で固定してあります。
ソケット類の半田付け
全体の半田付け 結構余裕あります。LEDは付けないつもりだったけどこれなら追加して良いかも。
MIDIケーブルつないで動作しました。スケッチはunoのスケッチをそのままボードをnanoに選ぶだけで何の変更もありません。
大変コンパクトで良いです。
https://github.com/ringoro/YMF825_Midi_module/tree/master/YMF825MIDImodule
MIDIコントロールチェンジ
1 モジュレーション
7 マスターボリューム
123 オールオフ
ピッチベンド※
に対応しました。
※ピッチベンドは本家コードに従いテーブル参照型に修正しました。(2017/10/3)
ピッチベンド設定はYamaha本家のコードはテーブルを引いて対応しておりますが、RAM容量が足らない気がしたのでこちらは計算で出しています。このためリニアリティは良くありません。ご了承下さい。
ベンド値の設定は本家のコードに従うと全体ピッチが本家sample1のdefaultよりオクターブ高くなってしまうのですが、本家コードに従う事にします。※
サスティンペダルも実装したかったのですが、元の設計ではKeyON/OFFの状態しか考えておらず、サスティンのためには第三の状態 Holdがないといけない事に気が付きました。本家のコードにはその部分が入っていますね。全体に手を加える必要があるのでこれについては後ほど対応します。