Esempio n. 1
0
File: AD.C Progetto: wantf/C
void ADSample(void)
{
		u8	i,tttemp;
    ADC1_DeInit();
    ADC1_ConversionConfig(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_3, ADC1_ALIGN_RIGHT);
    ADC1_SchmittTriggerConfig(ADC1_SCHMITTTRIG_CHANNEL4,ENABLE);
    ADC1_ITConfig(ADC1_IT_EOCIE,DISABLE);
		ADC1_Cmd(ENABLE);
		ADC1->CSR &= (u8)(~0x80);
		ADC1_StartConversion();		
    while((ADC1->CSR & 0x80)!=0x80) IWDG_ReloadCounter(); // µÈ´ýת»»½áÊø
    Conversion_Value += ADC1_GetConversionValue();
		ADC1->CSR &= (u8)(~0x80);
		u8ADChannelCnt++;
		if(u8ADChannelCnt>=SAMPLE_TIMES)
		{
				u8ADChannelCnt = 0;
				tttemp = (u8)((Conversion_Value>>2)/SAMPLE_TIMES);
				if((tttemp<20) || (tttemp>200) ) u8Temp = OFF_TMP_SET;
				else
				{
						for(i=0;T3580Tab[i]<tttemp;i++);
						u8Temp = (u8)(i+(40*2));
				}
				Conversion_Value = 0;
		}
Esempio n. 2
0
/**
 *  ADC HW init
 *
 * @return void
 */
static void adc_hw_init(void)
{
    ADC1_DeInit();

    ADC1_Init(ADC_CHANNEL, ADC_PRESCALER);

    ADC1_Cmd(ENABLE);
}
Esempio n. 3
0
	/**
  * @brief  Deinitializes the ADC. 
  * @retval : None
  */
	void pot_DeInit(void){
	
		/* De-Init ADC peripheral*/
		ADC1_DeInit();						
	
		/* Enable EOC interrupt */
		ADC1_ITConfig(ADC1_IT_EOCIE,DISABLE);
		
	}
Esempio n. 4
0
void ADC1_Config()
{
  ADC1_DeInit();

#ifdef EN_SENSOR_MIC
  ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, ADC1_CHANNEL_1, ADC1_PRESSEL_FCPU_D4,
            ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL1, DISABLE);
  ADC1_ScanModeCmd(ENABLE);
#else  
  ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, ADC1_CHANNEL_0, ADC1_PRESSEL_FCPU_D4,
            ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL0, DISABLE);
  ADC1_Cmd(ENABLE);
#endif
  
  //ADC1_ITConfig(ADC1_IT_AWS0, ENABLE);
  
  ADC1_StartConversion();
}
Esempio n. 5
0
	/**
  * @brief  Initializes the ADC. 
	* ADC conversion mode: continious, EOC interrupt enabled
  * @retval : None
  */
	void pot_init(void){
		 /*  Init GPIO for ADC7 */
		GPIO_Init(GPIOB, GPIO_PIN_7, GPIO_MODE_IN_FL_NO_IT);
		
		/* De-Init ADC peripheral*/
		ADC1_DeInit();
	
		/* Init ADC1 peripheral */
		ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, ADC1_CHANNEL_7, ADC1_PRESSEL_FCPU_D18, \
							ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL7,\
							DISABLE);	
	
		/* Enable EOC interrupt */
		ADC1_ITConfig(ADC1_IT_EOCIE,ENABLE);
	
		/* Enable general interrupts */  
		enableInterrupts();
		
		/*Start Conversion */
		ADC1_StartConversion();
		
	}
Esempio n. 6
0
/*
    Configure ADC1 Continuous Conversion with End Of Conversion interrupt enabled .
  */
void InitADC()
{
  /* De-Init ADC1 peripheral */
  ADC1_DeInit();
    
  /* Enable EOC interrupt */
  ADC1_ITConfig(ADC1_IT_EOCIE, ENABLE);
    
  /* Enable conversion data buffering */
  ADC1_DataBufferCmd(ENABLE);
    
  /* Enable scan mode conversion */
  ADC1_ScanModeCmd(ENABLE);

  /* Init ADC1 peripheral */
  /* ADC1 Channel 3 */
  ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, REF_2V5_ANALOG, ADC1_PRESSEL_FCPU_D4, \
            ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL3,\
            DISABLE);
                        
  /* ADC1 Channel 4 */
  ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, L9110_U3_DRAW, ADC1_PRESSEL_FCPU_D4, \
            ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL4,\
            DISABLE);
                        
  /* ADC1 Channel 5 */
  ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, L9110_U4_DRAW, ADC1_PRESSEL_FCPU_D4, \
            ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL5,\
            DISABLE);
                        
  /* ADC1 Channel 6 */
  ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, L9110_U5_DRAW, ADC1_PRESSEL_FCPU_D4, \
            ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL6,\
            DISABLE);
  
  ADC1_Cmd(ENABLE);
}