CQ出版社セミナ "実習・Armマイコン内蔵ペリフェラルを活用するためのC++プログラミング" で使う外付け回路のテスト

Dependencies:   mbed UIT_SetOutputPortType UIT_AQM1602 UIT_ADT7410

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers F446_AdcPolling.hpp Source File

F446_AdcPolling.hpp

00001 //-------------------------------------------------------------
00002 //  F446 内蔵 ADC2 をポーリング方式で使うための派生クラス
00003 //      基底クラス: AdcF446_Base
00004 //
00005 //  2020/02/23, Copyright (c) 2020 MIKAMI, Naoki
00006 //-------------------------------------------------------------
00007 
00008 #include "F446_AdcBase.hpp"
00009 
00010 #ifndef ADC_F446_POLLING_HPP
00011 #define ADC_F446_POLLING_HPP
00012 
00013 namespace Mikami
00014 {
00015     class AdcF446_Polling : public AdcF446_Base
00016     {
00017     public:
00018         // コンストラクタ
00019         //      fSampling 標本化周波数 [kHz]
00020         //      pin     入力ピンの名前
00021         AdcF446_Polling(float fSampling, PinName pin)
00022             : AdcF446_Base(fSampling, pin) {}
00023 
00024         virtual ~AdcF446_Polling() {}
00025 
00026         // AD 変換された値を読み込む
00027         //      -1.0f <= AD変換された値 < 1.0f
00028         virtual float Read() const
00029         {
00030             while ((myAdc_->SR & ADC_SR_EOC) != ADC_SR_EOC) {}
00031             return ToFloat(myAdc_->DR);
00032         }
00033     };
00034 }
00035 #endif  // ADC_F446_POLLING_HPP
00036