Realtime sound spectrogram using FFT or linear prediction. Spectrogram is displayed on the display of PC. リアルタイム・スペクトログラム.解析の手法:FFT,線形予測法.スペクトログラムは PC のディスプレー装置に表示される.PC 側のプログラム:F446_Spectrogram.

Dependencies:   Array_Matrix mbed SerialTxRxIntr F446_AD_DA UIT_FFT_Real

myFunctions.cpp

Committer:
MikamiUitOpen
Date:
2017-03-08
Revision:
3:74a50c14d3fd
Parent:
2:acc16e3f91ac

File content as of revision 3:74a50c14d3fd:

#include "myFunctions.hpp"

// シリアル・ポートの受信割り込み
void Rx()
{
    unsigned char chr = pc_.getc();
    // '\r' を受信した場合はメッセージの終了とする
    // '\r' は,rxBuffer_ には追加されない
    if (chr == '\r') eol_ = true;
    else             rxBuffer_ += chr;  // '\r' が来るまで文字が追加される

    // 受信するメッセージの文字数のチェック
    if (rxBuffer_.size() > RX_MAX_)
        while (true)    // 文字数がオーバーの場合 LED が点滅する
        {
            myLed_ = !myLed_;
            wait(0.1f);
        }
}

// データを PC へ転送(0 ~ 10,000 の範囲の値を 2 文字で表すコード化を利用)
void Xfer(Array<uint16_t> &xn)
{
    for (int n=0; n<xn.Length(); n++)
    {
        div_t a = div(xn[n], 100);
        pc_.putc(a.quot + 0x10);
        pc_.putc(a.rem + 0x10);
    }
    pc_.printf("\n");       // データの最後を通知
    wait_ms(1);             // これは必須
    pc_.printf("EOT\n");    // 転送終了であることを送信
}