Example #1
0
/**
 * @brief   Configures and activates the ADC peripheral.
 *
 * @param[in] adcp      pointer to the @p ADCDriver object
 * @param[in] config    pointer to the @p ADCConfig object. Depending on
 *                      the implementation the value can be @p NULL.
 *
 * @api
 */
void adcStart(ADCDriver *adcp, const ADCConfig *config) {

  osalDbgCheck(adcp != NULL);

  osalSysLock();
  osalDbgAssert((adcp->state == ADC_STOP) || (adcp->state == ADC_READY),
                "invalid state");
  adcp->config = config;
  adc_lld_start(adcp);
  adcp->state = ADC_READY;
  osalSysUnlock();
}
Example #2
0
/**
 * @brief   Configures and activates the ADC peripheral.
 *
 * @param[in] adcp      pointer to the @p ADCDriver object
 * @param[in] config    pointer to the @p ADCConfig object
 */
void adcStart(ADCDriver *adcp, const ADCConfig *config) {

    chDbgCheck((adcp != NULL) && (config != NULL), "adcStart");

    chSysLock();
    chDbgAssert((adcp->ad_state == ADC_STOP) || (adcp->ad_state == ADC_READY),
                "adcStart(), #1",
                "invalid state");
    adcp->ad_config = config;
    adc_lld_start(adcp);
    adcp->ad_state = ADC_READY;
    chSysUnlock();
}