このライブラリでは、単音とメロディの出力が可能です。 In this library, you can output a single tone and melody. mbedのpwmOutとDigitalOutを使ってスピーカや圧電ブザーを直接駆動します。 directly drive speaker or buzzer and DigitalOut pwmOut using the mbed. メロディデータは、mbedのローカルにtxtファイルとして保存するか、プログラム中に配列データとして保存してください。 Melody data is either stored in a txt file on the local mbed, save it as a data array in the program.
Dependents: kitchenTimer_Clock SoundLibraryExample_Melody_ProgramData M3PI_SuiviLigne
Diff: Sound.h
- Revision:
- 1:358449cfdcd3
- Parent:
- 0:e3f005984c2a
- Child:
- 2:ed8a182cefe2
diff -r e3f005984c2a -r 358449cfdcd3 Sound.h --- a/Sound.h Wed Nov 16 12:03:27 2011 +0000 +++ b/Sound.h Wed Nov 16 12:27:12 2011 +0000 @@ -99,7 +99,13 @@ class Sound { public: - +/** tone data struct +* +* @param uint8_t hanon : hanon siji 0:b(flat) 1:tujo 2:#(sharp) +* @param uint16_t onkai : C1 - B9 kan deno onkai(Gx ha 9x ni okikae te siji) 0x00:hatuon teisi 0xFF:enso syuryo +* @param uint16_t time : hatuon jikan (1/1 [ms]/count) +* @param uint16_t envelope : yoin(envelope) jikan (1/1 [ms]/count) +*/ typedef struct { uint8_t hanon; // hanon siji 0:b(flat) 1:tujo 2:#(sharp) uint16_t onkai; // C1 - B9 kan deno onkai(Gx ha 9x ni okikae te siji) @@ -124,20 +130,41 @@ */ Sound(PinName pwm , PinName kijun); - /** Check sound output + /** Check tone * - * @param return A bool ture : output\\false: none + * @param return A bool ture : output false: none */ bool sound_sound(void); // oto no syuturyoku jotai wo kakunin // true : oto ari false : oto nasi + /** output tone + * + * @param sound_t data : tone data set + */ void sound_sound(sound_t data); // oto no syuturyoku // para : oto no data + /** merody data set (file data) + * + * @param merody data file path and name (example : "/local/merodyFileName.txt") + */ bool sound_enso(char *path); // enso data wo file kara yomikomi // true : data kakunou OK false: data kakunou NG + /** merody data set (data table) + * + * @param merody data table name (example : "(Sound::sound_t*)WESTMINSTER") + */ void sound_enso(Sound::sound_t* onpudata); // enso data wo program no data table kara yomikomi + + /** check merody + * + * @param raturn ture:merody output //false:merody stop + */ bool sound_enso(void); // enso jyotai check // true : enso chu false : enso shuryo + /** request merody start or stop + * + * @param ture:start merody //false:stop merody + */ void sound_enso(bool siji); // enso start / stop // true : enso start false : enso stop