Esempio n. 1
0
/*********************************************************************//**
 * @brief 		Get ADC Chanel status from AD global data register
 * @param[in]  	StatusType
 *              		 	0:Burst status
 *               		1:Done 	status
 * @return 		SET / RESET
 *
 ************************************************************************/
FlagStatus	ADC_GlobalGetStatus(uint32_t StatusType)
{
	uint32_t temp;
	
	CHECK_PARAM(PARAM_ADC_DATA_STATUS(StatusType));

	temp =  LPC_ADC->GDR;
	if (StatusType){
		temp &= ADC_DR_DONE_FLAG;
	}else{
		temp &= ADC_DR_OVERRUN_FLAG;
	}
	if (temp){
		return SET;
	}else{
		return RESET;
	}
}
Esempio n. 2
0
/**
* @brief 		Get ADC Chanel status from AD global data register
* @param[in]	ADCx pointer to ADC
* @param[in]  	StatusType
*              		 	0:Burst status
*               		1:Done 	status
* @return 		SET / RESET
*
 *********************************************************************/
FlagStatus	ADC_GlobalGetStatus(ADC_TypeDef *ADCx, uint32_t StatusType)
{
	uint32_t temp;

	CHECK_PARAM(PARAM_ADCx(ADCx));
	CHECK_PARAM(PARAM_ADC_DATA_STATUS(StatusType));

	temp =  ADCx->ADGDR;
	if (StatusType){
		temp &= ADC_DR_DONE_FLAG;
	}else{
		temp &= ADC_DR_OVERRUN_FLAG;
	}
	if (temp){
		return SET;
	}else{
		return RESET;
	}
}
Esempio n. 3
0
/*********************************************************************//**
 * @brief 		Get ADC Chanel status from ADC data register
 * @param[in]	channel channel number
 * @param[in]  	StatusType
 *              		 	0:Burst status
 *               		1:Done 	status
 * @return 		SET / RESET
 *
 ************************************************************************/
FlagStatus ADC_ChannelGetStatus(uint8_t channel, uint32_t StatusType)
{
	uint32_t temp;
	
	CHECK_PARAM(PARAM_ADC_CHANNEL_SELECTION(channel));
	CHECK_PARAM(PARAM_ADC_DATA_STATUS(StatusType));

	temp =  *(uint32_t *) ((&LPC_ADC->DR[0]) + channel);
	if (StatusType) {
		temp &= ADC_DR_DONE_FLAG;
	}else{
		temp &= ADC_DR_OVERRUN_FLAG;
	}
	if (temp) {
		return SET;
	} else {
		return RESET;
	}
}
Esempio n. 4
0
/*********************************************************************//**
* @brief 		Get ADC Chanel status from ADC data register
* @param[in]	ADCx pointer to LPC_ADC_TypeDef, should be: LPC_ADC
* @param[in]	channel: channel number, should be 0..7
* @param[in]  	StatusType
*              		 	0:Burst status
*               		1:Done 	status
* @return 		SET / RESET
**********************************************************************/
FlagStatus ADC_ChannelGetStatus(LPC_ADC_TypeDef *ADCx, uint8_t channel, uint32_t StatusType)
{
	uint32_t temp;

	CHECK_PARAM(PARAM_ADCx(ADCx));
	CHECK_PARAM(PARAM_ADC_CHANNEL_SELECTION(channel));
	CHECK_PARAM(PARAM_ADC_DATA_STATUS(StatusType));

	temp =  *((&ADCx->ADDR0) + channel);
	if (StatusType) {
		temp &= ADC_DR_DONE_FLAG;
	}else{
		temp &= ADC_DR_OVERRUN_FLAG;
	}
	if (temp) {
		return SET;
	} else {
		return RESET;
	}

}