F446_AD_DA_Multirate の使用例. AD された信号をそのまま DA に出力する. 標本化周波数:10 kHz
Dependencies: mbed F446_AD_DA_Multirate
main.cpp@7:c3caa8d38ad5, 2018-10-11 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Thu Oct 11 11:43:25 2018 +0000
- Revision:
- 7:c3caa8d38ad5
- Parent:
- 6:2199a6874b78
- Child:
- 8:977c197134c5
8
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MikamiUitOpen | 0:6c7b511cf28e | 1 | //---------------------------------------------------------------------- |
MikamiUitOpen | 0:6c7b511cf28e | 2 | // NUCLEO-F446RE で アナログ信号の入出力の際に,出力の標本化周波数を, |
MikamiUitOpen | 0:6c7b511cf28e | 3 | // 入力の標本化周波数の4倍にするクラス F446_Multirate の使用例 |
MikamiUitOpen | 0:6c7b511cf28e | 4 | // |
MikamiUitOpen | 0:6c7b511cf28e | 5 | // 処理の内容:AD 変換器からの入力をそのまま DA 変換器に出力する |
MikamiUitOpen | 0:6c7b511cf28e | 6 | // |
MikamiUitOpen | 7:c3caa8d38ad5 | 7 | // 2018/10/11, Copyright (c) 2018 MIKAMI, Naoki |
MikamiUitOpen | 0:6c7b511cf28e | 8 | //---------------------------------------------------------------------- |
MikamiUitOpen | 0:6c7b511cf28e | 9 | |
MikamiUitOpen | 0:6c7b511cf28e | 10 | #include "F446_Multirate.hpp" |
MikamiUitOpen | 0:6c7b511cf28e | 11 | #pragma diag_suppress 870 // マルチバイト文字使用の警告抑制のため |
MikamiUitOpen | 0:6c7b511cf28e | 12 | |
MikamiUitOpen | 0:6c7b511cf28e | 13 | using namespace Mikami; |
MikamiUitOpen | 0:6c7b511cf28e | 14 | |
MikamiUitOpen | 0:6c7b511cf28e | 15 | int main() |
MikamiUitOpen | 0:6c7b511cf28e | 16 | { |
MikamiUitOpen | 7:c3caa8d38ad5 | 17 | const int FS = 10000; // 入力の標本化周波数: 10 kHz |
MikamiUitOpen | 7:c3caa8d38ad5 | 18 | F446_Multirate myAdDa; // 出力標本化周波数を4倍にするオブジェクト |
MikamiUitOpen | 0:6c7b511cf28e | 19 | printf("\r\n開始します.\r\n"); |
MikamiUitOpen | 0:6c7b511cf28e | 20 | |
MikamiUitOpen | 7:c3caa8d38ad5 | 21 | // F446_Multirate::Start() と F446_Multirate::Input() の間に |
MikamiUitOpen | 7:c3caa8d38ad5 | 22 | // printf() のように重い処理は実行しないこと. |
MikamiUitOpen | 7:c3caa8d38ad5 | 23 | myAdDa.Start(FS); // 標本化を開始する |
MikamiUitOpen | 0:6c7b511cf28e | 24 | |
MikamiUitOpen | 0:6c7b511cf28e | 25 | while (true) |
MikamiUitOpen | 0:6c7b511cf28e | 26 | { |
MikamiUitOpen | 0:6c7b511cf28e | 27 | //------------------------------------------------------------ |
MikamiUitOpen | 0:6c7b511cf28e | 28 | // ここにディジタルフィルタ等の処理を記述する |
MikamiUitOpen | 7:c3caa8d38ad5 | 29 | float xn = myAdDa.Input(); // 入力 |
MikamiUitOpen | 5:aff3a2d4b41f | 30 | // wait_us(93); // 標本化周波数が 10 kHz の場合, |
MikamiUitOpen | 5:aff3a2d4b41f | 31 | // 93 μs 以下の実行時間の信号処理であれば OK |
MikamiUitOpen | 5:aff3a2d4b41f | 32 | float yn = xn; // これは入力信号に何も処理しない例 |
MikamiUitOpen | 7:c3caa8d38ad5 | 33 | myAdDa.Output(yn); // 出力 |
MikamiUitOpen | 0:6c7b511cf28e | 34 | //------------------------------------------------------------ |
MikamiUitOpen | 0:6c7b511cf28e | 35 | } |
MikamiUitOpen | 0:6c7b511cf28e | 36 | } |