Demo program for library named SD_PlayerSkeleton of SD card player skeleton. SD カードプレーヤのための骨組みとして使うためのライブラリ SD_PlayerSkeleton の使用例.このプログラムについては,CQ出版社インターフェース誌 2018年7月号で解説している.
Dependencies: F746_GUI F746_SAI_IO SD_PlayerSkeleton
MyClass/VolumeCtrl.cpp@19:3c3833ec00d2, 2017-04-09 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Sun Apr 09 12:44:17 2017 +0000
- Revision:
- 19:3c3833ec00d2
- Parent:
- 17:9aed0bdb04f1
20
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MikamiUitOpen | 0:bf9be2110092 | 1 | //------------------------------------------------- |
MikamiUitOpen | 0:bf9be2110092 | 2 | // 音量の調整のためのクラス |
MikamiUitOpen | 0:bf9be2110092 | 3 | // SD_PlayerSkeleton の派生クラス |
MikamiUitOpen | 0:bf9be2110092 | 4 | // |
MikamiUitOpen | 17:9aed0bdb04f1 | 5 | // 2017/03/22, Copyright (c) 2017 MIKAMI, Naoki |
MikamiUitOpen | 0:bf9be2110092 | 6 | //------------------------------------------------- |
MikamiUitOpen | 0:bf9be2110092 | 7 | |
MikamiUitOpen | 0:bf9be2110092 | 8 | #include "VolumeCtrl.hpp" |
MikamiUitOpen | 0:bf9be2110092 | 9 | |
MikamiUitOpen | 0:bf9be2110092 | 10 | namespace Mikami |
MikamiUitOpen | 0:bf9be2110092 | 11 | { |
MikamiUitOpen | 17:9aed0bdb04f1 | 12 | // 1ブロック分の信号処理の実行 |
MikamiUitOpen | 17:9aed0bdb04f1 | 13 | void VolumeCtrl::SignalProcessing() |
MikamiUitOpen | 17:9aed0bdb04f1 | 14 | { |
MikamiUitOpen | 17:9aed0bdb04f1 | 15 | // 1ブロック分のステレオデータを SD から読み込みモノラルにする |
MikamiUitOpen | 17:9aed0bdb04f1 | 16 | sdReader_.ReadAndToMono(sn_); |
MikamiUitOpen | 17:9aed0bdb04f1 | 17 | |
MikamiUitOpen | 17:9aed0bdb04f1 | 18 | while (!mySai_.IsXferred()) {} // データの転送が終わるまで待つ |
MikamiUitOpen | 17:9aed0bdb04f1 | 19 | //-------------------------------------------------------------- |
MikamiUitOpen | 17:9aed0bdb04f1 | 20 | // 1ブロック分の処理を行い,その結果を出力する |
MikamiUitOpen | 17:9aed0bdb04f1 | 21 | // 音響信号の出力:左右チャンネルに同じものを出力 |
MikamiUitOpen | 17:9aed0bdb04f1 | 22 | for (int n=0; n<BUFF_SIZE_; n++) |
MikamiUitOpen | 17:9aed0bdb04f1 | 23 | { |
MikamiUitOpen | 17:9aed0bdb04f1 | 24 | int16_t data = volume_*sn_[n]; // 出力の音量を変える |
MikamiUitOpen | 17:9aed0bdb04f1 | 25 | mySai_.Output(data, data); |
MikamiUitOpen | 17:9aed0bdb04f1 | 26 | } |
MikamiUitOpen | 17:9aed0bdb04f1 | 27 | //-------------------------------------------------------------- |
MikamiUitOpen | 17:9aed0bdb04f1 | 28 | } |
MikamiUitOpen | 17:9aed0bdb04f1 | 29 | |
MikamiUitOpen | 0:bf9be2110092 | 30 | // 音量の調整 |
MikamiUitOpen | 0:bf9be2110092 | 31 | void VolumeCtrl::Modefy() |
MikamiUitOpen | 0:bf9be2110092 | 32 | { |
MikamiUitOpen | 0:bf9be2110092 | 33 | if (myBar_.Slide()) |
MikamiUitOpen | 0:bf9be2110092 | 34 | volume_ = myBar_.GetValue(); |
MikamiUitOpen | 0:bf9be2110092 | 35 | } |
MikamiUitOpen | 0:bf9be2110092 | 36 | |
MikamiUitOpen | 9:e032ac174c8d | 37 | // 曲の再生時の表示 |
MikamiUitOpen | 0:bf9be2110092 | 38 | void VolumeCtrl::Display() |
MikamiUitOpen | 0:bf9be2110092 | 39 | { |
MikamiUitOpen | 4:e911f59e9541 | 40 | Label musicTitle(207, 80, GetFileNameNoExt(), Label::CENTER, Font16); |
MikamiUitOpen | 0:bf9be2110092 | 41 | ctrl_.Draw(); |
MikamiUitOpen | 0:bf9be2110092 | 42 | myBar_.Redraw(); |
MikamiUitOpen | 0:bf9be2110092 | 43 | } |
MikamiUitOpen | 0:bf9be2110092 | 44 | } |