cancel
Showing results for 
Search instead for 
Did you mean: 

Knowledge Base Articles

SAR ADCのVrefを動的に変更する – KBA227544 - Community Translated (JA)

ChaitanyaV_61
Employee

SAR ADCのVrefを動的に変更する – KBA227544 - Community Translated (JA)

Community Translated by HiOm_1802421         Version: **

Translation - English: Dynamically Changing Vref in SAR ADC – KBA227544

Vref電圧は Component configuration ウィンドウで、内部1.024V、VDDA/2または VDDA から選択できます。(図1 参照)

「バイパス」オプションを選択して Vref を GPIO ピンに配線し、これを使用してバイパスコンデンサを接続できます。Vref バイパスとして使われる正確な GPIO ピンは、デバイスファミリデータシートの pinouts セクションを参照してください。(データシート: PSoC 3PSoC 5LPPSoC 4PSoC 4 BLE)

Image_0.png

図1:コンポーネントエディタのVref選択

CYREG_SAR_CTRL レジスタは、実行時に変更できる Vref 選択オプションがあります。バイパスコンデンサオプションを有効にするには CYREG_SAR_CTRL のビット7を1に設定します。ビット6:4を使用して、特定の Vref 設定を選択します。

疑似コード:

uint32 temp;

temp = CY_GET_REG32(CYREG_SAR_CTRL);

temp &= 0xFFFFFF0F;

temp |= 0x000000C0; //1.024 reference

CY_SET_REG32(CYREG_SAR_CTRL, temp);

CyDelay(100); // Wait for 100ms for ADC to settle to the new Vref

temp = CY_GET_REG32(CYREG_SAR_CTRL);

temp &= 0xFFFFFF0F;

temp |= 0x000000E0; //VDDA/2 reference

CY_SET_REG32(CYREG_SAR_CTRL, temp);

CyDelay(100);

temp = CY_GET_REG32(CYREG_SAR_CTRL);

temp &= 0xFFFFFF0F;

temp |= 0x000000F0; // VDDA reference

CY_SET_REG32(CYREG_SAR_CTRL, temp);

CyDelay(100);

ADCが新しいVref設定で安定するまでにはしばらく時間がかかります。ADCが新しい設定で安定し正しい出力を得るには100ミリ秒の遅延を挿入することを推奨します。

0 Likes
Version history
Revision #:
1 of 1
Last update:
‎Jul 06, 2020 10:33 PM
Updated by:
 
Contributors