使用例
A/Dコンバータに、生成した基準電圧を供給する
[GUI設定例]
ボルテージ・リファレンス |
||||
VR |
使用する | |||
ボルテージ・リファレンスの動作設定 |
使用する | |||
1/2AVDD電圧出力の動作設定 |
チャネル0、1のD/A変換を一括許可 | |||
VREFOUT端子出力レベル選択 |
右詰め |
12ビットA/Dコンバータ |
||||
ADC |
使用する | |||
A/Dコンバータ動作設定 |
使用する | |||
A/D変換クロック設定 |
PCLK | |||
A/D変換モード設定 |
高速変換 | |||
VREF(+)設定 |
AVREFP/VREFOUT | |||
VREF(-)設定 |
AVSS | |||
動作モード設定 |
シングルスキャンモード | |||
|
|
|
変換開始トリガ設定 |
ソフトウェアトリガ |
|
|
|
アナログ入力チャンネル設定 |
|
|
|
|
ANI00 |
使用する |
|
|
|
ANI00 加算/平均機能 |
使用しない |
データレジスタ設定 |
||||
AD変換値加算回数 |
1回変換 | |||
データ配置 |
右詰め | |||
自動クリア |
自動クリアを禁止 | |||
ANI00入力サンプリング時間 |
3.667(μs) (実際の値:3.667) | |||
A/D変換値カウント設定 |
加算モード | |||
割り込み設定 |
AD変換終了割り込みを有効にします(INTAD) | |||
優先順位 |
レベル3(低優先順位) | |||
データレジスタ設定 |
[API設定例]
r_cg_main.c
void main(void)
{
R_MAIN_UserInit();
/* Start user code. Do not edit comment generated here */
/* Start VR module operation */
R_VR_Start();
/* Start AD converter */
R_12ADC_Start();
while (1U)
{
;
}
/* End user code. Do not edit comment generated here */
}
r_cg_12adc_user.c
/* Start user code for include. Do not edit comment generated here */
#include "r_cg_vr.h"
/* End user code. Do not edit comment generated here */
/* Start user code for global. Do not edit comment generated here */
volatile uint16_t g_12adc_ch000_value;
/* End user code. Do not edit comment generated here */
static void __near r_12adc_interrupt(void)
{
/* Start user code. Do not edit comment generated here */
/* Stop VR module operation */
R_VR_Stop();
/* Stop AD converter */
R_12ADC_Stop();
/* Get AD converter result */
R_12ADC_Get_ValueResult(ADCHANNEL0, (uint16_t *)&g_12adc_ch000_value);
/* End user code. Do not edit comment generated here */
}