 #define PORT 1024                           // 受信ポート番号
 #define DEVICE "voice_1,"                   // デバイス名(5文字+"_"+番号+",")
 
-int LED=0;                                  // LEDの出力状態
 signal voice(PIN_AIN);                      // 音声入力の有効化
 char phoneme[17];                           // 音声データ用の変数
-int phoneme_i=0;                            // 音声データ数
-int t=0;                                    // 待ち時間カウント用の変数
+int phoneme_i=0,t=0,LED=0;                  // 音声データ数,待ち時間,LED状態保持
 
 void setup(){
+    WiFi.mode(WIFI_OFF); btStop();          // 無線LANとBluetoothをOFFに設定する
     pinMode(PIN_LED, OUTPUT);               // LEDを接続したポートを出力に
     digitalWrite(PIN_LED,HIGH);             // LEDを点灯する(起動を知らせる)
     voice.f_enabled = true;                 // f音の検出を行う

    voice.vconstant = 3;                    // v音の閾値設定
    voice.shconstant = 4;                   // sh音の閾値設定
    voice.calibrate();                      // マイク入力のDC値の設定
    Serial.begin(115200);                   // 動作確認のためのシリアル出力開始
    Serial.println("esp32 18 voice");       // 「esp32 18 voice」をシリアル出力
    memset(phoneme,0,17);                   // 音声データ用の変数の初期化
    WiFi.mode(WIFI_OFF);                    // 無線LANをOFFに設定する
    btStop();                               // BluetoothをOFFに設定する
}

void loop(){

    if(p!=' '){                             // 認識結果が有音だった場合
        Serial.print(p);                    // 認識した音をシリアル出力表示
        if(phoneme_i > 0 && p==phoneme[phoneme_i-1]) return;    // 同音時に戻る
        t=0; digitalWrite(PIN_LED,!LED);    // 終了待ち時間のリセット
        phoneme[phoneme_i++] = p;           // 認識音を音声データ配列変数へ保存
        if(phoneme_i<16) return;            // 配列16以内ならloopの先頭へ戻る
    }else{                                  // 認識結果が無音だったとき
        if(phoneme_i && t==0) Serial.print(' ');    // 空白をシリアル出力表示
        t++; digitalWrite(PIN_LED,LED);     // 終了待ち時間を1つカウント
        if(t < 16 || phoneme_i == 0)return; // 待ち時間変数tが16未満の時に戻る
    }
    char vr[9]; memset(vr,0,9);             // 認識結果の保存用変数定期と初期化
    int led=-1;                             // 認識結果(未/ON/OFF)の保存用変数
    char *spo=strchr(phoneme,'o');          // 音声データ内に「o」が含まれる
    char *sph=strchr(phoneme,'h');          // 音声データ内に「h」が含まれる
    char *spf=strchr(phoneme,'f');          // 音声データ内に「f」が含まれる
