AM中波放送用SDR.CICフィルタのみを使用.CQ出版社「トランジスタ技術」誌,2021年4月号に掲載

Dependencies:   mbed

Committer:
MikamiUitOpen
Date:
Mon Sep 23 07:32:10 2019 +0000
Revision:
1:30d9fb51dec1
Parent:
0:6906f8616429
2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:6906f8616429 1 //-------------------------------------------------------------
MikamiUitOpen 0:6906f8616429 2 // F446 内蔵 ADC をポーリング方式で使うためのクラス(ヘッダ)
MikamiUitOpen 0:6906f8616429 3 //
MikamiUitOpen 0:6906f8616429 4 // 2019/07/15, Copyright (c) 2019 MIKAMI, Naoki
MikamiUitOpen 0:6906f8616429 5 //-------------------------------------------------------------
MikamiUitOpen 0:6906f8616429 6
MikamiUitOpen 0:6906f8616429 7 #include "mbed.h"
MikamiUitOpen 0:6906f8616429 8
MikamiUitOpen 0:6906f8616429 9 #ifndef ADC_F446_POLLING_HPP
MikamiUitOpen 0:6906f8616429 10 #define ADC_F446_POLLING_HPP
MikamiUitOpen 0:6906f8616429 11
MikamiUitOpen 0:6906f8616429 12 namespace Mikami
MikamiUitOpen 0:6906f8616429 13 {
MikamiUitOpen 0:6906f8616429 14 class AdcF446
MikamiUitOpen 0:6906f8616429 15 {
MikamiUitOpen 0:6906f8616429 16 public:
MikamiUitOpen 0:6906f8616429 17 // コンストラクタ
MikamiUitOpen 0:6906f8616429 18 // fSampling 標本化周波数 [kHz]
MikamiUitOpen 0:6906f8616429 19 // pin 入力ピンの名前
MikamiUitOpen 0:6906f8616429 20 AdcF446(float fSampling, PinName pin);
MikamiUitOpen 0:6906f8616429 21
MikamiUitOpen 0:6906f8616429 22 virtual ~AdcF446() {}
MikamiUitOpen 0:6906f8616429 23
MikamiUitOpen 0:6906f8616429 24 // AD 変換された値を読み込む
MikamiUitOpen 0:6906f8616429 25 // -1.0f <= AD変換された値 < 1.0f
MikamiUitOpen 0:6906f8616429 26 virtual float Read();
MikamiUitOpen 0:6906f8616429 27
MikamiUitOpen 0:6906f8616429 28 protected:
MikamiUitOpen 0:6906f8616429 29 ADC_TypeDef* const myAdc_; // AD 変換器に対応するポインタ
MikamiUitOpen 0:6906f8616429 30
MikamiUitOpen 0:6906f8616429 31 float ToFloat(uint16_t x) { return AMP_*(x - 2048); }
MikamiUitOpen 0:6906f8616429 32
MikamiUitOpen 0:6906f8616429 33 private:
MikamiUitOpen 0:6906f8616429 34 static const float AMP_ = 1.0f/2048.0f;
MikamiUitOpen 0:6906f8616429 35 // AD 変換器の外部トリガに使うタイマ (TIM8) の設定
MikamiUitOpen 0:6906f8616429 36 // fSampling 標本化周波数 [kHz]
MikamiUitOpen 0:6906f8616429 37 void SetTim8(float fSampling);
MikamiUitOpen 0:6906f8616429 38
MikamiUitOpen 0:6906f8616429 39 // コピー・コンストラクタ禁止のため
MikamiUitOpen 0:6906f8616429 40 AdcF446(const AdcF446&);
MikamiUitOpen 0:6906f8616429 41 // 代入演算子禁止のため
MikamiUitOpen 0:6906f8616429 42 AdcF446& operator=(const AdcF446&);
MikamiUitOpen 0:6906f8616429 43 };
MikamiUitOpen 0:6906f8616429 44 }
MikamiUitOpen 0:6906f8616429 45 #endif // ADC_F446_POLLING_HPP