English follows Japanese
このライブラリにより簡単に AY-3-8910 を制御できます.
各チャンネルの音量とトーンのみ制御できます.
以下のようにして初期化します.
#include <AY-3-8910.h>
/* 以下は実際の接続に合わせて変更してください */
const int RESET_PIN = 8;
const int BC1_PIN = A5;
const int BDIR_PIN = A4;
AY_3_8910 PSG(RESET_PIN, BC1_PIN, BDIR_PIN);
void setup() {
PSG.init();
PSG.set_volume(A, 0b1111);
PSG.set_volume(B, 0b1111);
PSG.set_volume(C, 0b1111);
}
音を鳴らすためには以下の関数を使用します.
第一引数にチャンネル,第二引数にライブラリにより定義されたインデックスを指定します.
以下は A チャンネルから C4 (ド) を出力する例です.
PSG.tone_out(A, NOTE_C4);
音を止めるためには以下の関数を使用します.
PSG.tone_mute(A);
This library controls AY-3-8910 simply.
It can controls only volume and tone each channel.
Initialize like this.
#include <AY-3-8910.h>
/* The following should be changed to match the actual connection */
const int RESET_PIN = 8;
const int BC1_PIN = A5;
const int BDIR_PIN = A4;
AY_3_8910 PSG(RESET_PIN, BC1_PIN, BDIR_PIN);
void setup() {
PSG.init();
PSG.set_volume(A, 0b1111);
PSG.set_volume(B, 0b1111);
PSG.set_volume(C, 0b1111);
}
To output sound, use function shown below.
The first argument is the channel and the second is the index defined by the library.
The following is an example of outputting C4 from channel A.
PSG.tone_out(A, NOTE_C4);
To stop sound, use function shown below.
PSG.tone_mute(A);