Skip to content

Commit fe883d4

Browse files
committed
[M453] Fix CI tests-api-analogin failed
1. Fix ADC convert finish check error. 2. Set ADC Vref to internal by default.
1 parent e0f97e5 commit fe883d4

File tree

2 files changed

+3
-4
lines changed

2 files changed

+3
-4
lines changed

targets/TARGET_NUVOTON/TARGET_M451/TARGET_NUMAKER_PFM_M453/mbed_overrides.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,8 @@ void mbed_sdk_init(void)
6464
CLK_SetCoreClock(72000000);
6565

6666
#if DEVICE_ANALOGIN
67-
// FIXME: Check voltage reference for EADC
68-
/* Vref connect to AVDD */
69-
//SYS->VREFCTL = (SYS->VREFCTL & ~SYS_VREFCTL_VREFCTL_Msk) | SYS_VREFCTL_VREF_AVDD;
67+
/* Vref connect to internal */
68+
SYS->VREFCTL = (SYS->VREFCTL & ~SYS_VREFCTL_VREFCTL_Msk) | SYS_VREFCTL_VREF_3_072V;
7069
#endif
7170

7271
/* Update System Core Clock */

targets/TARGET_NUVOTON/TARGET_M451/analogin_api.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ uint16_t analogin_read_u16(analogin_t *obj)
141141
uint32_t chn = NU_MODSUBINDEX(obj->adc);
142142

143143
EADC_START_CONV(eadc_base, 1 << chn);
144-
while (EADC_GET_PENDING_CONV(eadc_base) & (1 << chn));
144+
while (EADC_GET_DATA_VALID_FLAG(eadc_base, 1 << chn) != (1 << chn));
145145
uint16_t conv_res_12 = EADC_GET_CONV_DATA(eadc_base, chn);
146146
// Just 12 bits are effective. Convert to 16 bits.
147147
// conv_res_12: 0000 b11b10b9b8 b7b6b5b4 b3b2b1b0

0 commit comments

Comments
 (0)