/*********************************************************************//** * @brief Enable/Disable ADC channel number * @param[in] ADCx pointer to LPC_ADC_TypeDef, should be: LPC_ADC * @param[in] Channel channel number * @param[in] NewState Enable or Disable * * @return None **********************************************************************/ void ADC_ChannelCmd (LPC_ADC_TypeDef *ADCx, uint8_t Channel, FunctionalState NewState) { if (NewState == ENABLE) { ADCx->CR |= ADC_CR_CH_SEL(Channel); } else { ADCx->CR &= ~ADC_CR_CH_SEL(Channel); } }
/* Enable or disable the ADC channel on ADC peripheral */ void Chip_ADC_EnableChannel(LPC_ADC_T *pADC, ADC_CHANNEL_T channel, FunctionalState NewState) { if (NewState == ENABLE) { pADC->CR |= ADC_CR_CH_SEL(channel); } else { pADC->CR &= ~ADC_CR_START_MASK; pADC->CR &= ~ADC_CR_CH_SEL(channel); } }
/* Enable/Disable ADC channel number */ void IP_ADC_SetChannelNumber(IP_ADC_001_T *pADC, uint8_t channel, FunctionalState NewState) { if (NewState == ENABLE) { pADC->CR |= ADC_CR_CH_SEL(channel); } else { pADC->CR &= ~ADC_CR_START_MASK; pADC->CR &= ~ADC_CR_CH_SEL(channel); } }
/*********************************************************************//** * @brief Enable/Disable ADC channel number * @param[in] Channel channel number * @param[in] NewState Enable or Disable * * @return None * ************************************************************************/ void ADC_ChannelCmd (uint8_t Channel, FunctionalState NewState) { CHECK_PARAM(PARAM_ADC_CHANNEL_SELECTION(Channel)); if (NewState == ENABLE) { LPC_ADC->CR |= ADC_CR_CH_SEL(Channel); } else { LPC_ADC->CR &= ~ADC_CR_CH_SEL(Channel); } }
/** * @brief Enable/Disable ADC channel number * @param[in] ADCx pointer to ADC * @param[in] Channel channel number * @param[in] NewState Enable or Disable * * @return None * *********************************************************************/ void ADC_ChannelCmd (ADC_TypeDef *ADCx, uint8_t Channel, FunctionalState NewState) { CHECK_PARAM(PARAM_ADCx(ADCx)); CHECK_PARAM(PARAM_ADC_CHANNEL_SELECTION(Channel)); if (NewState == ENABLE) { ADCx->ADCR |= ADC_CR_CH_SEL(Channel); } else { ADCx->ADCR &= ~ADC_CR_CH_SEL(Channel); } }
/*********************************************************************//** * @brief Enable/Disable ADC channel number * @param[in] ADCx pointer to LPC_ADC_TypeDef, should be: LPC_ADC * @param[in] Channel channel number * @param[in] NewState Enable or Disable * * @return None **********************************************************************/ void ADC_ChannelCmd (LPC_ADC_TypeDef *ADCx, uint8_t Channel, FunctionalState NewState) { CHECK_PARAM(PARAM_ADCx(ADCx)); CHECK_PARAM(PARAM_ADC_CHANNEL_SELECTION(Channel)); if (NewState == ENABLE) { ADCx->ADCR |= ADC_CR_CH_SEL(Channel); } else { if (ADCx->ADCR & ADC_CR_START_MASK) //need to stop START bits before disable channel ADCx->ADCR &= ~ADC_CR_START_MASK; ADCx->ADCR &= ~ADC_CR_CH_SEL(Channel); } }