I'm using KDS2.0 and KSDK 1.1.1, my project with KSDK and PE enabled for FRDM-K22F platform.
After adding fsl_adc16 component to my project, I configured 3 channels in Channel configurations of "Property" page in Component inspector and enabled Auto-initialization.
However, after code generation, I look into the function Components_Init(void) in Cpu.c, only found codes below generated:
/*! ADC0 Auto initialization start */
ADC16_DRV_Init(FSL_ADC0, &ADC0_InitConfig0);
ADC16_DRV_ConfigConvChn(FSL_ADC0, 0U, &ADC0_ChnConfig0);
/*! ADC0 Auto initialization end */
Looks only 1 channel has been initialized. But actually 3 channels defined in this fsl_adc16 component, and I can find 3 structures in ADC0.c respectively, e.g. ADC0_ChnConfig0, ADC0_ChnConfig1 and ADC0_ChnConfig2.
Is this a bug of fsl_adc16? Or need further settings?
OK, It looks clear after reading the implementation code of ADC16_DRV_ConfigConvChn().
This function is just config the ADC with information in ADC0_ChnConfigx and writing to register ADC_SC1... An AD conversion thus is triggered.