ADCの使用方法

ADCを利用するには3つの手続きが必要です。 1) アナログ部の電源投入 2) ADC 開始 3) 完了待ちおよび読み出し となります。

// 1) アナログ部の電源投入
if (!bAHI_APRegulatorEnabled()) {
vAHI_ApConfigure(E_AHI_AP_REGULATOR_ENABLE,
     E_AHI_AP_INT_ENABLE, // DISABLE にするとアナログ部の電源断
     E_AHI_AP_SAMPLE_2, // サンプル数 2,4,6,8 が選択可能
     E_AHI_AP_CLOCKDIV_500KHZ, // 周波数 250K/500K/1M/2M
     E_AHI_AP_INTREF);

while(!bAHI_APRegulatorEnabled()); // 安定するまで待つ
}
		
// 2) ADC 開始
vAHI_AdcEnable(
        E_AHI_ADC_SINGLE_SHOT,
             // E_AHI_ADC_SINGLE_SHOT 1回のみ
             // E_AHI_ADC_CONTINUOUS 連続実行
        E_AHI_AP_INPUT_RANGE_2, 
            // E_AHI_AP_INPUT_RANGE_1 (0-1.2V)
            // または E_AHI_AP_INPUT_RANGE_2 (0-2.4V)
        E_AHI_ADC_SRC_ADC_1 
            // E_AHI_ADC_SRC_ADC_1 (ADC1)
            // E_AHI_ADC_SRC_ADC_2 (ADC2)
            // E_AHI_ADC_SRC_ADC_3 (ADC3)
            // E_AHI_ADC_SRC_ADC_4 (ADC4)
            // E_AHI_ADC_SRC_TEMP (温度)
            // E_AHI_ADC_SRC_VOLT (電圧)
        );
vAHI_AdcStartSample(); // ADC開始

// 3) ADC 完了待ちおよび読み出し 
//   (ポーリングのAPIに不具合が有るので割り込みを待ちます)
//   以下は AppQueueAPI を使用したコードの一部。
PRIVATE void vProcessIncomingHwEvent(AppQApiHwInd_s *psAHI_Ind)
{
	uint32 u32DeviceId = psAHI_Ind->u32DeviceId;
	//uint32 u32ItemBitmap = psAHI_Ind->u32ItemBitmap;

	switch (u32DeviceId) {
	case E_AHI_DEVICE_ANALOGUE:
        // ADCが終了
        u16adc = u16AHI_AdcRead(); // 値の読み出し
        break;
    ...
    }
    ...
}       

その他

TWELITE
TWELITE
DIP
DIP
UART
UART
CUE
CUE
ARIA
ARIA
PAL
PAL
STICK
STICK
spot
SPOT
R3
R3
STARTER KIT
STARTER KIT
アンテナ
アンテナ
製品一覧
製品一覧

モノをつなぐ無線

モノをつなぐ無線
モノの無線
導入事例
導入事例
選び方
選び方
小型
小型
省電力
省電力
多数接続
多数接続
コントロール
コントロール
モニタリング
モニタリング
ソフトウエア
ソフトウエア
親機
親機
中継機
中継機
子機
子機
始め方
始め方

評価開発環境

STAGE
STAGE
STAGE APP
STAGE APP
interactive
アプリ設定
アプリ書換
アプリ書換
プログラミング
プログラミング