電源電圧の読み方
ADを読み取り、値を処理します。
/* E_AHI_ADC_SRC_TEMP 温度センサーで読み取る */ vAHI_AdcEnable( E_AHI_ADC_SINGLE_SHOT, E_AHI_AP_INPUT_RANGE_2, /* 2*Vref(=2.4V) レンジ */ E_AHI_ADC_SRC_VOLT); vAHI_AdcStartSample(); // ADC開始 /* ... ADC 完了後 (割り込み受信後、暫く待つなど) */ /* AD値を読みだす */ uint16 u16AdcValue = u16AHI_AdcRead(); /* 温度に変換します */ /* 3600mV のときAD値が最大の 4095 をとる、つまり、AD値/1.14 */ floatfBattVoltage = (float)u16AdcValue / 1.14F;
※ float の演算ライブラリはバイナリサイズ増大させるため、整数演算化する事をお勧めします。