2013年05月25日
//一定時間でリニアに振幅減衰する正弦波
#include <MozziGuts.h>
#include <Oscil.h>
#include <tables/sin2048_int8.h>
Oscil <SIN2048_NUM_CELLS, AUDIO_RATE> aSin(SIN2048_DATA);
unsigned char gain = 255;
//音量の変数を gain と名付け最大値255 に
void setup(){
startMozzi(); // ()になにも入れない場合は初期値 64
aSin.setFreq(440);
}
void updateControl(){
gain = gain - 3 ; //255 から 0 になるまで3減を繰り返す
}
int updateAudio(){
return (aSin.next()* gain)>>8;
/*正弦波aSinに振幅増減値のgainをかける。 >>8は最大値255をかけるため、出力オーバーにならないよう2^8で割っておく(>>8)*/
}
void loop(){
audioHook();
#include <MozziGuts.h>
#include <Oscil.h>
#include <tables/sin2048_int8.h>
Oscil <SIN2048_NUM_CELLS, AUDIO_RATE> aSin(SIN2048_DATA);
unsigned char gain = 255;
//音量の変数を gain と名付け最大値255 に
void setup(){
startMozzi(); // ()になにも入れない場合は初期値 64
aSin.setFreq(440);
}
void updateControl(){
gain = gain - 3 ; //255 から 0 になるまで3減を繰り返す
}
int updateAudio(){
return (aSin.next()* gain)>>8;
/*正弦波aSinに振幅増減値のgainをかける。 >>8は最大値255をかけるため、出力オーバーにならないよう2^8で割っておく(>>8)*/
}
void loop(){
audioHook();