Exemplo n.º 1
0
int main(void)
{
    NVIC_PriorityGroupConfig( NVIC_PriorityGroup_4 ); 
    init_DACs();
    init_ADC1();
    init_Timers();
    init_USART();
    state = STATE_IDLE;
    EOL = 0;
    EOS = 0;

    DAC1.start	= 0x0000;
    DAC1.step	= 0x0020;
    DAC1.stop	= 0x1000;
    DAC1Value	= 0x0000;

    DAC2.start	= 0x0000;
    DAC2.step	= 0x0200;
    DAC2.stop	= 0x1000;
    DAC2Value	= 0x0000;

    ADCBuffer	= malloc(128 * sizeof(uint16_t));

    while(1)
    {
	if(state == STATE_FORCE)
	{
	    TIM_Cmd(TIM2, ENABLE);
	    state = STATE_START;
	}
    }
}
Exemplo n.º 2
0
uint8_t get_adc_sample(uint8_t ADC_val)
{
	switch (ADC_val){
		case 0 : init_ADC0();
		case 1 : init_ADC1();
		case 7 : init_ADC7();
		default : init_ADC0();
	}

	//start the conversion
	ADC_start_single_conversion();

	//wait for the ADC to finish
	while((ADCSRA & (1<<ADSC))){};
	
	//return the ADC result
	return ADCH; 
}