参考サイト
回路図
Arduino Nano
フラッシュメモリー: 32 KB
SRAM: 2 KB
クロック速度: 16 MHz
アナログI / Oピン: 8
EEPROM: 1 KB
デジタルI / Oピン: 22
PWM出力: 6
PWM出力
![]() |
| ㊤PWM出力 ㊦ローパスフィルタ出力 |
サイン波
矩形波
ノコギリ波
三角波
Mozzi
Mozzi Library ダウウンロード
【Code】
【Download ZIP】
解凍して任意のライブラリー保存場所に貼付ける。
プログラム Arduino IDE【ボード:Arduino Nano】
※【Arduino】Mozzi入門1 様々な波形を出力する4波形をまとめたプログラムです。
各波形をコメントアウトで選択しました。
#include <MozziGuts.h>
#include <Oscil.h>
#include <tables/sin2048_int8.h>
#include <tables/square_no_alias_2048_int8.h>
#include <tables/saw2048_int8.h>
#include <tables/triangle2048_int8.h>
//設定された回数(デフォルト64〜128Hz)だけ毎秒実行される。
#define CONTROL_RATE 128
//2048サンプル波形生成器を定義・初期化する
Oscil <SIN2048_NUM_CELLS, AUDIO_RATE> aSin(SIN2048_DATA);
Oscil <SQUARE_NO_ALIAS_2048_NUM_CELLS, AUDIO_RATE> aSquare(SQUARE_NO_ALIAS_2048_DATA);
Oscil <SAW2048_NUM_CELLS, AUDIO_RATE> aSaw(SAW2048_DATA);
Oscil <TRIANGLE2048_NUM_CELLS, AUDIO_RATE> aTriangle(TRIANGLE2048_DATA);
void setup(){
startMozzi(CONTROL_RATE);
//aSin.setFreq(440); //サイン波
//aSquare.setFreq(440); //矩形波
//aSaw.setFreq(440); //ノコギリ波
aTriangle.setFreq(440);//三角波
}
//パラメータの更新
void updateControl(){
}
//オーディオ信号の生成
int updateAudio(){
//return aSin.next(); //サイン波
//return aSquare.next(); //矩形波
//return aSaw.next(); //ノコギリ波
return aTriangle.next(); //三角波
}
void loop(){
//updateAudioを高速に呼び続ける
audioHook();
}
.png)

.png)
.png)
.png)
.png)
.png)
.png)
.png)
0 件のコメント:
コメントを投稿